温馨提示×

怎样禁用Debian Swapper

小樊
32
2026-08-24 10:06:57
栏目: 智能运维

在 Debian 系统中,swapper 通常指的是 swap 交换分区或交换文件。禁用它一般有两种常见场景:

  1. 临时禁用(重启后恢复)
  2. 永久禁用(重启后仍不启用)

下面分别说明。


一、临时禁用 Swap(立即生效,重启恢复)

1. 查看当前 swap 状态

swapon --show
free -h

2. 临时关闭所有 swap

sudo swapoff -a

这不会影响系统运行,但如果内存不足,可能导致 OOM(进程被杀)。


二、永久禁用 Swap(推荐做法)

方法一:从 /etc/fstab 中移除 swap(最常用)

1. 编辑 fstab

sudo nano /etc/fstab

2. 找到类似下面的行(可能不止一行)

UUID=xxxx-xxxx-xxxx  none  swap  sw  0  0

/swapfile none swap sw 0 0

3. 禁用方式(任选一种)

  • 注释掉(在行首加 #
# UUID=xxxx-xxxx-xxxx  none  swap  sw  0  0
  • 或直接删除该行

4. 保存并退出

Ctrl + OEnterCtrl + X

5. 立即关闭 swap(避免重启前仍启用)

sudo swapoff -a

6. 重启验证

free -h
swapon --show

三、如果使用的是 Swapfile(而不是分区)

1. 关闭 swap

sudo swapoff /swapfile

2. 删除 swapfile(可选)

sudo rm /swapfile

3. 删除 /etc/fstab 中的相关行

/swapfile none swap sw 0 0

四、为什么不建议完全禁用 Swap?

⚠️ 注意风险

  • 即使内存充足,Linux 也会用 swap 存放不活跃的页面
  • 禁用 swap 后:
    • 内存耗尽时更容易触发 OOM Killer
    • 某些桌面环境或数据库(如 PostgreSQL)可能表现异常

折中方案(推荐)

保留 swap,但降低使用倾向

sudo sysctl vm.swappiness=10

永久生效:

echo "vm.swappiness=10" | sudo tee -a /etc/sysctl.conf

五、总结

需求 命令
临时禁用 swap sudo swapoff -a
永久禁用 swap 注释 /etc/fstab 中的 swap 行
删除 swapfile swapoff + rm
减少 swap 使用 调整 swappiness

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

  • swapon --show
  • /etc/fstab

我可以帮你精确判断该禁用哪一项。

0