Encuentre los mejores procesos en ejecución por el uso más alto de memoria y CPU en Linux


Recuerdo una vez que leí que los administradores de sistemas eficientes son personas perezosas. La razón no es que no estén haciendo su trabajo o perdiendo el tiempo, sino que se deben principalmente a que han automatizado gran parte de sus tareas rutinarias. Por lo tanto, no tienen que cuidar a sus servidores y pueden usar su tiempo para aprender nuevas tecnologías y mantenerse siempre en la cima de su juego.

Parte de la automatización de sus tareas, es aprender cómo hacer que un script haga lo que tendría que hacer usted mismo de lo contrario. Agregar comandos continuamente a su propia base de conocimientos es igual de importante.

Por esa razón, en este artículo compartiremos un truco para descubrir qué procesos consumen mucha memoria y la utilización de la CPU en Linux.

Dicho esto, vamos a sumergirnos y empezar.

Compruebe los procesos principales ordenados por RAM o uso de CPU en Linux

El siguiente comando mostrará la lista de procesos principales ordenados por RAM y el uso de la CPU en forma descendiente (eliminar canalización y encabezado si desea ver la lista completa):

# 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

Breve explicación de las opciones anteriores utilizadas en el comando anterior.

La opción -o (o –format ) de ps le permite especificar el formato de salida. Uno de mis favoritos es mostrar los procesos PID ( pid ), PPIDs ( pid ), el nombre del archivo ejecutable asociado con el proceso ( cmd ), y la utilización de RAM y CPU (% mem y % cpu , respectivamente).

Además, uso --sort para ordenar por % mem o % cpu . De forma predeterminada, la salida se ordenará en forma ascendente, pero personalmente prefiero revertir ese orden agregando un signo menos delante de los criterios de clasificación.

Para agregar otros campos a la salida o cambiar los criterios de clasificación, consulte la sección CONTROL DE FORMATO DE SALIDA en la página del comando man de ps .

Resumen

El proceso de monitoreo es una de las numerosas tareas de un administrador de sistema de servidor Linux. En esta sugerencia, observamos cómo se enumeran los procesos en su sistema y se clasifican de acuerdo con RAM y CPU usar en forma descendiente usando la utilidad ps .