温馨提示×

Centos swap如何清除

小樊
45
2026-08-29 13:11:35
栏目: 智能运维

在 CentOS 中“清除 swap”通常指关闭 swap、删除 swap 分区或 swap 文件。下面按常见场景一步步说明,操作前请确认内存足够,避免 OOM


一、查看当前 swap 情况

free -h
swapon -s
lsblk

二、临时关闭 swap(不删除)

适合测试或临时释放:

swapoff -a

只是关闭,重启后可能还会启用

查看是否关闭:

free -h

三、永久关闭 swap(推荐)

1️⃣ 关闭 swap

swapoff -a

2️⃣ 删除开机自动挂载

编辑 fstab:

vi /etc/fstab

注释或删除 swap 相关行,例如:

# /dev/mapper/centos-swap swap swap defaults 0 0
# UUID=xxxx-swap swap swap defaults 0 0
# /swapfile swap swap defaults 0 0

保存后重启验证:

reboot
free -h

四、删除 swap 文件(如果是文件方式)

1️⃣ 关闭 swap

swapoff /swapfile

2️⃣ 删除文件

rm -f /swapfile

3️⃣ 删除 fstab 中的配置(见上一步)


五、删除 swap 分区(风险较高)

1️⃣ 关闭 swap

swapoff /dev/sdX

2️⃣ 删除分区

fdisk /dev/sdX
# 或使用 parted / lvremove

3️⃣ 更新 fstab

确保 swap 分区没有在 /etc/fstab 中挂载


六、LVM swap(CentOS 7/8 常见)

swapoff /dev/mapper/centos-swap
lvremove /dev/mapper/centos-swap

并更新 fstab


七、验证

free -h
swapon -s

⚠ 注意事项

  • ✅ 内存充足再关闭 swap
  • ❌ 不建议生产环境直接长期禁用 swap
  • ✅ 可设置 vm.swappiness=0~10 降低 swap 使用

仅降低 swap 使用(不清除)

sysctl vm.swappiness=10
echo "vm.swappiness=10" >> /etc/sysctl.conf

如果你愿意,可以贴一下:

free -h
lsblk
cat /etc/fstab

我可以帮你精准判断该删哪一块,避免误删系统 swap

0