在 CentOS(7/8/Stream) 上添加 Swap 空间,常见有两种方式:新增 Swap 文件(最常用、最安全)或新增 Swap 分区。下面以 Swap 文件 为例,适合绝大多数云服务器和虚拟机。
free -h
swapon --show
例如创建 4G Swap:
sudo dd if=/dev/zero of=/swapfile bs=1M count=4096
或使用更快的方式:
sudo fallocate -l 4G /swapfile
⚠️ 如果
fallocate不可用(某些文件系统),用dd
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
验证:
free -h
swapon --show
编辑 /etc/fstab:
sudo nano /etc/fstab
添加一行:
/swapfile swap swap defaults 0 0
保存后验证:
sudo mount -a
查看当前值:
cat /proc/sys/vm/swappiness
临时修改:
sudo sysctl vm.swappiness=10
永久生效:
echo "vm.swappiness=10" | sudo tee -a /etc/sysctl.conf
建议值:
sudo swapoff /swapfile
sudo rm -f /swapfile
并从 /etc/fstab 中删除对应行。
适合新装系统或磁盘有空闲分区,步骤:
fdisk /dev/sdX 创建分区mkswap /dev/sdX1swapon /dev/sdX1/etc/fstab| 内存大小 | 建议 Swap |
|---|---|
| ≤ 2G | 2 × 内存 |
| 2–8G | 等于内存 |
| ≥ 8G | 4–8G |
如果你愿意,可以告诉我:
我可以给你一套最适合你服务器的 Swap 方案。