微魔在之前的文章里面提到过如果内存不够的话,可以用swap文件/分区在一定程度上缓解(注:swap只是硬盘上的分区或文件,速度上无法和内存比拟,即使SSD也不行,所以,如果实在不行,增加内存才是王道),当时文章使用的是DD命令创建swap文件,今天微魔刚好看到有人讨论了其他方法,且更加便捷(无需等待),所以,今天就分享出来。
本文是在CentOS 7下试验,命令在Debian和Ubuntu上也是通用的
1. 查看swap情况
free -m
如果返回的第二行,swap为0,那么可以进行下一步工作了
2. 创建swap文件,至于大小,我这里用的是4G,一般来讲内存的2倍为宜
sudo fallocate -l 4G /swapfile
3. 查看swap文件
ls -lh /swapfile
如果返回如下信息,就表明创建成功了
-rw-r--r-- 1 root root 4.0G Mar 13 13:19 /swapfile
4. 修改权限,使得其他程序能够使用Swap
sudo chmod 600 /swapfile
5. swap文件生效
sudo mkswap /swapfile sudo swapon /swapfile
使用如下命令,能够返回信息,则表明成功
sudo swapon -s
6. 经过上述步骤,如果重启后,swap又会失效,要想永久挂载,则需要在/etc/fstab文件中,加入如下内容
/swapfile none swap sw 0 0
7. 优化swap,实际上也是增加swap的优先度,越接近于100,则系统越倾向于使用swap,一般桌面系统推荐是60,VPS系统0,这里示例是修改成10
sudo sysctl vm.swappiness=10
若想要重启后依旧生效,需要修改/etc/sysctl.conf文件,加入如下内容
vm.swappiness=10
1 条评论