我們在使用Linux的過程中,有時會遇到交換內存swap耗盡的情況,面對這個問題,我們該怎麼解決呢?現在小編就和大家一起分享下這個問題的解決方法。
解決方法:
1、啟動應用時報內存不足,直接Linux命令行top查看下。swap used100%,0free。
2、reboot服務器能有效的釋放swap,可是很多情況下是不能重啟服務器的。這時就要弄明白是什麼占著內存。查看下/proc目錄下內容,發現很多數字命名的目錄,這些就是Linux的進程了。
3、要讓進程釋放swap的方法只有kill掉該進程了。寫個腳本來查看具體是哪些進程占著內存啦。
一、對/proc目錄下所有以數字為名的目錄進行遍歷
二、1目錄是根進程重啟會導致系統重啟,所以直接排除掉。
三、算出每個進程占用內存的大小,然後按照大小排序
四、輸出內存占用大於1MB的進程
上一頁12下一頁共2頁
4、將運行結果保存到swap.log文件中
5、查看swap.log.10325這個進程內存占用最多有130幾M。
6、直接kill掉,然後再top查看。ok,swap一下子釋放了很多,搞定。
注意事項:proc目錄下1目錄不能直接kill掉。
以上就是Linux系統交換內存swap耗盡的解決方法了,有遇到這個問題的用戶,可以參考下上面的解決方法,希望對你的問題的解決有所幫助。
上一頁12 下一頁共2頁