创建 swap 交换文件(fallocate + mkswap + swapon)
不重新分区,通过创建 /swapfile、用 mkswap 格式化、swapon 启用,为系统添加交换空间。
运行 `sudo fallocate -l 4G /swapfile && sudo chmod 600 /swapfile && sudo mkswap /swapfile && sudo swapon /swapfile` 即可添加 4 GB swap。
01命令
命令
$ sudo fallocate -l 4G /swapfile && sudo chmod 600 /swapfile && sudo mkswap /swapfile && sudo swapon /swapfile02作用说明
swap 让内核把不活跃的内存换出,可以在流量高峰时避免小型服务器触发 OOM 杀进程;1–2 GB 内存的服务器常见做法是配 2–4 GB。chmod 600 这一步不能省——swap 文件不能全局可读,否则 swapon 会告警。想让重启后仍然生效,把 `/swapfile none swap defaults 0 0` 追加到 /etc/fstab;桌面机还可用 `sysctl vm.swappiness=10` 降低换页倾向。
03风险
!注意: 如果 /swapfile 已经存在且有数据,千万不要执行——fallocate 会复用文件而 mkswap 会覆盖它。btrfs、ZFS 等文件系统需要先做特殊处理(关闭 CoW 等)才能安全使用 swap 文件。
04撤销
撤销
$ sudo swapoff /swapfile && sudo rm /swapfile05来源
- Swap - ArchWiki依据: Documents creating a swap file with fallocate, setting permissions with chmod 600, mkswap, swapon and the /etc/fstab entry to make it permanent.
- swapon(8) - Linux manual page依据: swapon enables a swap device or file and swapon --show reports active swap areas.
最后验证: 2026-09-18 · 分类: 系统与设置