CentOS7系统增加swap的操作方法实例

1. swap区是什么

首先我们要明白 swap 区是什么。其实,swap 区是一块磁盘空间,被用作虚拟内存扩充空间。当内存(RAM)资源不足的时候,部分不活动的程序或数据就会被移到 swap 区里,以便释放出内存空间给活跃的程序或数据使用。CentOS7默认创建了一个 swap 分区,在大多数情况下 swap 分区大小是根据内存大小进行的。例如,如果你有 2GB 或更大的内存,则 swap 分区大小通常是内存大小的 2 倍。如果你的服务器是虚拟主机,则你需要先确认是否允许增加虚拟内存。

2. 查看系统 swap 分区情况

在进行任何操作之前,我们需要先检查当前系统上 swap 分区的情况。

2.1 查看系统的 swap 分区信息

在 Linux 系统中,我们可以使用 freeswapon 来查看系统当前的内存和 swap 使用情况。

free -h

重要提示:-h 是一个可选参数,它意味着以可读的字节格式输出结果。如果不使用 -h,则输出的是以字节为单位的精确值。

若执行成功,则会输出当前内存以及 swap 使用情况的统计信息。以下是一份示例输出:

              total        used        free      shared  buff/cache   available

Mem: 3.8G 2.6G 243M 9.0M 998M 1.0G

Swap: 4.0G 284M 3.7G

上述输出表明,系统中当前总计有 3.8G 内存和 4.0G 的 swap 分区。当前使用的内存为 2.6G,swap 分区使用了 284M, 3.7G 用作缓存。

2.2 查看 swap 分区的详细信息

你还可以执行以下命令以查看 swap 分区的详细信息:

sudo swapon --show

如果你的系统当前没有启用 swap 分区,则输出为空。

3. 如何添加或增加 swap 分区

如果你没有足够的 swap 分区,或者你的系统需要更多的虚拟内存扩容,那么你可以通过下面介绍的方法来增加 swap 分区的大小。

3.1. 创建 swap 文件

通过创建一个 swap 文件,我们可以轻松地添加或者扩大 swap 分区,而不需要额外的物理硬件支持。

以下命令可用于创建 swap 文件(在这个例子中,将创建一个 2 GB 大小的 swap 文件):

sudo fallocate -l 2G /swapfile

接下来,我们来设置文件权限,仅允许 root 用户读、写和执行作用于该文件:

sudo chmod 600 /swapfile

3.2. 启用 swap 文件

在启用 swap 文件之前,我们需要将该文件转换为支持 swap 的格式。我们可以使用下面命令将其转换为 swap 文件:

sudo mkswap /swapfile

完成转换后,我们可以通过执行以下命令来启用该文件:

sudo swapon /swapfile

如果你想确认 swap 文件是否已经成功启动,可以再次使用 swapon 命令来检查。注意,如果该文件在上一个步骤中被启用,则 swapon 将会在输出列表中显示该文件:

sudo swapon --show

3.3. 设为开机启动

为了实现 swap 文件的自动挂载,我们需要将其添加到 /etc/fstab 文件中。这可以通过添加一条新的行来实现,该行应包含 swap 文件的路径,由单个空格将其与“swap”关键字分开,后者告诉操作系统在启动过程中如何处理该文件。以下是一个实例,展示了如何将 swap 文件添加到 /etc/fstab 文件中:

/swapfile   swap    swap    defaults    0   0

添加完成后,我们可以执行下面的命令来测试 /etc/fstab 文件中的更改是否正确:

sudo swapon --all

如果输出了 /swapfile,请检查 /etc/fstab 文件中的相关行是否已正确添加。

4. 如何删除 swap 文件

如果你要删除上面创建的 swap 文件,则可以遵循以下的步骤:

4.1. 禁用 swap 文件

首先,我们需要禁用该文件,这样我们就可以安全地删除它。

sudo swapoff -v /swapfile

如果该文件是唯一的 swap 设备,则执行该命令将会回收所有 swap 空间。

4.2. 删除 swap 文件

我们可以使用以下命令删除该文件:

sudo rm /swapfile

4.3. 从 /etc/fstab 文件中删除 swap 文件

最后,我们需要在 /etc/fstab 文件中删除与该文件相关联的行。

打开文件后,找到对应的swap文件的行,并将其删除。

5. 总结

这篇文章介绍了如何在 CentOS 7 系统上添加、删除和扩展 swap 分区的步骤。总的来说,我们可以通过创建一个 swap 文件来轻松地增加或扩展 swap 分区,而无需增加更多的物理硬件。

操作系统标签