Linux强制将进程常驻swap,如何解决Linux系统Swap耗尽问题

我们在使用Linux的过程中,有时会遇到交换内存swap耗尽的情况,面对这个问题,我们该怎么解决呢?现在小编就和大家一起分享下这个问题的解决方法。

解决方法:

1、启动应用时报内存不足,直接Linux命令行top查看下。swap used100%,0free。

a4673942b4851213da959f73c3f26804.png

2、reboot服务器能有效的释放swap,可是很多情况下是不能重启服务器的。这时就要弄明白是什么占着内存。查看下/proc目录下内容,发现很多数字命名的目录,这些就是Linux的进程了。

9b8239921b620e121ddf765b01422c64.png

3、要让进程释放swap的方法只有kill掉该进程了。写个脚本来查看具体是哪些进程占着内存啦。

一、对/proc目录下所有以数字为名的目录进行遍历

二、1目录是根进程重启会导致系统重启,所以直接排除掉。

三、算出每个进程占用内存的大小,然后按照大小排序

四、输出内存占用大于1MB的进程

571e8eef2df835ef294d36679a03789b.png

4、将运行结果保存到swap.log文件中

8ff33038dc00d8f811be35980a7d24ec.png

5、查看swap.log.10325这个进程内存占用最多有130几M。

d17e751a4f404cbf76d9724674d11b99.png

6、直接kill掉,然后再top查看。ok,swap一下子释放了很多,搞定。

a12ac6369f63ce911ee1753d38326514.png

注意事项:proc目录下1目录不能直接kill掉。

以上就是Linux系统交换内存swap耗尽的解决方法了,有遇到这个问题的用户,可以参考下上面的解决方法,希望对你的问题的解决有所帮助。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值