温馨提示×

Ubuntu Swap如何启用与关闭

小樊
47
2025-10-03 20:49:00
栏目: 智能运维

Ubuntu Swap启用与关闭指南


一、启用Swap

1. 临时启用(立即生效,重启失效)

若已有Swap分区或文件,可通过以下命令临时启用:

sudo swapon -a  # 启用/etc/fstab中定义的所有Swap空间

验证是否启用:

sudo swapon --show  # 查看当前启用的Swap空间
# 或
free -h             # 查看内存与Swap使用情况(Swap列有数值则表示启用)

2. 永久启用(重启后仍生效)

若需长期使用Swap,需将配置写入/etc/fstab文件。常见场景为创建Swap文件(推荐)或使用现有Swap分区:

(1)创建Swap文件(无Swap分区时)
# 创建指定大小的Swap文件(如4GB,可根据需求调整)
sudo fallocate -l 4G /swapfile
# 设置严格权限(仅root可读写)
sudo chmod 600 /swapfile
# 格式化为Swap格式
sudo mkswap /swapfile
# 启用Swap文件
sudo swapon /swapfile
(2)将Swap配置加入/etc/fstab
sudo nano /etc/fstab  # 用文本编辑器打开fstab文件

在文件末尾添加以下行(Swap文件路径需与创建时一致):

/swapfile none swap sw 0 0

保存并退出(Ctrl+XYEnter),重启系统后Swap会自动启用。

(3)启用现有Swap分区

若系统已有Swap分区(如/dev/sdaX),只需将其添加到/etc/fstab

/dev/sdaX none swap sw 0 0

/dev/sdaX需替换为实际的Swap分区设备名,可通过lsblk命令查看)


二、关闭Swap

1. 临时关闭(立即生效,重启恢复)

sudo swapoff -a  # 关闭所有Swap空间

验证是否关闭:

sudo swapon --show  # 无输出则表示已关闭
# 或
free -h             # Swap列显示为0B

2. 永久关闭(重启后仍关闭)

需修改/etc/fstab文件,移除或注释Swap相关条目:

(1)注释Swap文件条目
sudo nano /etc/fstab

找到类似以下行(Swap文件路径可能为/swapfile或其他):

/swapfile none swap sw 0 0

在行首添加#号注释:

# /swapfile none swap sw 0 0

保存并退出。

(2)注释Swap分区条目

若使用Swap分区,找到类似以下行(设备名如/dev/sdaX):

/dev/sdaX none swap sw 0 0

同样添加#号注释:

# /dev/sdaX none swap sw 0 0

保存并退出。

(3)重启系统
sudo reboot  # 重启后Swap将永久关闭

注意事项

  1. 内存要求:关闭Swap前,需确保系统有足够物理内存(RAM)应对当前工作负载,否则可能导致系统卡顿、进程被杀死甚至崩溃。
  2. Swap类型选择:Ubuntu默认推荐使用Swap文件(灵活易管理),而非Swap分区(需调整分区表,风险较高)。
  3. 性能影响:Swap是内存不足时的缓冲区,关闭后若内存耗尽,系统性能会急剧下降,建议至少保留少量Swap(如内存的1-2倍)。
  4. 操作风险:修改系统文件(如/etc/fstab)前,建议备份原文件(sudo cp /etc/fstab /etc/fstab.bak),避免配置错误导致无法启动。

0