如何在Linux系统中增加swap空间

如何在Linux系统中增加swap空间

本头条号每天坚持更新原创干货技术文章,欢迎关注本头条号。

如需学习视频,请在微信搜索公众号“智传网优”直接开始自助视频学习

1. 前言

本文主要讲解如何在Linux系统上创建swap空间。

如何为Linux系统增加swap空间

swap空间是硬盘上的一个文件或分区,Linux操作系统用它来虚拟内存。当操作系统检测到物理内存已满,需要更多的内存才能正常运行应用程序时,它会使用swap空间并在里面存读数据。一般来说,swap是硬盘的一部分,用来扩展内存容量。Windows系统也有这样的机制,它叫页面文件。在Windows属性里可以设置大小,不过Windows系统页面文件只能基于文件,而Linux的swap空间可以基于文件,也可以基于分区。

如果没有swap空间,容易导致运行的程序崩溃。在这种情况下,设置swap空间是最好最简单的解决方法。

2. 为Linux系统增加swap空间

为Linux系统增加swap空间

按照以下步骤在您的Linux系统上创建并启用swap空间:

2.1 检查当前swap空间使用情况

执行以下命令检查当前是否有swap空间:

sudo swapon -s

如果没有任何信息输出,即可证明当前没有设置swap。

如果swap设置正确,可以看到以下输出。

文件名                类型      大小  已用  权限 /swapfile                                  file        2097148 109556  -2

检查当前swap空间使用情况

当然,你也可以使用free命令检查当前的swap使用情况:

free -m

使用free命令检查swap空间状态

2.2 创建swap文件

前面说过,Linux系统支持文件或者分区作为swap空间。目前最方便的方法是创建一个swap文件,而不是分区。在创建swap文件之前,请确保磁盘上有足够的空闲空间。一般来说,建议swap应该等于物理内存的2倍。

接下来创建swap文件,我以2G为例。

sudo fallocate -l 2G /swapfile chmod 600 /swapfile

通过运行以下命令,使其转换格式并挂载到Linux系统中:

sudo mkswap /swapfile sudo swapon /swapfile

2.3 设置开机自动挂载

执行上面的命令后,swap已被添加到您的系统中,操作系统在需要时会自动调用它。但重启后系统交换失效。

通过在/etc/fstab文件中附加以下内容,可以使其开机自动挂载。使用文本编辑器编辑fstab文件:

sudo vim /etc/fstab

在文件的最后增加以下内容:

/swapfile   none    swap    sw    0   0

保存退出,下次重启服务器时会自动挂载。

2.4 检查swap空间

执行以下命令检查swap空间:

sudo swapon -s free -m

检查swap空间

3. 更新Swappiness参数

接下来需要修改swappiness内核参数。它告诉Linux系统使用这个swap空间的频率。

编辑文件/etc/sysctl.conf

sudo vim /etc/sysctl.conf

在最后插入一行:

vm.swappiness=10

现在重载sysctl的配置文件:

sudo sysctl -p

4. 结论

通过本教程,您应该可以学习到如何在Linux系统中,为系统增加swap空间了吧。swap空间是Linux系统的组成部分。在安装Linux系统的时候,系统默认会自动分区,包括swap空间。如果swap空间不够用,可以考虑通过本文介绍的方法为系统增加swap空间。如果您有更好的方法,请留言。

如果喜欢本文,欢迎转发。本文已同步至博客站,尊重原创,转载时请在正文中附带以下链接:

https://www.linuxrumen.com/rmxx/1889.html

点击了解更多,快速查看更多的技术文章列表。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

Proudly powered by WordPress | Theme: HoneyWaves by SpiceThemes