在 Ubuntu 里“swap 失败”通常分几种情况,我按最常见场景给你排一遍,你对照看看是哪种。
swap failed / failed to activate swap系统升级、重装、磁盘变动后,/etc/fstab 里的 swap UUID 和实际不一致。
解决:
sudo blkid
找到 swap 分区的 UUID,然后:
sudo nano /etc/fstab
确认类似这一行:
UUID=xxxx-xxxx none swap sw 0 0
UUID 不对就改成正确的。
然后:
sudo swapoff -a
sudo swapon -a
创建 2G swap 文件:
sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
写入 fstab:
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
如果你是服务器或跑大模型:
sudo swapoff /swapfile
sudo fallocate -l 8G /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
Ubuntu 22.04+ 默认启用 zram:
swapon --show
如果看到 /dev/zram0,说明用的是压缩内存。
关闭传统 swap 失败不影响系统,可忽略。
如想关 zram:
sudo systemctl disable --now systemd-zram-setup@zram0
df -h
如果 / 或 /tmp 满了:
swapon -aswapon --show
free -h
cat /etc/fstab
sudo blkid
lsb_release -a)我可以直接按你的环境给你精确命令。