温馨提示×

centos swapper怎么释放空间

小樊
46
2026-10-12 00:10:14
栏目: 云计算

在 CentOS 里,swapper / swap 空间本身不是“可以删除的文件”,而是系统用磁盘模拟的内存。所谓“释放 swap 空间”,通常是指 把 swap 里的数据换回内存,并缩小或关闭 swap。下面按常见场景说明。


一、先确认 swap 使用情况

free -h
swapon --show

如果你看到:

  • swap used 很大
  • 但 mem available 还很多

说明可以安全释放。


二、最简单:释放 swap 缓存(推荐)

1️⃣ 确保内存足够

释放 swap 的前提:物理内存要足够装下 swap 里的数据

free -h

如果内存够,继续。


2️⃣ 关闭再开启 swap(会清空 swap)

swapoff -a
swapon -a

⚠️ 注意:

  • swapoff -a 会把 swap 数据写回内存
  • 如果内存不够,会导致 OOM / 卡死

三、只释放部分 swap(不关全部)

1️⃣ 关闭指定 swap 设备

查看:

swapon --show

例如:

/dev/sda2

关闭:

swapoff /dev/sda2

四、如果是 swap 文件(不是分区)

查看

swapon --show

释放并删除 swap 文件

swapoff /swapfile
rm -f /swapfile

并从 fstab 移除:

vi /etc/fstab

删除类似:

/swapfile swap swap defaults 0 0

五、swap 一直很高,但内存闲着(调内核参数)

CentOS 默认过早使用 swap,可以调整:

cat /proc/sys/vm/swappiness

临时修改

sysctl vm.swappiness=10

永久修改

vi /etc/sysctl.conf

添加:

vm.swappiness=10

生效:

sysctl -p

六、不建议做的事 ❌

  • 直接 rm swap 分区
  • 内存不足时强制 swapoff
  • 生产环境随意关闭 swap(可能影响稳定性)

七、总结一句话

释放 swap = 让数据回内存

swapoff -a && swapon -a

但前提是 内存够用

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

free -h
swapon --show

我可以帮你判断 能不能直接释放、是否该关 swap。

0 踩