调节 Ubuntu 的 Swap 大小,核心是对 Swap 文件(Ubuntu 现代版本默认使用)或 Swap 分区 进行调整,以下是详细、可操作的步骤,优先推荐更灵活的 Swap 文件调整法。
前提:查看当前 Swap 状态
输出示例(/swapfile 是默认的 Swap 文件):NAME TYPE SIZE USED PRIO
/swapfile file 4G 0B -2
核心方法:调整 Swap 文件大小(推荐)
此方法无需分区操作,灵活可控,步骤如下:
必须先关闭正在使用的 Swap,否则无法修改sudo swapoff /swapfile
分 增大 和 减小 两种场景:
- 场景1:增大 Swap 文件
比如要将 Swap 从 4GB 调整为 8GB,直接创建新的 Swap 文件(会覆盖旧文件)# 创建 8GB 的 Swap 文件(bs=1M 表示块大小1MB,count=8192 表示8192个块,即8GB)
sudo fallocate -l 8G /swapfile若 fallocate 命令失败,改用 dd 命令:sudo dd if=/dev/zero of=/swapfile bs=1M count=8192
- 场景2:减小 Swap 文件
比如要将 Swap 从 4GB 调整为 2GB,先删除旧文件,再创建新文件# 删除旧 Swap 文件
sudo rm /swapfile
# 创建 2GB 新 Swap 文件
sudo fallocate -l 2G /swapfile
Swap 文件权限必须为 600,否则系统会拒绝使用sudo chmod 600 /swapfile
将文件标记为 Swap 格式sudo mkswap /swapfile
编辑 /etc/fstab 文件,确保重启后 Swap 自动加载sudo nano /etc/fstab
确认文件内有以下一行(没有则添加):/swapfile none swap sw 0 0
按 Ctrl+O 保存,Ctrl+X 退出。
再次执行命令,查看 Swap 大小是否更新swapon –show
free -h
备选方法:调整 Swap 分区大小(适合旧系统)
如果你的系统使用的是 Swap 分区(而非文件),调整步骤更复杂,需要借助分区工具(如 gparted),步骤如下:
sudo nano /etc/fstab # 替换旧的UUID
重要建议:Swap 大小设置参考
Swap 大小没有固定标准,可根据物理内存容量选择:
| ≤ 4GB | 2 × 物理内存 | 日常办公、轻度使用 |
| 4GB – 16GB | 等于物理内存 | 多任务、开发、虚拟机 |
| ≥ 16GB | 4GB – 8GB | 大型软件、服务器 |
我可以帮你编写一个Swap大小一键调整脚本,输入目标大小就能自动完成所有步骤,需要吗?




