swap分区是磁盘上的一块分区,用于在系统内存吃紧时暂存内存中一部分数据的。像安装Oracle数据库的时候,Oracle就需要一定空间的swap,建议大小为2G或以上。
首先了解一下系统swap使用情况
free -h 或者 swapon -s
和系统磁盘使用情况
df -h
1、创建swap分区
创建swap可以使用磁盘划分出来的一个分区或者直接将一定大小的文件作为swap分区。
若是使用分区,则需使用分区工具划分出一定大小的分区,用于swap;若是使用文件,则可利用dd命令创建所需大小的文件,然后用该文件创建swap分区。
例如,我们若要创建2G的swap分区,首先创建2G大小的文件
dd if=/dev/zero of=/var/swapfile bs=1024 count=1024
然后利用mkswap命令创建swap
mkswap /var/swapfile
接着就可以挂在并激活swap分区了
swapon /var/swapfile
注:建议/var/swapfile文件权限设置为600
最后配置自动挂在swap分区
echo "/var/swapfile swap swap defaults 0 0" >> /etc/fstab
或者
echo "swapon /var/swapfle" >> /etc/rc.local
chmod +x /etc/rc.local
2、删除swap分区
#先停止swap分区
swapoff /var/swapfile
#删除swap分区文件
rm -rf /var/swapfile
#最后取消自动挂在配置,即删除/etc/fstab或者/etc/rc.local中添加的内容
3、更改swap配置
swappiness值(0-100)代表了系统对swap分区的依赖程度,值越高则越倾向于使用swap分区。一般10-60为宜,固态盘可以偏高些。
cat /proc/sys/vm/swappiness
#修改swappiness的值,譬如修改为50
sysctl vm.swappiness=50
#永久生效
echo "vm.swappiness=50" >> /etc/sysctl.conf