linux在内存不足的时候会用到swap,对于内存有限的vps,swap尤其重要,如果vps硬盘是读写速度快的SSD,相对于机械硬盘的来说,性能提升还是很大的。部分vps厂商如:digitalocean,默认关闭了swap,会导致部分要求系统有swap的软件,如mysql无法成功启动。同时为了“增大内存”并提升系统,也要开启swap。

swap可以是磁盘分区,也可以是文件,之前写过一篇使用lvm时调整swap分区的文章:kali调整swap分区
没有用lvm时增加swap文件就非常简单了,检查swap状态:

swapon -s  或者free -m

创建swap文件:

dd if=/dev/zero of=/opt/swapfile bs=1024 count=512k

会在/opt/下创建一个512M的swap文件,大小按需调整。
创建虚拟内存:

mkswap /opt/swapfile

启用swap文件:

swapon /opt/swapfile

开机挂载swap文件:

vim /etc/fstab

加入:


/opt/swapfile          swap            swap    defaults        0 0

修改权限,只允许root读写:

chown root.root /opt/swapfile
chmod 0600 /opt/swapfile

当内存还有很多空余时使用swap会影响性能,所以要调整swap分区的使用频率:

cat /proc/sys/vm/swappiness

swappiness值是从0到100,代表内核的使用频率,默认是60。可以通过sysctl来调整:

vim /etc/sysctl.conf

加入:

 vm.swappiness=10

使配置生效:

sysctl -p

参考文章:
https://www.digitalocean.com/community/tutorials/how-to-add-swap-on-centos-6