在 CentOS(以及一般的 Linux 系统)里,swapper(交换分区 / 交换空间)本身是不能“自动”凭空创建或自动启用的,但可以通过配置实现“自动使用”或“自动管理”,具体看你说的是哪一种“自动”:
如果你已经创建了 swap 分区或 swap 文件,只需配置好,系统开机自动使用:
编辑 /etc/fstab:
/dev/sda2 swap swap defaults 0 0
(设备名按你实际的分区来)
/swapfile swap swap defaults 0 0
这样 CentOS 启动后会自动挂载并使用 swapper,不需要手动 swapon。
只要 swap 已启用,内核会根据内存压力自动使用:
这个行为是完全自动的,由内核参数控制,比如:
cat /proc/sys/vm/swappiness
默认值一般是 30(CentOS 7/8)
可调:
sysctl vm.swappiness=10
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
CentOS 8+/Stream 支持 zram(内存中压缩 swap):
dnf install zram-generator
配置后:
✅ swap 启用后是自动用的
❌ swap 不会自动创建
✅ 可以通过 fstab / 脚本 / zram 实现“自动化”
如果你说的是:
可以直接告诉我你的 CentOS 版本和使用场景。