VPS 厂商提供的主机配置各有差异,仅作为代理服务器使用的话,一般会选择较低配置的主机,如果出现内存不够用的情况也不用着急,可以适当增加交换分区空间,达到提升系统性能的目的。
当操作系统不能将数据写入内存的时候,它会将数据写入磁盘的特定区域用于缓存数据,这个区域就是交换分区。本文将以CentOS 7系统为例,详细讲解如何增加系统交换分区空间。
1] 前提条件
想要顺利增加交换区分空间,那么拥有root权限是必不可少的,方便起见可以直接使用root账户来执行相关命令。
然后,可以使用如下命令来查看一下系统当前的交换分区情况:
# swapon --show
可能的输出如下所示:
图.1 使用swapon命令查看交换分区信息
如果没有得到输出结果或者觉得交换分区不够,则依照下面的步骤增加。
2] 创建交换分区文件
本教程将额外创建一个512MB的交换分区,如果想要使用其他值,则修改命令中”512″部分即可:
# dd if=/dev/zero of=/swapfile bs=1024 count=512k
命令的作用是创建一个”/swapfile”文件,大小为512MB,典型输出如下:
图.2 使用dd命令创建交换分区文件
文件创建成功后,使用以下命令将该文件分成交换分区:
# chmod 600 /swapfile # mkswap /swapfile # swapon /swapfile
输出结果如下:
图.3 将交换文件转换成交换分区供系统使用
现在再次使用swapon命令查看系统交换分区情况,就会发现交换分区大小发生了变化:
# swapon --show # free -m
可以看到,交换分区的容量的确发生了变化,并且交换文件的来源也明确显示出来:
图.4 查看交换区域容量变化
从图.4 可以看出,交换区域包含了两部分,其中一个为磁盘分区”/dev/dm-1″,另一个为磁盘文件”/swapfile”。
3] 修改交换区域参数
上面的步骤只会临时将文件转换成交换区域,系统重新启动后,该交换区域就会消失。为了让交换区域容量一直有效,就需要修改系统启动参数。使用如下命令将磁盘文件设置为开机生效:
# echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
这样,交换区域的容量变化一直生效了,达到了增加交换分区的目的。
4] 卸载交换文件
交换区域并不是只能增加不能减少的,如果交换区域容量够用,而磁盘空间不足时,可以让交换文件占用的磁盘空间释放出来。首先使用如下命令将交换文件释放:
# swapoff -v /swapfile
之后删除”/etc/fstab”文件中”/swapfile swap swap defaults 0 0″部分的内容,最后将”/swapfile”文件删除,就达到了卸载交换文件的效果。
以上就是利用磁盘文件增加交换分区的全部内容。