El comando ps
en Linux es una herramienta esencial para la gestión y supervisión de procesos. Permite a los usuarios ver información sobre los procesos en ejecución en el sistema. A continuación, exploraremos sus opciones y proporcionaremos ejemplos prácticos para comprender su uso.
¿Qué es el comando ps
?
ps
(abreviatura de "process status") muestra una instantánea de los procesos actuales en el sistema. A diferencia de herramientas como top
o htop
, que proporcionan una vista en tiempo real, ps
muestra una vista estática que refleja el estado de los procesos en el momento de la ejecución del comando.
Uso Básico
El uso más básico de ps
simplemente muestra los procesos asociados con la terminal actual del usuario.
ps
Este comando genera una salida similar a la siguiente:
PID TTY TIME CMD
1440 pts/0 00:00:00 bash
1789 pts/0 00:00:00 ps
- PID: Identificador de proceso.
- TTY: Terminal asociada al proceso.
- TIME: Tiempo de CPU consumido por el proceso.
- CMD: Comando que inició el proceso.
Opciones Comunes de ps
Mostrar Todos los Procesos
Para ver todos los procesos en el sistema, se usa la opción -e
o -A
:
ps -e
o
ps -A
Mostrar Procesos con Formato Detallado
La opción -f
proporciona una vista más detallada:
ps -ef
La salida incluye columnas adicionales como el usuario que inició el proceso (UID), el proceso padre (PPID) y el momento de inicio del proceso (STIME).
Filtrar Procesos por Usuario
Para listar los procesos de un usuario específico, se utiliza la opción -u
seguida del nombre de usuario:
ps -u nombre_usuario
Buscar Procesos por Nombre
Para buscar procesos por el nombre del comando que los inició, ps
se combina con grep
:
ps -ef | grep nombre_proceso
Ejemplo Práctico
Supongamos que queremos encontrar todos los procesos relacionados con ssh
:
ps -ef | grep ssh
La salida puede ser similar a:
root 1024 1 0 10:00 ? 00:00:00 /usr/sbin/sshd -D
user 2030 2020 0 10:10 ? 00:00:00 ssh user@host
Formatos de Salida Personalizados
ps
permite personalizar las columnas de la salida usando la opción -o
seguida de una lista de campos:
ps -e -o pid,uname,pcpu,pmem,comm
Esto mostrará los procesos con las columnas PID, nombre de usuario, porcentaje de CPU, porcentaje de memoria y el comando.
Ejemplos de Uso con sudo
sudo
permite ejecutar ps
con privilegios elevados, lo cual es útil para ver procesos que de otro modo estarían restringidos:
Ver Procesos de Todos los Usuarios
sudo ps -ef
Esto muestra todos los procesos en el sistema, incluidos aquellos iniciados por otros usuarios, como servicios del sistema.
Ver Procesos Específicos del Sistema
Para ver procesos específicos del sistema o servicios críticos que requieren privilegios de superusuario:
sudo ps -u root -o pid,cmd,%cpu,%mem
Conclusión
El comando ps
es una herramienta poderosa y flexible para la supervisión de procesos en Linux. Permite a los usuarios obtener una variedad de información detallada sobre los procesos en ejecución, lo cual es esencial para la administración y resolución de problemas en el sistema. Con las opciones y ejemplos proporcionados, puedes empezar a usar ps
de manera efectiva para gestionar tu entorno Linux.