在添加swap分区之前我们可以了解下当前系统swap是否存在以及使用情况,可用:
free -h
或 swapon -s
swap total大小不为0则说明开启了swap
了解硬盘使用情况可用:df -hal
(一般/dev/vsdb或者/dev/vsdb1又或者/dev/xsdb等为挂载数据硬盘)
- 添加swap分区
使用dd命令创建名为swap 的swap交换文件(文件名和目录任意):dd if=/dev/zero of=/www/swap bs=1024 count=2097152
count是swap分区的大小 这里为2g 计算方式 就是把2G转为KB 计算方式102410242 就是2G大小了
执行完毕后,对交换文件格式化并转换为swap分区:mkswap /www/swap
- 挂载并激活分区:
swapon /www/swap
执行以上命令可能会出现:“不安全的权限 0644,建议使用 0600”类似提示,不要紧张,实际上已经激活了,可以忽略提示,也可以听从系统的建议修改下权限:
chmod -R 0600 /www/swap
这时候可以用 free -h
或 swapon -s
命令查看新swap分区是否正常添加并激活使用。
- 修改 fstab 配置,设置开机自动挂载该分区:
vim /etc/fstab
或者vi /etc/fstab
在fstab文件末尾追加如下内容后:wq!保存即可:/www/swap swap swap defaults 0 0
或不进入vi、vim模式直接对fstab进行echo追加输入命令:echo "/www/swap swap swap defaults 0 0" >> /etc/fstab
重启服务器 在输入free -h
或 swapon -s
命令查看新swap分区是否正常添加并激活使用。
- 删除某swap分区
先停止正在使用swap分区:
swapoff /www/swap
删除swap分区文件
rm -rf /www/swap
删除或注释掉我们之前在fstab文件里追加的开机自动挂载配置内容:
vi /etc/fstab
#/www/swap swap swap defaults 0 0
- 更改Swap配置(进阶级)
swappiness值(0-100),系统对swap分区的依赖程度,越高则越倾向于使用swap分区。
当然,高度依赖swap会造成物理内存远未使用完,就使用swap分区,我们知道swap分区性能远不如物理内存,这反而降低了系统性能,违背了我们创建swap分区的初衷。
我们希望在物理内存即将满荷时再使用swap,这就决定了swappiness值一般为10-60为宜,固态硬盘可以偏高些。
查看当前的swappiness数值:
cat /proc/sys/vm/swappiness
修改swappiness值,这里以50为例。
sysctl vm.swappiness=50
若希望vm.swappiness=50永久生效,则需要修改sysctl配置文件,直接echo追加配置内容,重启系统后即可生效:
echo "vm.swappiness = 50" >> /etc/sysctl.conf
本文共 525 个字数,平均阅读时长 ≈ 2分钟