根据 Linux 中内存和 CPU 使用率最高的情况查找运行最多的进程
我记得有一次读到,高效的系统管理员都是懒惰的人。原因并不是他们没有做好自己的工作或浪费时间——主要是因为他们已经自动化了很多日常任务。因此,他们不必照管服务器,可以利用时间学习新技术并始终保持领先地位。
自动化任务的一部分是学习如何让脚本完成您必须自己做的事情。不断地将命令添加到您自己的知识库中也同样重要。
因此,在本文中,我们将分享一个技巧来找出 Linux 中哪些进程消耗了大量内存和 CPU 使用率。
也就是说,让我们开始吧。
检查 Linux 中按 RAM 或 CPU 使用率排序的热门进程
以下命令将以后代形式显示按 RAM 和 CPU 使用情况排序的顶级进程列表(如果您想查看完整列表,请删除管道和头):
ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head
样本输出
PID PPID CMD %MEM %CPU
2591 2113 /usr/lib/firefox/firefox 7.3 43.5
2549 2520 /usr/lib/virtualbox/Virtual 3.4 8.2
2288 1 /home/gacanepa/.dropbox-dis 1.4 0.3
1889 1543 c:\TeamViewer\TeamViewer.ex 1.0 0.2
2113 1801 /usr/bin/cinnamon 0.9 3.5
2254 2252 python /usr/bin/linuxmint/m 0.3 0.0
2245 1801 nautilus -n 0.3 0.1
1645 1595 /usr/bin/X :0 -audit 0 -aut 0.3 2.5
上述命令中使用的上述选项的简要说明。
ps 的 -o
(或 --format)选项允许您指定输出格式。我最喜欢的是显示进程的 PID (pid)、PPID (pid)、名称与进程关联的可执行文件 (cmd) 以及 RAM 和 CPU 利用率(分别为 %mem
和 %cpu
)。
此外,我使用 --sort
按 %mem
或 %cpu
排序。默认情况下,输出将以升序形式排序,但我个人更喜欢通过在排序条件前面添加减号来反转该顺序。
要将其他字段添加到输出,或更改排序条件,请参阅 ps
命令手册页中的输出格式控制部分。
不要错过: 在批处理模式下使用“top”查找按内存使用情况排名前 15 的进程
不要错过:查找 Linux 中前 10 个目录磁盘大小
概括
监控进程是 Linux 服务器系统管理员的众多任务之一,在本技巧中,我们研究了如何列出系统上的进程并根据 RAM 和 CPU 对它们进行排序> 使用 ps 实用程序以后代形式使用。