你的服务器是否出现了内存不够用的情况?

你是否担心服务器内存太少导致内存溢出而使得服务器崩溃?

如果你有上述问题,那么就跟着教程走,带你解决烦恼

首先我们先检查一下内存的分配情况

free -m

返回结果中men是物理内存,swap是虚拟内存,total是总大小,used是使用量,free是剩余量

我们要根据实际情况来配置配置虚拟内存的大小,一般为物理内存:虚拟内存=1:2

如果服务器已经有虚拟内存但是想重新配置虚拟内存的,请先翻到文章末尾查看如何删除虚拟内存

进入共享根目录

cd /

创建一个配置虚拟内存的文件夹

sudo mkdir swap

进入虚拟内存配置文件夹

cd swap/

创建虚拟内存配置文件并设置虚拟内存大小,单位设为1,则虚拟内存的单位大小就是b;单位设为1024,则虚拟内存单位大小为kb;单位设为1048576则虚拟内存单位大小为mb;单位设为1073741824,则虚拟内存单位大小为gb。

sudo dd if=/dev/zero of=swapfile bs=内存单位 count=内存大小

例如我想配置4g虚拟内存,可以这样写

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

虚拟内存大小设置完成后就需要转换配置文件类型

sudo mkswap swapfile

配置完成后我们就需要启用虚拟内存

sudo swapon swapfile

再次检查内存分配情况

free -m

这时我们就可以看到虚拟内存已经启用成功了

但是如果我们重启后就会发现刚刚配置好的虚拟内存又消失了,又需要再次输入一遍sudo swapon swapfile

为了解决这种情况,我们就要设置虚拟内存开机加载(虚拟内存持久化)

安装vim编辑器

sudo apt install vim

使用vim打开系统静态信息信息文件,修改其内容可以做到重启时虚拟内存被加载

sudo vim /etc/fstab

进入vim后按下【i】键进入编辑模式,在末位置按下【enter】键创建新的一行然后输入

/swap/swapfile swap swap defaults 0 0

然后按【esc】键退出编辑模式之按下【:】键进入命令模式,最后输入wq保存并退出

:wq

这样我们的服务器虚拟内存在开机时就会被加载

如果你想去掉虚拟内存或重新配置虚拟内存,可通过下面的两段命令进入虚拟内存配置文件夹并删除虚拟内存

cd /swap/
sudo swapoff swapfile