在 Ubuntu 上配置 swap(交换空间) 通常有几种方式:swap 文件(推荐)、swap 分区、zram(内存压缩)。下面按「最常用 & 最稳妥」的方式给你讲。
swapon --show
free -h
如果没有输出,说明当前没有 swap。
sudo fallocate -l 4G /swapfile
如果 fallocate 不支持(某些文件系统):
sudo dd if=/dev/zero of=/swapfile bs=1M count=4096
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
编辑 /etc/fstab:
sudo nano /etc/fstab
添加一行:
/swapfile none swap sw 0 0
| 内存 | 建议 swap |
|---|---|
| ≤ 2G | 2×内存 |
| 2–8G | 等于内存 |
| 8–16G | 4–8G |
| ≥ 16G | 2–4G(或不用) |
| 用到休眠 | ≥ 内存大小 |
值越低越“不愿用 swap”
查看:
cat /proc/sys/vm/swappiness
设为 10(推荐桌面/服务器):
sudo sysctl vm.swappiness=10
永久生效:
echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf
sudo sysctl vm.vfs_cache_pressure=50
sudo swapoff /swapfile
sudo rm /swapfile
并从 /etc/fstab 删除对应行。
sudo apt install zram-tools
会自动创建压缩内存 swap,性能比磁盘 swap 好很多。
如果你愿意,可以告诉我:
我可以给你一套精准配置方案。