Gestión de procesos (ps, top, kill)
Aprenda a listar, supervisar y finalizar procesos en ejecución en su sistema, comprendiendo sus identificadores y estados.
Gestión de procesos (ps, top, kill) es una lección gratuita de DevOps Bootcamp en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de DevOps Bootcamp, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de DevOps Bootcamp incluye 4 lecciones en total.
¿Qué son los procesos?
En Linux, un proceso es una instancia de un programa en ejecución. Cada comando que ejecuta y cada aplicación que abre se ejecutan como uno o más procesos.
- El sistema operativo administra los procesos.
- Comprenderlos es fundamental para supervisar el estado del sistema y solucionar problemas.
Listar procesos con `ps`
El comando ps (estado de los procesos) se utiliza para mostrar información sobre los procesos que se están ejecutando.
De forma predeterminada, muestra los procesos asociados a la sesión actual de su terminal.
Información detallada de los procesos (`ps aux`)
Para ver todos los procesos que se están ejecutando en el sistema, incluidos los iniciados por otros usuarios o por servicios del sistema, se utilizan opciones como aux o -ef.
ps aux: Muestra todos los procesos, incluidos los que no están asociados a una terminal.ps -ef: Muestra todos los procesos en un formato de lista completa.
Pruebe a ejecutar ps aux y redirigir su salida a head mediante una tubería para ver las primeras líneas:
ps aux | head -n 5Comprender la salida de `ps`
La salida de ps aux proporciona varias columnas clave:
- USER: El usuario propietario del proceso.
- PID: Identificador único del proceso.
- %CPU: Porcentaje de uso de la CPU.
- %MEM: Porcentaje de uso de la memoria.
- COMMAND: El comando que inició el proceso.
El PID es especialmente importante para gestionar procesos.
Supervisión en tiempo real con `top`
Mientras que ps proporciona una instantánea, el comando top ofrece una vista dinámica y en tiempo real de los procesos en ejecución.
Se actualiza continuamente y muestra los procesos que consumen más recursos.
Interpretar las métricas de `top`
Al ejecutar top, verá un resumen en la parte superior y una lista de procesos debajo.
- Load Average: Carga media del sistema durante 1, 5 y 15 minutos.
- Tasks: Total de procesos, procesos en ejecución, inactivos, detenidos y zombis.
- %Cpu(s): Utilización de la CPU.
- Mem: Memoria total, libre, utilizada y almacenada en búfer.
- Process List: Columnas similares a las de
ps, pero ordenadas constantemente (de forma predeterminada, por CPU).
Buscar procesos específicos
Puede combinar ps con grep para filtrar procesos específicos, por ejemplo, para buscar todos los procesos relacionados con «bash».
La parte grep -v grep ayuda a excluir el propio comando grep de los resultados.
ps aux | grep -i "bash" | grep -v "grep"Terminar procesos con `kill`
A veces un proceso puede bloquearse o consumir demasiados recursos. El comando kill permite enviar señales a los procesos, normalmente para terminarlos.
Necesita el PID del proceso que desea terminar.
Comprender las señales de `kill`
Al utilizar kill, está enviando una «señal» a un proceso. La señal predeterminada es SIGTERM (15), que solicita al proceso que se cierre correctamente.
kill PID: Envía SIGTERM.kill -9 PID: Envía SIGKILL. Se trata de una terminación forzada que el proceso no puede ignorar. ¡Utilícela con cuidado!
Puede enumerar todas las señales disponibles con kill -l:
kill -lEjemplo práctico de `kill`
Vamos a practicar cómo terminar un proceso sencillo en segundo plano. Iniciaremos un comando sleep en segundo plano, buscaremos su PID y, a continuación, podrá utilizar kill para detenerlo.
Ejecute el código siguiente. Cuando termine, verá el PID del proceso sleep. Después, escriba manualmente en su terminal kill <PID> (sustituya <PID> por el número real) para detenerlo.
# Step 1: Start a dummy process in the background
sleep 300 &
echo "Sleep process started. Now finding its PID..."
# Step 2: Find its Process ID (PID)
# Look for the 'sleep' process in the output
ps aux | grep -i "sleep" | grep -v "grep"
# Step 3: To kill it, manually type 'kill <PID>'
# Example: kill 12345Comprobación rápida: gestión de procesos
Ha aprendido a listar, supervisar y terminar procesos. Vamos a comprobar lo que ha aprendido.
Repaso: gestión de procesos
¡Buen trabajo! En esta lección ha aprendido los comandos esenciales de Linux para gestionar procesos:
ps: Permite listar procesos y obtener una instantánea de su estado.top: Permite supervisar en tiempo real y de forma dinámica los procesos del sistema y el uso de recursos.kill: Permite enviar señales a los procesos, principalmente para terminarlos correctamente (SIGTERM) o de forma forzada (SIGKILL).
Estas herramientas son fundamentales para la administración de sistemas y la resolución de problemas.
Preguntas frecuentes
¿La lección «Gestión de procesos (ps, top, kill)» es gratis?
Sí — el texto completo de «Gestión de procesos (ps, top, kill)» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de DevOps Bootcamp, actualiza a CoddyKit PRO. El curso de DevOps Bootcamp incluye 4 lecciones en total.
¿Qué aprenderé en «Gestión de procesos (ps, top, kill)»?
Aprenda a listar, supervisar y finalizar procesos en ejecución en su sistema, comprendiendo sus identificadores y estados. Practicas DevOps Bootcamp con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar DevOps Bootcamp?
No se requiere experiencia previa. DevOps Bootcamp en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.
¿Cuánto tiempo toma la lección «Gestión de procesos (ps, top, kill)»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de DevOps Bootcamp?
Sí. Cada lección de DevOps Bootcamp incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Gestión de procesos (ps, top, kill)
- Redirección de entrada y salida (>, >>, <)
- Tuberías de comandos (|)
- Tareas en segundo plano y control de trabajos