在Linux中建立Swap

hoboken-swap-meet-2

有时,你需要提高服务器的响应能力,以防止内存不足问题。 当在您的服务器上运行的应用程序开始消耗大量内存时,发生内存不足问题。swap被设计为虚拟内存,它使用你的硬盘来存储无法保存在RAM中的数据。 本教程将告诉你如何创建一个swap,just for –Ubuntu,CentOS and Debian

步骤1:验证swap不存在

为了防止本教程中出现任何问题,您需要运行以下命令来验证swap空间当前未处于活动状态:

free -m

运行该命令后,您应该看到类似于此输出的内容:

total used free shared buffers cached
Mem: 1840 1614 226 15 36 1340
-/+ buffers/cache: 238 1602
Swap: 0 0 0

如果在“swap”部分中看到值0,则可以继续执行步骤2。

步骤2:创建Swap

您需要为swap file选择目录。 在本教程中,它将存储在服务器的根目录。 我们将通过运行以下命令创建一个2GB的swap文件:

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

dd命令将生成类似以下格式的输出:

2048+0 records in
2048+0 records out
2147483648 bytes (2.1 GB) copied, 10.5356 s, 204 MB/s

接下来,通过运行以下命令验证文件是否位于VPS/Linux的根目录:

ls / | grep swapfile

如果看到swap文件文件,请继续下一步

步骤3:激活Swap

swap无法被自动识别 。 我们需要告诉服务器如何格式化文件并启用它,以便它可以用作有效的swap文件。 作为安全措施,更新swap文件权限,只允许root用户使用读写权限:

chmod 600 /swapfile

可以通过运行以下命令验证权限更改:

ls -lh /swapfile

您将看到:

-rw------- 1 root root 2.0G Oct 2 18:47 /swapfile

接下来,通过运行以下命令告诉服务器设置swap文件:

mkswap /swapfile

运行后,将看到以下输出:

Setting up swapspace version 1, size = 2097148 KiB
no label, UUID=ff3fc469-9c4b-4913-b653-ec53d6460d0e

如果一切如上所示,您现在可以进入下一步。

步骤4:打开Swap

一旦您的swap file准备好用作swap,通过运行:

swapon /swapfile

您可以通过再次运行free命令来验证swap文件是否处于激活状态。

free -m

total used free shared buffers cached
Mem: 1840 1754 86 16 23 1519
-/+ buffers/cache: 210 1630
Swap: 2047 0 2047

如果Swap显示非0,那么已成功设置swap。

步骤5:在重新启动时自动加载swap

默认情况下,服务器不会自动启用此新swap文件。 要在启动时启用它,可以更新/ etc / fstab。

vi /etc/fstab

在最下面加一行:

/swapfile none swap sw 0 0

完成编辑文件后保存并关闭,完工!