温馨提示×

怎么修改CentOS Swap的优先级

小樊
42
2026-07-19 09:46:26
栏目: 智能运维

在 CentOS(以及大多数 Linux 发行版)中,Swap 的优先级(priority) 决定了系统在发生内存不足时,优先使用哪个 swap 分区或 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 值越大,优先级越高(越先被使用)。


二、临时修改 Swap 优先级(重启失效)

1️⃣ 先关闭 swap

swapoff /swapfile

或针对分区:

swapoff /dev/sda2

2️⃣ 重新启用并指定优先级

swapon -p 10 /swapfile

或:

swapon --priority=10 /swapfile

✅ 验证:

swapon -s

⚠️ 重启后失效


三、永久修改 Swap 优先级(推荐)

1️⃣ 编辑 /etc/fstab

vi /etc/fstab

找到 swap 相关行,例如:

/swapfile swap swap defaults 0 0

2️⃣ 修改为指定 priority

/swapfile swap swap defaults,pri=10 0 0

如果是 swap 分区:

/dev/sda2 swap swap defaults,pri=20 0 0

priority 值越大,越优先使用

3️⃣ 重新挂载 swap

swapoff -a
swapon -a

4️⃣ 验证

swapon -s

四、多个 Swap 的优先级规则

情况 行为
优先级相同 系统会 均衡使用
优先级不同 优先使用高 priority 的 swap
优先级为 - 系统自动分配(通常较晚启用)

✅ 示例(推荐):

/dev/sda2  swap  swap  defaults,pri=20  0 0
/swapfile  swap  swap  defaults,pri=10  0 0

五、是否建议调高 swap 优先级?

一般建议:

场景 建议
内存充足 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

如果你能提供:

  • CentOS 版本(6 / 7 / 8 / Stream)
  • swap 分区 还是 swap 文件
  • 想达到什么目的(性能 / 避免 swap / 多 swap 策略)

我可以帮你给出最优配置方案

0