网站搜索

根据 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 服务器系统管理员的众多任务之一,在本技巧中,我们研究了如何列出系统上的进程并根据 RAMCPU 对它们进行排序> 使用 ps 实用程序以后代形式使用。