阿里云Centos7上添加swap分区

我的服务器是阿里云的服务器Centos7。CPU为2C,内存4G。平时访问速度也还可以,内存是少是少了点,但基本还是够用。今天用top看了cpu及内存使用情况,发现free的内存已经只有60多M了,发现阿里云的centos7默认居然没有swap空间。赶紧加入swap。

1、创建用于交换分区的文件

dd if=/dev/zero of=/mnt/swap bs=1M count=1024

bs=1M 表示已1M为分配单位 count=1024最大是1024M 因为我的云服务器最大内存是1024,一般建议swap交换分区是内存的1~2倍

2、设置交换分区文件

mkswap /mnt/swap

3、启用交换分区文件

swapon /mnt/swap

如果在/etc/rc.local中有swapoff -a 需要修改为swapon -a

4、设置开机时自启用swap分区

需要修改文件/etc/fstab中的swap行。

添加

/mnt/swap swap swap defaults 0 0

5、执行free -m命令查看效果

注意有时候虽然配置了swap分区但是一直没有用到swap分区,需要设置swappiness的值。

cat /proc/sys/vm/swappiness

swappiness=0的时候表示最大限度使用物理内存,然后才是 swap空间,swappiness=100的时候表示积极的使用swap分区,并且把内存上的数据及时的搬运到swap空间里面。linux的基本默认设置为60

我这里设置的是20,因为物理内存比较小,如果大量使用swap空间影响IO性能。还是要充分压榨物理内存。

临时调整方式:

sysctl vm.swappiness=20

要想永久调整的话,需要将

需要在/etc/sysctl.conf修改,加上:

vm.swappiness = 20

增加swap分区后,并设置好swappiness的参数后,可以看到正常使用到了swap分区。

参考博客:

https://jingyan.baidu.com/article/3a2f7c2efb76f726aed6115f.html
https://blog.csdn.net/qq_32532853/article/details/79180545?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-6.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-6.nonecase
https://www.bbsmax.com/A/rV57Ee9qzP/
https://www.58ssl.com/yunfuwuqi/1774.html
http://blog.ishareread.com/post/2
原文地址:https://www.cnblogs.com/nshgo/p/12881112.html