在 CentOS(以及大多数 Linux 发行版)中,Swap 的优先级(priority) 决定了系统在发生内存不足时,优先使用哪个 swap 分区或 swap 文件。
下面按常见场景给你说明 如何查看和修改 Swap 优先级。
swapon -s
或:
cat /proc/swaps
输出示例:
Filename Type Size Used Priority
/dev/sda2 partition 2097148 0 -2
/swapfile file 1048572 0 -3
Priority 值越大,优先级越高(越先被使用)。
swapoff /swapfile
或针对分区:
swapoff /dev/sda2
swapon -p 10 /swapfile
或:
swapon --priority=10 /swapfile
✅ 验证:
swapon -s
⚠️ 重启后失效
/etc/fstabvi /etc/fstab
找到 swap 相关行,例如:
/swapfile swap swap defaults 0 0
/swapfile swap swap defaults,pri=10 0 0
如果是 swap 分区:
/dev/sda2 swap swap defaults,pri=20 0 0
✅ priority 值越大,越优先使用
swapoff -a
swapon -a
swapon -s
| 情况 | 行为 |
|---|---|
| 优先级相同 | 系统会 均衡使用 |
| 优先级不同 | 优先使用高 priority 的 swap |
优先级为 - |
系统自动分配(通常较晚启用) |
✅ 示例(推荐):
/dev/sda2 swap swap defaults,pri=20 0 0
/swapfile swap swap defaults,pri=10 0 0
一般建议:
| 场景 | 建议 |
|---|---|
| 内存充足 | swap 优先级可低 |
| SSD swap | 可设置更高优先级 |
| 机械盘 swap | 优先级降低,减少性能损耗 |
| 云服务器 | swap 优先级通常保持默认即可 |
Linux 不支持直接修改正在启用的 swap 的 priority,必须先:
swapoff
swapon -p
# 查看
swapon -s
# 临时调整
swapoff /swapfile
swapon -p 10 /swapfile
# 永久调整
vi /etc/fstab
# 添加 pri=数字
swapoff -a && swapon -a
如果你能提供:
我可以帮你给出最优配置方案。