在 Ubuntu 里 swap 出错 常见表现有几种:开机卡住、提示 swapon failed、no matching swap device、UUID 错误、swap file disabled 等。下面按最常见原因 + 解决办法给你说明。
swapon --show
free -h
系统升级、重装、磁盘变动后, /etc/fstab 里的 UUID 和实际不一致。
解决办法:
blkid | grep swap
记下 swap 分区的 UUID。
编辑:
sudo nano /etc/fstab
改成类似:
UUID=xxxx-xxxx-xxxx none swap sw 0 0
然后:
sudo swapoff -a
sudo swapon -a
常见于云服务器。
重新创建 swap file:
sudo swapoff /swapfile
sudo rm /swapfile
sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
写入 fstab(如果没有):
/swapfile none swap sw 0 0
df -h
如果 / 或 /tmp 满了:
swapon如果你用了加密 swap,但密码或映射名不对,会失败。
检查:
cat /etc/crypttab
确认和 fstab 对应。
如果你看到:
resume: no device specified
说明休眠找不到 swap。
可选:
resume= 内核参数如果只是为了开机:
sudo swapoff -a
然后注释掉 /etc/fstab 里的 swap 行。
如果你方便,把下面任意一个贴出来,我可以精准判断:
swapon -a 的输出/etc/fstab 内容blkid 输出我可以直接帮你改到能开机 ✅