下面以 CentOS 7 / CentOS 8 / Rocky / Alma(通用) 为例,说明 swap 的设置方法,包括新增 swap 分区和swap 文件两种方式。
free -h
swapon -s
lsblk
dd if=/dev/zero of=/swapfile bs=1M count=4096
# 或使用更快的方式
fallocate -l 4G /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile
echo '/swapfile swap swap defaults 0 0' >> /etc/fstab
free -h
swapon -s
lsblk
fdisk -l
fdisk /dev/sdb
n 新建分区t → 选择 82(Linux swap)w 保存mkswap /dev/sdb1
swapon /dev/sdb1
echo '/dev/sdb1 swap swap defaults 0 0' >> /etc/fstab
cat /proc/sys/vm/swappiness
sysctl vm.swappiness=10
echo 'vm.swappiness=10' >> /etc/sysctl.conf
sysctl -p
建议:
swapoff -a
⚠️ 如果内存不足,可能导致 OOM
| 内存大小 | 建议 swap |
|---|---|
| ≤ 2G | 2 × 内存 |
| 2–8G | 等于内存 |
| ≥ 8G | 4G~8G |
如果你愿意,可以告诉我:
我可以给你最合适的 swap 配置方案。