侧边栏壁纸
  • 累计撰写 27 篇文章
  • 累计创建 4 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

CentOS 8 配置 Swap 交换分区完整教程

陳小航
2025-10-25 / 0 评论 / 0 点赞 / 2 阅读 / 0 字 / 正在检测是否收录...
温馨提示:
部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

扫码_搜索联合传播样式-标准色版.png
一、什么是 Swap

Swap(交换分区) 是 Linux 系统中当内存不足时,用于临时扩展内存容量的虚拟内存区域。
当物理内存不够用时,系统会将部分暂时不用的数据写入 Swap 空间中,从而避免程序因内存不足而崩溃。

Swap 可以是:

  • 独立的分区(推荐服务器安装时设置)

  • 也可以是一个文件形式(灵活可调)


二、创建 Swap 文件

以下示例创建一个 2GB 的 Swap 文件 /var/newswap

# 创建一个 2GB 大小的空文件
dd if=/dev/zero of=/var/newswap bs=1M count=2048

# 修改权限,防止被普通用户访问
chmod 600 /var/newswap

# 格式化为 Swap 类型
mkswap /var/newswap

三、启用 Swap

# 启用 swap 文件
swapon /var/newswap

四、验证 Swap 是否生效

free -m

输出示例:

              total        used        free      shared  buff/cache   available
Mem:           1723         634         358           1         730         936
Swap:          2047           5        2042

可以看到 Swap 一栏有数值,即代表配置成功。


五、设置开机自动挂载(永久生效)

编辑 /etc/fstab 文件:

vim /etc/fstab

在文件最后添加以下内容:

/var/newswap swap swap defaults 0 0

保存后,执行以下命令测试是否有错误:

mount -a

如果没有任何输出或错误,说明配置正确。
此后系统重启后会自动加载 Swap。


六、卸载与删除 Swap(可选)

如果需要临时关闭或删除该 Swap:

# 临时关闭 Swap
swapoff /var/newswap

# 删除文件(若不再需要)
rm -f /var/newswap

七、查看当前 Swap 信息

swapon -s

输出示例:

Filename                Type        Size    Used    Priority
/var/newswap            file        2097148 0       -2

八、调整 Swap 使用优先级(Swappiness)

Swappiness 决定系统在使用 Swap 前倾向于占用多少物理内存。

取值范围 0~100

  • 数值越小,越少使用 Swap(推荐服务器设为 10~20)

  • 默认值通常是 60

查看当前值:

cat /proc/sys/vm/swappiness

临时修改为 10:

sysctl vm.swappiness=10

永久修改(写入配置文件):

echo "vm.swappiness=10" >> /etc/sysctl.conf
sysctl -p

九、总结命令速查表

操作

命令

创建 Swap 文件

dd if=/dev/zero of=/var/newswap bs=1M count=2048

格式化为 Swap

mkswap /var/newswap

启用 Swap

swapon /var/newswap

验证是否生效

free -m

设置开机自动加载

/var/newswap swap swap defaults 0 0

查看当前 Swap

swapon -s

卸载 Swap

swapoff /var/newswap

调整 Swappiness

sysctl vm.swappiness=10


📘 扩展建议:

  • 对于内存小于 2GB 的 VPS,建议 Swap 设置为物理内存的 1~2 倍。

  • 对于 SSD 硬盘设备,可以启用 swapfile 但建议加上 vm.vfs_cache_pressure=50 以降低频繁读写。

0

评论区