​在Ubuntu中调整Swap空间

Swap(交换空间)是 Linux 系统在物理内存(RAM)不足时使用的磁盘空间,用于防止内存耗尽导致系统崩溃。如果你的 Ubuntu 系统默认 Swap 太小(例如只有 1GB),而你想扩展至 2GB 或更大,可以按照本教程进行操作。


​1. 检查当前 Swap 状态​

在调整 Swap 之前,先查看当前 Swap 的使用情况:

sudo swapon --show  # 查看已激活的 Swap
free -h             # 查看内存和 Swap 使用情况

输出示例:

NAME      TYPE SIZE USED PRIO
/swapfile file 1G   0B   -2

如果 Swap 太小(如 1GB),可以扩展或创建新的 Swap 文件。


​2. 方法一:创建新的 Swap 文件(推荐)​​

​步骤 1:关闭现有 Swap(如果已启用)​​

sudo swapoff /swapfile  # 如果已有 /swapfile

​步骤 2:创建新的 Swap 文件(2GB)​​

sudo fallocate -l 2G /swapfile  # 推荐方式

如果 fallocate 不可用,改用 dd:

sudo dd if=/dev/zero of=/swapfile bs=1M count=2048

​步骤 3:设置权限​

sudo chmod 600 /swapfile  # 仅 root 可读写

​步骤 4:格式化为 Swap​

sudo mkswap /swapfile

​步骤 5:启用 Swap​

sudo swapon /swapfile

​步骤 6:永久生效(编辑 /etc/fstab)​​

echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

​验证​

free -h  # 检查 Swap 是否变为 2GB

​3. 方法二:调整现有 Swap 文件大小​

如果已有 Swap 文件,可以删除并重建:

sudo swapoff /swapfile  # 关闭 Swap
sudo rm /swapfile       # 删除旧文件

然后按照 ​方法一​ 重新创建 2GB Swap 文件。


​4. 如何创建多个 Swap 文件?​​

如果你需要 ​多个 Swap 文件​(例如 /swapfile1 和 /swapfile2),可以:

  1. ​创建并启用多个 Swap 文件​:sudo fallocate -l 1G /swapfile1 sudo chmod 600 /swapfile1 sudo mkswap /swapfile1 sudo swapon /swapfile1sudo fallocate -l 1G /swapfile2 sudo chmod 600 /swapfile2 sudo mkswap /swapfile2 sudo swapon /swapfile2
  2. ​在 /etc/fstab 中添加两行​:/swapfile1 none swap sw 0 0 /swapfile2 none swap sw 0 0
  3. ​验证​:swapon --show # 查看所有 Swap 文件 free -h # 检查总 Swap 大小

​5. 优化 Swap 性能(可选)​​

​调整 swappiness(减少 Swap 使用频率)​​

echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
  • ​**10**​ 表示尽量少用 Swap(适用于 SSD)。
  • ​默认值​ 通常是 60(适用于 HDD)。

​6. 常见问题​

​Q1: fallocate 失败怎么办?​​

改用 dd 命令:

sudo dd if=/dev/zero of=/swapfile bs=1M count=2048

​Q2: /etc/fstab 里的 sw 是什么意思?​​

  • sw 表示 ​swap,即该文件用于 Swap 空间。
  • none 表示 ​不挂载到目录​(Swap 不需要挂载点)。

​Q3: 如何删除多余的 Swap 文件?​​

sudo swapoff /swapfile2  # 关闭 Swap
sudo rm /swapfile2       # 删除文件

然后从 /etc/fstab 删除对应行。


​7. 总结​

操作 命令
​查看 Swap​ free -h / swapon --show
​创建 Swap​ sudo fallocate -l 2G /swapfile
​启用 Swap​ sudo swapon /swapfile
​永久生效​ 编辑 /etc/fstab
​多个 Swap​ 创建多个文件并在 /etc/fstab 添加多行
​优化性能​ 调整 vm.swappiness

通过本教程,你可以轻松调整 Ubuntu 的 Swap 空间,提高系统稳定性。如果有问题,欢迎在评论区讨论! ?

正文完
 0
评论(没有评论)
验证码