温馨提示×

ubuntu swap有必要吗

小樊
44
2026-09-01 06:57:12
栏目: 智能运维

在 Ubuntu(以及 Linux generally)中,swap 是否有必要,取决于你的使用场景和硬件配置。下面分层说明:


一、什么是 swap

swap 是磁盘上的一块空间,当物理内存(RAM)不足时,系统会把不常用的内存数据移到 swap 中,腾出 RAM 给更需要的程序。


二、有没有必要?分情况看

✅ 有必要的情况

  1. 内存较小(≤ 4GB)

    • 强烈建议有 swap
    • 否则容易 OOM(内存耗尽,程序被杀)
  2. 内存 8GB 但做以下事情

    • 编译大型项目
    • 跑虚拟机 / Docker
    • 机器学习 / 数据处理
    • 多开浏览器 + IDE
  3. 需要休眠(hibernate)

    • 休眠必须把内存完整写入 swap
    • swap ≥ 内存大小
  4. 服务器环境

    • 即使内存大,也建议小 swap(如 2–4GB)
    • 防止突发内存峰值导致服务崩溃

❌ 可以不要的情况

  1. 内存 ≥ 16GB 的桌面日常使用

    • 浏览网页、看视频、办公
    • 基本用不到 swap
  2. 高性能 SSD + 对延迟极敏感

    • swap 使用磁盘,会拖慢系统
    • 可关闭或设为极低 swappiness

三、Ubuntu 默认行为

  • ≥ 2GB RAM:默认用 swap file(不是分区)
  • ≤ 2GB RAM:安装时强制创建 swap

查看 swap:

swapon --show
free -h

四、推荐配置(经验值)

内存 建议 swap
2GB 2–4GB
4GB 2–4GB
8GB 2–4GB
16GB 0–2GB
32GB+ 0–2GB(服务器可留)

五、优化建议

降低 swap 使用倾向(默认 60):

sudo sysctl vm.swappiness=10

持久化:

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

总结一句话

小内存必须有,大内存可选,服务器建议留一点。

如果你愿意,可以告诉我你的 内存大小 + 用途(办公 / 开发 / 服务器),我可以直接给你具体建议。

0