Linux实例SWAP分区的配置和常见问题处理
SWAP分区介绍
在Linux系统中的SWAP(交换分区),类似于Windows系统的虚拟内存。系统会把一部分硬盘空间虚拟成内存使用,将系统内非活动内存换页到SWAP,以提高系统可用内存。
SWAP配置介绍
1. 以root用户身份,通过远程连接登录Linux实例,执行以下命令,创建用于交换分区的文件
dd if=/dev/zero of=/mnt/swap bs=block_size count=number_of_block
2. 执行以下命令,设置并启用交换分区文件
mkswap /mnt/swap swapon /mnt/swap


注:如果在/etc/rc.local中有swapoff -a需要修改为swapon -a。
3. 设置开机自启用SWAP分区,修改/etc/fstab文件,添加如下内容
/mnt/swap swap swap defaults 0 0

4. 执行以下命令,临时修改swappiness参数值,此处以空闲内存少于10%时才使用SWAP分区为例。
提示:在Linux系统中,可以通过查看/proc/sys/vm/swappiness内容的值来确定系统对SWAP分区的使用原则。当 swappiness内容的值为0时,表示最大限度地使用物理内存,物理内存使用完毕后,才会使用SWAP分区。当swappiness内容的值为100时,表示积极地使用SWAP分区,并且把内存中的数据及时地置换到SWAP分区。查看修改前为0,需要在物理内存使用完毕后才会使用SWAP分区。
echo 10 >/proc/sys/vm/swappiness

若需要永久修改此配置,在系统重启之后也生效的话,通过vim命令编辑/etc/sysctl.conf文件,并增加以下内容。
vm.swappiness = 10 sysctl -p
关闭SWAP分区
当系统出现内存不足时,开启SWAP可能会因频繁换页操作,导致IO性能下降,可以采用以下方法,关闭SWAP分区。
swapoff /mnt/swap

常见问题描述
使用mkswap创建SWAP时出现类似如下报错信息:

问题原因
指定的SWAP分区文件太小,SWAP分区文件至少应该大于40KB。
解决方法
重新生成更大的文件格式化为SWAP即可。
征途漫漫,惟有奋斗!
浙公网安备 33010602011771号