简短结论:可以关闭,但不建议在生产环境直接贸然关闭,尤其是内存较小的机器。
下面分情况说明。
✅ 可以关闭,CentOS 支持动态关闭 swap,不需要重启系统。
关闭方式有两种:
swapoff -a
查看是否关闭:
free -h
swapon -s
编辑 /etc/fstab:
vi /etc/fstab
注释或删除 swap 相关行,例如:
# /dev/mapper/centos-swap swap swap defaults 0 0
然后执行:
swapoff -a
✅ 这样重启后也不会再启用 swap。
⚠️ 风险:
一旦内存耗尽,系统可能直接 OOM Kill 进程,甚至宕机。
cat /proc/sys/vm/swappiness
临时调整:
sysctl vm.swappiness=10
永久生效:
vi /etc/sysctl.conf
vm.swappiness=10
swappiness=0~100
centos 默认通常是 30
设为 1~10:几乎不用 swap,但保留“兜底”
常见推荐组合:
vm.swappiness = 1
vm.overcommit_memory = 1
并保证:
| 操作 | 是否推荐 |
|---|---|
| 临时关闭 swap | ✅ 可测试 |
| 永久关闭 swap | ⚠️ 视内存而定 |
| 直接关 swap 不管内存 | ❌ 不推荐 |
| 降低 swappiness | ✅ 最稳妥 |
如果你愿意,可以告诉我:
我可以给你一个最合适、最安全的 Swap 配置方案。