温馨提示×

ubuntu swapper出问题咋办

小樊
50
2026-09-15 19:44:29
栏目: 智能运维

在 Ubuntu 里说的 swapper / swap 出问题,通常表现为:

  • 系统卡死、OOM(内存不足)
  • 休眠(hibernate)失败
  • swap 分区/文件没生效
  • swapon --show 看不到 swap
  • 开机报 swapper failed / resume failed

下面按最常见情况一步步排查和解决。


一、先确认 swap 状态

swapon --show
free -h
  • 如果没有输出 swap → swap 没启用
  • 有但很小 → 可能不够用

二、Swap 分区 / 文件没了或没挂载

1️⃣ 使用 swap 文件(推荐)

创建 4G swap(按需调整):

sudo fallocate -l 4G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile

开机自动挂载:

echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

2️⃣ 使用 swap 分区

查看分区:

lsblk
sudo blkid

启用:

sudo swapon /dev/sdXn

写入 /etc/fstab

UUID=xxxx none swap sw 0 0

三、休眠(hibernate)相关 swapper 报错

如果你是 休眠失败,重点看这个:

1️⃣ 确认 swap ≥ 内存

free -h
swapon --show

2️⃣ 设置 resume 参数

找到 swap UUID:

sudo blkid | grep swap

编辑:

sudo nano /etc/default/grub

添加或修改:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash resume=UUID=你的swapUUID"

更新 grub:

sudo update-grub

四、swapper 导致系统卡死 / OOM

调整 swap 使用倾向

cat /proc/sys/vm/swappiness

默认 60,可调低(少 swap):

sudo sysctl vm.swappiness=10

永久:

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

五、swap 损坏 / 无法启用

sudo swapoff -a
sudo mkswap /dev/sdXn   # 或 /swapfile
sudo swapon -a

六、Still 不行?贴信息我帮你看

你可以直接发我:

swapon --show
free -h
cat /etc/fstab

以及 具体报错截图或日志journalctl -xe | grep -i swap

我可以帮你精准定位是 分区问题 / 休眠问题 / 内存问题

0