温馨提示×

centos swap怎么释放

小樊
42
2026-09-14 21:38:41
栏目: 智能运维

在 CentOS 中,“释放 swap”通常是指把 swap 中的数据换回内存,并清空 swap 分区/文件的使用量。下面按常见场景说明。


一、查看当前 swap 使用情况

free -h
swapon -s

cat /proc/swaps

二、释放 swap(推荐做法)

1️⃣ 确保内存足够

先确认 空闲内存 > 已用 swap,否则释放会失败或系统卡顿。

free -h

2️⃣ 关闭 swap(会强制把数据换回内存)

swapoff -a

如果 swap 很大、内存紧张,这条命令可能很慢,甚至失败。


3️⃣ 再次开启 swap(可选)

swapon -a

此时 swap 使用量通常是 0。


三、只释放 swap 但不禁用 swap 文件/分区?

不可以。
Linux 没有提供“只清空 swap 但保持 swap 开启”的安全命令。
只能通过 swapoff 实现真正释放。


四、释放某个指定的 swap(而不是全部)

例如:

swapon -s

输出:

/dev/sdb1  partition  4G  2G  -2

释放它:

swapoff /dev/sdb1

五、临时调整 swappiness(减少再被写入)

sysctl vm.swappiness=10

永久生效:

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

六、常见误区

sync 不能释放 swap
❌ 删除 swap 文件前必须 swapoff
❌ 内存不足时强行 swapoff 会导致 OOM


七、示例完整流程

free -h
swapoff -a
swapon -a
free -h

如果你愿意,可以告诉我:

  • CentOS 版本(6 / 7 / 8 / Stream)
  • swap 是分区还是文件
  • 是否服务器在跑重要业务

我可以给你更安全的操作建议。

0