linux查看和释放swap内存



一、查看swap内存被哪些进程占用(输出单位是MByte)

for i in `cd /proc;ls |grep "^[0-9]"|awk ' $0 >100'` ;do awk '/Swap:/{a=a+$2}END{print '"$i"',a/1024"M"}' /proc/$i/smaps ;done 2>&1 |sort -k2nr |head


二、如何释放swap内存

法1,重启占用swap的进程

法2,关闭swap分区(有时候并不能查看到哪些进程占用swap,则需要先关闭swap分区再开启)


三、关闭swap分区注意事项和步骤

1,确保系统空闲内存大于swap已用内存

2,可以先清理内存cache,空出足够内存(echo "1" > /proc/sys/vm/drop_caches)

3,关闭swap分区(swapoff -a),这个过程需要等待

4,swap分区释放后,恢复swap分区(swapon -a)

5,恢复内存cache的设置(echo "0" > /proc/sys/vm/drop_caches)


原文出自:http://blog.csdn.net/daiyudong2020/article/details/78572306


End;

你可能感兴趣的:(linux)