Presento un comando utilizando ps
, junto con otras herramientas básicas como sort
y uniq
, que permite identificar y listar rápidamente todo el software (programas) en ejecución en un sistema GUN/Linux.
En un artículo anterior explicaba cómo ocultar los hilos del kernel en la salida de ps
, gracias a esto es posible "limpiar" un poco la salida de la herramienta ps
. Luego simplemente ocultando el encabezado (el cual contiene los nombres de cada columna) y utilizando un formato personalizado (-o
) que muestre sólo el nombre del programa (comm
), es posible ordenar la salida y eliminar repetidos:
ps --no-headers -o comm --ppid 2 -N | sort | uniq
Por ejemplo en un servidor Debian, el resultado es el siguiente:
root@debian:~# ps --no-headers -o comm --ppid 2 -N | sort | uniq atop atopacctd bacula-fd bash chronyd cron dbus-daemon exim4 getty init kthreadd lvmetad nginx php-fpm postgres ps rsyslogd sh sort sshd startpar su sudo systemd-udevd uniq vmtoolsd
Se observa que este sistema tiene PostgreSQL, PHP, Nginx y Bacula, entre otro software en ejecución.
Referencias
man ps
man sort
man uniq