在 Ubuntu 18.04 中创建 Swap 交换分区

对于常见的廉价 VPS,一般仅提供了 1G 左右的内存,通常情况下应付小应用是没问题的,但比如 Discourse 或者 java 程序,就显得不足了。

配置适当的 Swap 交换分区,可以让系统在物理内存耗尽之后,将内存临时保存至 Swap 分区,以腾出物理内存。

下面是简易教程,参考自 Linuxize,以 root 用户为例,非 root 用户请在命令前添加 sudo

创建 swap 分区

  1. 查看系统内存情况,如 Swap 一行为 0,即未设置 Swap 内存。

free -m

  1. 创建 1G 大小的 swap 文件,并挂载到 /swapfile,直接修改 1G 为 2G 可创建 2G 大小的 swap 文件。

fallocate -l 1G /swapfile

如 fallocate 提示不支持( fallocate failed: Operation not supported)请使用 dd 命令

dd if=/dev/zero of=/swapfile bs=1024 count=1048576

  1. 设置 /swapfile 权限为 600

chmod 600 /swapfile

  1. 设置 swap 分区:

mkswap /swapfile

  1. 激活 swap 分区

swapon /swapfile

echo "/swapfile swap swap defaults 0 0" >> /etc/fstab

  1. 验证 swap 分区是否成功

free -m

输出:
total        used        free      shared  buff/cache   available
Mem:           488M        158M         83M        2.3M        246M        217M
Swap:          1.0G        506M        517M

Swap 行能看到设置大小的数字即可。

删除 swap 分区

swapoff -v /swapfile

rm /swapfile

完毕,遇到问题可以留言贴上错误代码。