温馨提示×

怎么关闭CentOS Swap分区

小樊
43
2026-07-08 01:37:36
栏目: 智能运维

在 CentOS 系统中关闭 Swap 分区(交换分区)可以按以下步骤操作。请根据你的需求选择临时关闭永久关闭


一、临时关闭 Swap(重启后失效)

1. 查看当前 Swap 状态

free -h
# 或
swapon --show

2. 关闭所有 Swap

sudo swapoff -a

3. 确认已关闭

free -h

Swap 行应全部为 0 或不再显示。


二、永久关闭 Swap(重启后仍生效)

1. 编辑 fstab 文件

sudo vi /etc/fstab

2. 注释或删除 Swap 相关行

找到类似以下内容:

/dev/mapper/centos-swap swap swap defaults 0 0

UUID=xxxx-xxxx none swap sw 0 0

将其注释(加 #):

# /dev/mapper/centos-swap swap swap defaults 0 0

✅ 保存并退出(Esc:wq


3. 立即关闭 Swap(如未执行)

sudo swapoff -a

4. 重启验证

sudo reboot
free -h

三、如果是 Swap 文件(非分区)

1. 查找 Swap 文件

swapon --show

例如:

/swapfile

2. 关闭 Swap

sudo swapoff /swapfile

3. 删除 Swap 文件

sudo rm -f /swapfile

4. 删除 fstab 中的相关配置

sudo vi /etc/fstab

删除或注释:

/swapfile none swap sw 0 0

四、注意事项(非常重要)

⚠️ 关闭 Swap 前请确认:

  1. 内存是否充足

    free -h
    

    建议剩余内存 > 30%

  2. 数据库服务器(如 MySQL / PostgreSQL)

    • 不建议关闭 Swap,否则可能 OOM
    • 可改为降低 Swappiness:
      sudo sysctl vm.swappiness=10
      
      永久生效:
      echo "vm.swappiness=10" | sudo tee -a /etc/sysctl.conf
      

五、总结

需求 命令
临时关闭 swapoff -a
永久关闭 注释 /etc/fstab 中 swap
查看状态 free -h / swapon --show

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

  • ✅ 是否是 CentOS 7 / 8 / Stream
  • ✅ 是 物理机 / 云服务器 / 虚拟机
  • ✅ 关闭 Swap 的原因(性能 / 安装 K8s 等)

我可以给你更精准的建议。

0