温馨提示×

centos swap作用有哪些

小樊
35
2026-09-02 17:49:14
栏目: 智能运维

在 CentOS(以及大多数 Linux 系统)中,swap(交换分区/交换文件) 的作用是作为内存的补充,主要功能如下:

1. 内存不足时的“备用内存”

当物理内存(RAM)使用完时,系统会把不常用或暂时不用的内存数据写到 swap 中,从而释放物理内存给更需要的进程使用,避免系统因内存耗尽而卡死或崩溃。

2. 防止 OOM(Out Of Memory)崩溃

如果没有 swap,当内存耗尽时,Linux 的 OOM Killer 会强制杀掉占用内存最多的进程(可能是数据库、Java 服务等),导致服务异常。
有 swap 可以缓冲这一过程,给系统或运维人员处理时间。

3. 支持系统休眠(Hibernate)

如果 CentOS 使用 休眠(suspend to disk) 功能,系统会把内存中的所有数据写入 swap,下次开机再从 swap 恢复。

注意:休眠通常需要 swap ≥ 物理内存大小。

4. 优化内存使用效率

Linux 会把很少使用的内存页移入 swap,把宝贵的 RAM 留给:

  • 活跃进程
  • 文件系统缓存(cache/buffer)

这在内存较小的服务器上尤其有用。

5. 特殊场景下的稳定性保障

例如:

  • 内存较小(如 1G / 2G)的 VPS
  • 运行突发内存占用程序(编译、备份、数据分析)
  • 云服务器内存可突发但有限制

swap 的缺点(也要注意)

  • 速度慢:swap 在磁盘上,比 RAM 慢很多
  • **频繁 swap(swap thrashing)**会导致系统极卡
  • SSD 上频繁写入 swap 会影响寿命(影响较小)

常见建议(CentOS)

  • 内存 ≤ 2G:swap = 2×内存
  • 内存 2–8G:swap = 等于内存
  • 内存 > 8G:swap = 4–8G(或仅用于休眠)
  • 服务器追求性能:可小 swap 或无 swap(但风险更高)

如果你愿意,我可以帮你:

  • 查看 CentOS 当前 swap 使用情况
  • 教你如何添加 / 删除 / 调整 swap
  • 判断是否“swap 用太多”需要优化

0