教程 · 2021年1月25日 0

Linux设置swap交换空间步骤

内容纲要

最近部署项目服务器总是OOM,没办法,内存不够,硬盘来凑。

步骤:

查看当前swap状态

首先登录到系统,然后使用 free -h 查看当前系统的内存和交换空间大小。

free -h

输出:

              total        used        free      shared  buff/cache   available
Mem:          3.8Gi       1.5Gi       1.4Gi       1.0Mi       928Mi       2.1Gi
Swap:         4.0Gi          0B       4.0Gi

如果没有配置 swap 空间,Swap 那一栏就是 0。

如果有的话,执行下面的步骤,如果没有,请直接创建新的。

删除旧的swap文件

  1. 查看当前 swap 文件/分区的位置。
sudo swapon --show

输出:

NAME      TYPE SIZE USED PRIO
/swapfile file   4G   0B   -2
  1. 删除旧的 swap 文件
sudo swapoff -v /swapfile
sudo rm -f /swapfile # 如果是分区的话请另寻他路,需要调整分区大小
sudo vi /etc/fstab # 移除旧的挂载点,如果你想要更改挂载路径的话。(删除 /swapfile swap swap defaults 0 0 这一行)

创建新的swap文件

假定你要将 swap 文件存放在 /swapfile

  1. 生成文件并启用
sudo dd if=/dev/zero of=/swapfile bs=1024 count=1048576 # 1048576 就是 1024 * 1024 = 1GB
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
  1. 开机挂载

输入命令 sudo vi /etc/fstab 以编辑文件,追加以下内容。

/swapfile swap swap defaults 0 0
  1. 再次检查

使用命令 free -h 或者 sudo swapon --show,详见上文