歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux技術 >> Linux下swap耗盡該怎麼辦?如何釋放swap?

Linux下swap耗盡該怎麼辦?如何釋放swap?

日期:2017/3/1 17:50:03   编辑:Linux技術

Linux下交換內存耗盡如何查看及如何處理。以及查看shell腳本描述。交換內存不足時,啟動應用時會報內存不足。

1、啟動應用時報內存不足,直接Linux命令行top查看下。swap used100%,0free。

2、reboot服務器能有效的釋放swap,可是很多情況下是不能重啟服務器的。這時就要弄明白是什麼占著內存。查看下/proc目錄下內容,發現很多數字命名的目錄,這些就是Linux的進程了。

3、要讓進程釋放swap的方法只有kill掉該進程了。寫個腳本來查看具體是哪些進程占著內存啦。

一、對/proc目錄下所有以數字為名的目錄進行遍歷

二、1目錄是根進程重啟會導致系統重啟,所以直接排除掉。

三、算出每個進程占用內存的大小,然後按照大小排序

四、輸出內存占用大於1MB的進程

4、將運行結果保存到swap.log文件中

5、查看swap.log.10325這個進程內存占用最多有130幾M。

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

注意事項:proc目錄下1目錄不能直接kill掉。

Copyright © Linux教程網 All Rights Reserved