Gestión de Procesos en Linux: Administración y Control de Tareas
Gestión de procesos
- Un proceso es un programa o servicio en estado de ejecución.
- A cada proceso se le asigna un PID (Identificador de proceso).
- Los procesos que se encuentran en ejecución pueden ser:
- Procesos de sistema: Procesos propios del núcleo (kernel). Se encuentran los procesos daemons asociados al control de servicios locales o de red.
- La mayoría de estos procesos aparecen asociados al usuario root.
- Procesos del usuario administrador: Procesos o aplicaciones lanzados y asociados al usuario root.
- Procesos de usuarios del sistema: Asociados a la ejecución de aplicaciones, tanto en modo texto como en modo gráfico.
Administración de procesos y tareas del sistema
Modo gráfico
Para gestionar procesos utilizamos la herramienta del sistema:
- Sistema – Administración – Monitor del sistema
- Pestaña – Permisos
- Seleccionar un proceso y pulsar el botón derecho.
Acciones disponibles:
- Detener el proceso: Se detiene sin que se termine.
- Continuar el proceso: Si es que lo hemos detenido previamente.
- Finalizar el proceso: Se acaba con naturalidad, cerrándose archivos abiertos y el resto de recursos utilizados.
- Matar el proceso: Se termina incondicionalmente.
- Cambiar la prioridad: Control numérico para indicar la prioridad, siendo de -20 a 20, donde 0 es el valor normal.
Modo comando
- ps: Comando para mostrar los procesos. Permite ver todos los procesos activos en el terminal.
# ps –Al: Aparece el nombre de proceso, el PID, el usuario, el comando, fecha y hora.# ps –aux: Añade el % de CPU, % de memoria y el comando con su trayectoria.
- top: Muestra la lista de procesos y permite realizar diferentes acciones sobre cada uno de ellos. Se visualiza el total de procesos, su estado, uso de CPU, de memoria y recursos consumidos.
# top
- htop: Aplicación mejorada del comando top (requiere instalación previa).
- kill: Para matar procesos de manera incondicional. Se necesita conocer el PID (identificador de proceso), el cual se puede obtener ejecutando el comando ps.
# kill 5870- Si el proceso no finaliza:
# kill -9 5870 - Si se quiere pausar un proceso:
# kill –STOP 5870 - Para reanudarlo:
# kill –CONT 5870
- killall: Se utiliza para finalizar todos los subprocesos de un proceso y terminar el árbol de procesos, ya que cada subproceso tiene su propio PID.