大家都知道,当 Linux 系统在消耗完物理内存时,非活动页面就会从物理内存移动到 SWAP 空间,而 SWAP 空间可以采用专用的 SWAP 分区或 SWAP 文件形式存在。

而在大多数情况下,在虚拟机中运行 Ubuntu 系统时,都不会自动创建 SWAP 交换分区。

 

下面系统极客就为大家介绍,如何为 Ubuntu 18.04 手动创建 SWAP 交换文件。

开始之前

在开始创建之前,请先使用如下命令检查您的 Ubuntu 系统是否已经启用了 SWAP 分区:

sudo swapon --show

如果输出为空,则表示当前系统尚未启用 SWAP 空间;反之,您将看到相关反馈。

虽然可能,但在同一台 Linux 机器上有多个 SWAP 空间的情况并不常见。

创建SWAP分区文件

您可以执行以下步骤在 Ubuntu 18.04 系统中添加 SWAP 交换文件:

1通过以下命令创建一个用于 swap 的文件:

sudo fallocate -l 1G /swapfile

如果未安装 fallocate 或者收到错误提示,也可以使用以下命令创建 swap 文件:

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

2执行以下命令为 swapfile 文件设置正确的权限:

sudo chmod 600 /swapfile

3使用 mkswap 实用程序在文件上设置 Linux SWAP 区域:

sudo mkswap /swapfile

4使用以下命令激活 swap 文件:

sudo swapon /swapfile

5要让创建好的 swap 分区永久生效,可以将 swapfile 路径内容写入到 /etc/fstab 文件当中:

/swapfile swap swap defaults 0 0

6使用 swapon 或 free 命令验证 SWAP 是否处于活动状态,如下所示:

sudo swapon --show
sudo free -h

Ubuntu 18.04 如何添加或删除 SWAP 交换分区

调整Swappiness值

Swappiness 是一个 Linux 内核属性,用于定义 Linux 系统使用 SWAP 空间的频率。Swappiness 值可以从 0 至 100,较低的值会让内核尽可能少的使用 SWAP 空间,而较高的值将让 Linux Kernel 能够更加积极地使用 SWAP 分区。

Ubuntu 18.04 默认的 Swappiness 值为 60,您可以使用如下命令来查看:

cat /proc/sys/vm/swappiness

值为 60 对于 Ubuntu 18.04 桌面还算行,但对于 Ubuntu Server 来说,SWAP 的使用频率就比较高了,所以您可能需要设置较低的值。例如,要将 swappiness 值设置为 40,请执行:

sudo sysctl vm.swappiness=40
sudo sysctl -p --system

Ubuntu 18.04 如何添加或删除 SWAP 交换分区

如果要让设置在系统重启后依然有效,则必要在 /etc/sysctl.conf 文件中添加以下内容:

vm.swappiness=40

最佳 swappiness 值取决于您系统的工作负载以及内存的使用方式,您应该以小增量的方式来调整此参数,以查到最佳值。

移除SWAP分区

Ubuntu 18.04 要停用并删除 SWAP 文件,请按照下列步骤操作:

1首先输入以下命令停用 SWAP 空间:

sudo swapoff -v /swapfile

2在 /etc/fstab 文件中删除有效 swap 的行。

3最后执行以下命令删除 swapfile 文件:

sudo rm /swapfile

Ubuntu 18.04 如何添加或删除 SWAP 交换分区

 

相关文章:

  • 2022-12-23
  • 2021-11-05
  • 2022-12-23
  • 2021-06-19
  • 2021-08-20
  • 2022-12-23
  • 2021-11-04
  • 2021-12-04
猜你喜欢
  • 2022-12-23
  • 2021-06-04
  • 2021-06-22
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案