在 Ubuntu(以及大多数 Linux 发行版)中,swap 的大小并没有一个绝对固定的标准,而是取决于你的物理内存大小、使用场景和是否使用休眠功能。
下面是常见建议:
一、通用建议(官方/社区常见规则)
1. 内存较小(≤ 2GB)
- swap = 内存的 2 倍
- 例如:1GB 内存 → 2GB swap
2. 内存中等(2GB–8GB)
- swap = 内存的 1–1.5 倍
- 例如:4GB 内存 → 4–6GB swap
3. 内存较大(8GB–16GB)
- swap = 内存的 0.5–1 倍
- 例如:8GB 内存 → 4–8GB swap
4. 内存很大(≥ 16GB / 32GB+)
- swap = 4GB–8GB 通常足够
- 服务器可更少(甚至 2GB,仅用于 OOM 保护)
二、是否启用休眠(非常重要)
如果你打算使用 休眠(hibernate):
- swap ≥ 物理内存大小
- 推荐:swap = 内存大小 + 一点余量(如 +2GB)
休眠会把内存内容写入 swap
三、不同使用场景建议
桌面用户(日常办公、上网)
- 8GB 内存:4–8GB swap
- 16GB 内存:4–8GB swap
开发 / 编译 / 虚拟机
- 建议 swap 稍大
- 如 16GB 内存 → 8–16GB swap
服务器(数据库、Web)
- 小 swap(如 2–4GB)
- 更依赖足够物理内存
老电脑 / 内存紧张
四、Ubuntu 官方(旧版)参考表
| 内存大小 |
推荐 swap |
| ≤ 1GB |
内存 × 2 |
| 1–2GB |
内存 × 2 |
| 2–4GB |
内存 × 1 |
| 4–8GB |
内存 × 0.5 |
| 8–16GB |
4–8GB |
| >16GB |
2–4GB |
五、现代 Ubuntu(使用 swapfile)
- Ubuntu 20.04+ 默认使用 swapfile
- 文件路径:
/swapfile
- 可随时调整大小
查看当前 swap:
swapon --show
free -h
调整示例(设为 8G):
sudo swapoff /swapfile
sudo fallocate -l 8G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
六、简单结论(推荐)
- 普通桌面用户:swap ≈ 内存的一半到相等
- 要休眠:swap ≥ 内存
- 大内存服务器:4GB 左右即可
如果你愿意,可以告诉我:
我可以给你一个精确推荐值。