欢迎,来自IP地址为:18.97.14.80 的朋友
本文将介绍快速查找Linux主机内存消耗进程的方法,主要包括以下四种。
1] 使用ps命令快速查找内存消耗大的进程
使用如下所示的命令方式,可以很方便的定位内存使用量大的进程:
ps -eo pid,ppid,cmd,%mem --sort=-%mem | head
典型输出如下类似以下内容:
PID PPID CMD %MEM 1103 909 /usr/libexec/mysqld --based 17.1 497 1 /usr/bin/python -Es /usr/sb 7.1 881 880 php-fpm: pool www 3.7 838 1 /usr/bin/python -Es /usr/sb 3.7 658 559 /sbin/dhclient -d -q -sf /u 3.7 25475 880 php-fpm: pool www 2.9 882 880 php-fpm: pool www 2.6 559 1 /usr/sbin/NetworkManager -- 2.3 25013 841 sshd: root@pts/1 1.8
这条命令将输出内存消耗排在前列的进程,方便进行相关操作。
2] 持续监视Linux系统的内存使用情况
如果你需要持续监视内存的使用情况,就需要使用如下命令来完成:
watch "ps -eo pid,ppid,cmd,%mem --sort=-%mem | head"
这条命令实际上就是使用了watch命令,每隔一定时间将上一条命令的结果显示出来,典型的输出如以下所示:
如果不需要监视了,可以按ctrl+c退出。
3] 使用top命令查看内存使用情况
同样,也可以使用top命令来查看内存使用情况,命令示例如下:
top -o %MEM -b -n 1|head -n 12|tail -6
典型输出如下所示:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1103 mysql 20 0 971248 85296 9384 S 0.0 17.1 0:40.12 mysqld 497 root 20 0 338536 35428 8956 S 0.0 7.1 0:02.74 firewalld 881 nginx 20 0 165692 18760 7688 S 0.0 3.8 0:01.68 php-fpm 838 root 20 0 562400 18484 7792 S 0.0 3.7 0:14.14 tuned 658 root 20 0 113384 18468 5984 S 0.0 3.7 0:00.04 dhclient
4] 使用htop命令查看内存情
htop是一个专门用于系统运行情况监测的工具,可以使用yum install htop进行安装,安装完成后,直接运行htop命令,就会得到以下所示的系统资源详细使用情况:这条命令其实是一个功能很强大的工具软件,安装完成后,就可以使用,按F10键退出程序。