linux系统查找占用swap空间最多的10个进程
linux系统查找占用swap空间最多的10个进程
(1)ps -eo pid,user,comm,pmem,vsz --sort=-vsz | head -n 11
(2)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 2>/dev/null;done | sort -k2nr | head -10
通过pid查看对应的服务
命令:netstat -nap | grep 进程pid
或 ps aux | grep pid 查看什么进程占用swap,通知业务清理
pid
: 进程ID。ppid
: 父进程ID。user
: 进程所有者。comm
: 进程的命令名。%mem
: 进程的物理内存使用率。%cpu
: 进程的CPU使用率。vsz
: 进程的虚拟内存大小(以KB为单位)。rss
: 进程的驻留内存大小(以KB为单位)。stime
: 进程的启动时间。etime
: 进程的累计运行时间。
(3)显示进程的PID、用户、命令名、物理内存使用率和虚拟内存大小
ps -eo pid,user,comm,%mem,vsz
(4)查看内存使用率前10的进程
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head
相当于
ps aux|head -1
ps aux|grep -v PID|sort -rn -k +3|head