Finalizar procesos por nombre e ID

LinuxBeginner
Practicar Ahora

Introducción

En este desafío, aprenderás a finalizar procesos en Linux utilizando diferentes comandos. La gestión de procesos es una habilidad fundamental para cualquier administrador o usuario de Linux, ya que permite controlar las aplicaciones y servicios en ejecución de manera efectiva.

Objetivos a alcanzar

  • kill: Enviar una señal a un proceso.
  • killall: Finalizar todos los procesos por su nombre.
  • pkill: Finalizar todos los procesos por su nombre.
Este es un Desafío (Challenge), que a diferencia de un Laboratorio Guiado, requiere que intentes completar la tarea de forma independiente en lugar de seguir pasos detallados. Los desafíos suelen tener cierta dificultad. Si te resulta complicado, puedes consultar con Labby o revisar la solución. Los datos históricos muestran que este es un desafío de nivel principiante con una tasa de aprobación del 83%. Ha recibido una tasa de valoraciones positivas del 89% por parte de los estudiantes.

Enviar señal a un proceso

En Linux, cada programa o servicio en ejecución se representa como un proceso con un Identificador de Proceso (PID) único. El comando kill permite enviar señales a los procesos, siendo la señal más común la que se utiliza para finalizarlos.

Hemos ejecutado un script en segundo plano que escribe continuamente en un archivo de registro. Tu tarea consiste en utilizar kill para enviar una señal que detenga su ejecución.

Requisitos

  • Localiza el ID de proceso (PID) del script que se ejecuta en segundo plano (/tmp/background-process.sh).
  • Envía una señal para finalizar dicho proceso.
  • Utiliza exclusivamente el comando kill para terminar el proceso.

Consejos

  • Utiliza ps aux | grep [process-name] para encontrar el PID de un proceso.
  • La señal -9 (SIGKILL) obliga a un proceso a finalizar de forma inmediata.
  • Recuerda que algunas operaciones requieren privilegios de superusuario (sudo).
✨ Revisar Solución y Practicar

Finalizar todos los procesos

Aunque kill es una herramienta potente para finalizar procesos individuales mediante su PID, Linux ofrece comandos más convenientes cuando necesitas detener múltiples procesos que comparten el mismo nombre.

Los comandos killall y pkill te permiten finalizar procesos por su nombre en lugar de tener que buscar cada PID individualmente. Esto resulta especialmente útil cuando se trabaja con varias instancias de un mismo programa.

En este paso, practicaremos el uso de estos comandos para finalizar todas las instancias del servidor web nginx que iniciamos previamente.

Requisitos

  • Finaliza todos los procesos de nginx.
  • Utiliza killall o pkill para detener todos los procesos de nginx.

Consejos

  • killall requiere una coincidencia exacta del nombre del proceso.
  • pkill permite una búsqueda de patrones más flexible.
  • Ambos comandos pueden requerir privilegios de root (sudo) para procesos del sistema.
✨ Revisar Solución y Practicar

Resumen

¡Felicitaciones! Has completado con éxito este desafío.

En esta actividad, has adquirido habilidades esenciales para la gestión de procesos en Linux:

  1. Cómo identificar procesos utilizando el comando ps.
  2. Cómo finalizar un proceso específico mediante su PID con el comando kill.
  3. Cómo finalizar múltiples procesos por su nombre utilizando killall o pkill.

Estos comandos son herramientas fundamentales en el maletín de cualquier administrador de Linux, permitiéndote gestionar y controlar los procesos en ejecución de manera eficaz. Ya sea que necesites detener una aplicación que no responde o reiniciar un servicio, estos comandos te brindan un control preciso sobre los procesos de tu sistema.

¡Sigue aprendiendo y diviértete!