Linux 系统添加 / 扩容 swap 交换分区(文件方式)

原创 zhaoshuman  2026-03-05 17:12:58  阅读 138 次 评论 0 条
摘要:

在 Linux 系统中,当物理内存不足时,swap 交换空间可以作为临时内存使用。以下是通过创建 swapfile 的方式配置 20G 交换空间的完整步骤

在 Linux 系统中,当物理内存不足时,swap 交换空间可以作为临时内存使用。

以下是通过创建 swapfile 的方式配置 20G 交换空间的完整步骤:

1. 前置检查与准备

首先关闭当前所有交换分区,查看当前内存和交换空间使用情况:

# 关闭所有已启用的swap分区
swapoff -a
# 以MB为单位查看内存和swap使用情况(确认swap已关闭)
free -m

2. 创建并配置 20G 交换文件

依次执行以下命令创建 swap 文件、设置权限、格式化并启用:

# 创建20G大小的swap文件(fallocate是快速创建预分配文件的工具)
fallocate -l 20G /swapfile
# 设置swap文件权限为仅root可读写(安全要求,必须配置)
chmod 600 /swapfile 
# 将文件格式化为swap格式
mkswap /swapfile 
# 启用该swap文件
swapon /swapfile

3. 设置开机自动挂载 swap 文件

为了避免重启后 swap 文件失效,需要将其写入/etc/fstab配置文件:

# 将swap文件挂载信息追加到fstab中
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
# 验证fstab配置是否添加成功
cat /etc/fstab
# 以GB为单位查看内存和swap最终配置结果
free -G
# 以MB为单位查看更精确的内存和swap使用情况
free -m

补充说明:

fallocate -l 20G /swapfile:如果系统不支持fallocate(如部分老旧系统),

可替换为dd if=/dev/zero of=/swapfile bs=1G count=20(速度稍慢,但兼容性更好)。

chmod 600 /swapfile:必须设置此权限,否则系统可能拒绝使用该 swap 文件,存在安全风险。

/etc/fstab中0 0的含义:第一个 0 表示不备份,第二个 0 表示开机不检查该文件系统。

本文地址:https://zhaoshuman.cn/%E6%8A%80%E6%9C%AF%E5%88%86%E4%BA%AB/6.html
免责声明:本文为原创文章,版权归 zhaoshuman 所有,欢迎分享本文,转载请保留出处!

发表评论


表情

还没有留言,还不快点抢沙发?