Linux如何释放swap内存

一般情况下系统是不会用到swap分区的,一般物理内存使用在90%以上(默认是这个数,可以自行在/etc/sysctl.conf里设置vm.swappiness参数),
但有的时候,内存会被缓存占用,导致系统开始使用swap空间,此时就需要清理下swap了,这里先说下vm.swappiness参数,设置成vm.swappiness=10:就是说当内存使用90%以上才会使用swap空间。
登录相关服务器通过free命令发现确实使用了很大一部分,但mem确还有很多,这说明swap在服务器运行过程中使用后并没有释放,下面我们对swap进行释放操作

第一步:先执行sync命令
sync

第二步:可选,如果仅仅是清理swap的话,这一步可以不执行,如果执行,在第三步关闭swap时会使用更长的时间
echo 3 > /proc/sys/vm/drop_caches
此指令输入立即生效,意在释放所有缓存。

第三步:关闭swap,这一步因为是后台在一点一点的释放,如果配置的swap超大,这里就等待得超久一些
swapoff -a

第四步:再开启,如果不想开启swap,这里可以不操作,永久生效还需要删除/etc/fstab里的swap那条配置
swapon -a

分享到:
关键词:Linux运维

网友留言(0 条)

发表评论