温馨提示×

centos swapper能自动吗

小樊
43
2026-10-26 16:43:04
栏目: 智能运维

在 CentOS(以及一般的 Linux 系统)里,swapper(交换分区 / 交换空间)本身是不能“自动”凭空创建或自动启用的,但可以通过配置实现“自动使用”或“自动管理”,具体看你说的是哪一种“自动”:


1️⃣ 系统启动时自动启用 swap(最常见)

如果你已经创建了 swap 分区或 swap 文件,只需配置好,系统开机自动使用:

如果是 swap 分区

编辑 /etc/fstab:

/dev/sda2  swap  swap  defaults  0 0

(设备名按你实际的分区来)

如果是 swap 文件

/swapfile  swap  swap  defaults  0 0

这样 CentOS 启动后会自动挂载并使用 swapper,不需要手动 swapon。


2️⃣ 内存不够时自动使用 swap(内核行为)

只要 swap 已启用,内核会根据内存压力自动使用:

  • 内存充足 → 基本不用 swap
  • 内存紧张 → 自动把不常用的内存页换出到 swap

这个行为是完全自动的,由内核参数控制,比如:

cat /proc/sys/vm/swappiness

默认值一般是 30(CentOS 7/8)

可调:

sysctl vm.swappiness=10

3️⃣ 自动创建 swap(不能自动,但可脚本化)

CentOS 不会自动帮你创建 swap 文件或分区,但你可以写脚本/用 cloud-init 实现“首次启动自动建 swap”。

示例(自动创建 2G swap):

fallocate -l 2G /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile
echo '/swapfile swap swap defaults 0 0' >> /etc/fstab

4️⃣ zram / 自动压缩 swap(现代做法)

CentOS 8+/Stream 支持 zram(内存中压缩 swap):

dnf install zram-generator

配置后:

  • 开机自动创建压缩 swap
  • 不需要单独磁盘分区
  • 性能比磁盘 swap 好

总结一句话

✅ swap 启用后是自动用的
❌ swap 不会自动创建
✅ 可以通过 fstab / 脚本 / zram 实现“自动化”

如果你说的是:

  • 云服务器没有 swap 怎么办
  • swappiness 怎么调
  • zram 怎么配

可以直接告诉我你的 CentOS 版本和使用场景。

0 踩