CentOS Swap 为 0 的解决方案与优化

什么是 Swap?
Swap 是 Linux 系统中的一种虚拟内存机制,它允许操作系统将内存中的数据临时存储到硬盘上,从而释放内存空间供其他进程使用,当物理内存不足时,操作系统会将部分数据移动到 Swap 空间,以保持系统的正常运行。
CentOS Swap 为 0 的原因
Swap 空间未启用
Swap 空间未启用,系统将无法使用 Swap,导致 Swap 为 0,以下是启用 Swap 的方法:
a. 编辑 /etc/fstab 文件,添加 Swap 分区信息,
/dev/sdb1 swap swap defaults 0 0 b. 使用 swapon 命令启用 Swap:
swapon /dev/sdb1 Swap 空间已用尽
Swap 空间已用尽,系统将无法继续使用 Swap,导致 Swap 为 0,以下是解决方法:
a. 检查 Swap 空间使用情况:

swapon -s b. 扩大 Swap 空间或创建新的 Swap 分区。
优化 Swap 设置
调整 Swap 分区大小
根据系统需求调整 Swap 分区大小,以下是一个示例:
a. 创建新的 Swap 分区:
dd if=/dev/zero of=/swapfile bs=1G count=4 b. 设置 Swap 分区属性:
chmod 600 /swapfile
mkswap /swapfile c. 启用 Swap 分区:
swapon /swapfile d. 编辑 /etc/fstab 文件,添加 Swap 分区信息:
/swapfile swap swap defaults 0 0 调整 Swap 分区优先级
使用 swappiness 参数调整 Swap 分区的优先级,以下是一个示例:

a. 查看当前 swappiness 值:
cat /proc/sys/vm/swappiness b. 修改 swappiness 值,例如设置为 10:
echo 10 > /proc/sys/vm/swappiness FAQs
Q1:为什么我的 CentOS 系统中 Swap 为 0?
A1:Swap 为 0 可能是因为 Swap 空间未启用或已用尽,请检查 /etc/fstab 文件中的 Swap 分区信息,并使用 swapon 命令启用 Swap。
Q2:如何调整 Swap 分区大小?
A2:首先创建新的 Swap 分区,然后使用 swapon 命令启用 Swap,并编辑 /etc/fstab 文件添加 Swap 分区信息,根据需要调整 Swap 分区大小。

