En los sistemas operativos basados ​​en Linux y Unix, una instancia de comando en ejecución se conoce como proceso. Puede identificar cada proceso mediante un ID de proceso único. Linux proporciona herramientas de línea de comandos para enumerar, administrar y monitorear estos procesos de manera eficiente.

Puede usar estas herramientas para priorizar cada proceso o ponerlos en segundo plano o en primer plano para administrar los recursos del sistema de manera eficiente.

Esta guía para la gestión de procesos en Linux incluye herramientas como ps, kill, renice y otros comandos que ayudan a los administradores de sistemas a gestionar y enumerar los procesos.

Listado de procesos con el comando ps

La utilidad de línea de comandos más antigua y más utilizada para enumerar los procesos que se ejecutan actualmente en Linux es PD. Aunque el comando superior es otra forma interactiva y orientada a la pantalla para administrar y enumerar los procesos del sistema, ps también muestra información adicional, como los recursos que consume cada proceso.

instagram viewer

Debido a un entorno multiusuario, cada proceso en Linux está asociado con una cuenta de usuario y grupo separada. Por lo tanto, la información de la cuenta con los detalles del proceso lo ayuda a acceder a los recursos del sistema que puede usar un proceso.

Por ejemplo, los procesos que se ejecutan con privilegios de superusuario pueden acceder a más recursos del sistema que un usuario normal, y aquí es donde ps ayuda a los administradores del sistema.

El siguiente resultado es un ejemplo de enumeración de procesos con nombres de usuario, el tiempo transcurrido y el consumo de memoria y CPU asociado:

También puede observar la columna STAT que muestra el estado del proceso en ejecución. R representa el proceso que se está ejecutando actualmente, y S es un proceso durmiente con un signo más que indica operaciones en primer plano.

Puede enumerar todos los procesos del usuario actual, de la siguiente manera:

ps ux | menos

Para listar procesos para todos los usuarios:

ps auxiliar | menos

Gestión de procesos con System Monitor

System Monitor proporciona una forma gráfica de mostrar y administrar procesos. Para iniciar System Monitor, vaya a Aplicaciones > Monitor del sistema. Cambiar a la Procesos pestaña para ver todos los procesos en ejecución.

Por defecto, muestra los procesos en orden alfabético para el usuario actual. Puede volver a ordenar la lista de procesos haciendo clic en cualquier encabezado de columna. Además, puede hacer clic en el %UPC y Memoria encabezados para ver los procesos que consumen más potencia de procesamiento y memoria.

System Monitor le permite administrar procesos de varias maneras, lo que significa que puede detener, matar, continuar, finalizar y cambiar la prioridad del proceso simplemente haciendo clic con el botón derecho en un nombre de proceso.

Es la mejor herramienta para usuarios novatos de Linux que no saben cómo trabajar con utilidades de línea de comandos.

Relacionados: Cómo mostrar los resultados de los principales procesos y ordenarlos por memoria

Trabajar con procesos de fondo/primer plano

Llega un momento en el que tiene que acceder a un sistema Linux a través de una red usando solo una línea de comando. Esto limita la gestión eficaz de múltiples programas activos. Pero un shell le permite administrar programas cambiándolos a segundo plano y primer plano.

Cómo iniciar un proceso en segundo plano

Para iniciar un programa mientras continúa trabajando en el shell, ejecute el comando, deténgalo y colóquelo en segundo plano usando Control + Z. Para ejecutar un programa directamente en segundo plano, agregue un ampersand (&) al final del comando, de la siguiente manera:

busque /usr > /tmp/allusrfiles &

Anote el número de trabajo y el ID del proceso. Tenga en cuenta que no puede ejecutar comandos que requieran entrada de terminal en segundo plano.

Puedes usar el trabajos comando para mostrar todos los programas/comandos que se ejecutan en segundo plano o los que detuvo (usando Control + Z).

trabajos

Cómo reanudar procesos en primer plano y en segundo plano

Para continuar un trabajo que puso en segundo plano, use el fg comando, y traerá el comando al primer plano.

fg %

De manera similar, si detuvo la ejecución de un comando en segundo plano, puede reiniciarlo nuevamente en segundo plano usando el comando bg, de la siguiente manera:

% de volumen

Eliminación de procesos en Linux

Así como una herramienta gráfica como System Monitor le permite eliminar, detener y continuar un proceso, también puede usar herramientas de línea de comandos como matar y Mátalos a todos para enviar una señal a un proceso en ejecución.

Además de simplemente matar un proceso, el comando matar también ayuda a enviar diferentes señales para administrar los comportamientos del proceso.

Puede usar nombres o números para usar una señal.

matar -número de señal 
matar -nombre de la señal

Por ejemplo, los siguientes comandos envían la señal SIGKILL a un proceso con el PID 1987:

matar -9 1987
matar -SIGKILL 1987

Las señales de proceso más utilizadas son:

Opción Descripción
SEÑAL (9) Mata el proceso inmediatamente.
SIGTERM (15) Termina el proceso
SEGUIMIENTO (28/19/25) Detiene el proceso
SIGCONT (28/19/25) Continúa el proceso después de que se detiene
REGÍSTRESE (1) Le dice al proceso que lea su archivo de configuración

Tenga en cuenta que los diferentes procesos responden de manera diferente a estas señales, pero no pueden detener las señales SIGSTOP y SIGKILL. Escriba el siguiente comando para leer más sobre estas señales:

hombre 7 señal

Aprende más: Cómo terminar procesos que no responden en Linux con kill y pkill

Renicing Procesos en Linux

El kernel de Linux prioriza los procesos en ejecución y asigna recursos del sistema considerando los privilegios de la cuenta de usuario. El kernel también considera otro factor, que es el valor "agradable" de cada proceso en ejecución.

El valor agradable predeterminado de un proceso es cero, pero puede establecer el rango entre -20 y 19. Algunos datos sobre la ambientación proceso de prioridad con agradable y renice los valores son:

  • Un proceso con un valor agradable bajo tiene más acceso a los recursos de la CPU
  • Un usuario normal solo puede volver a priorizar sus procesos
  • Un usuario normal solo puede establecer valores entre -20 y 19, y solo puede establecer un valor más alto
  • Un superusuario puede configurar los procesos de cualquier persona a cualquier valor, alto o bajo

Gestión de procesos en Linux simplificada

Un entorno multiusuario tiene varios procesos que requieren un conocimiento suficiente de la gestión de recursos del sistema para evitar cuellos de botella y restricciones del sistema. Parte de la tarea incluye la gestión de procesos ejecutándolos en segundo plano/en primer plano, eliminándolos o renovándolos.

También puede obtener información sobre la utilidad de comando superior para mostrar y ordenar procesos y aprender a terminar procesos que no responden en Linux.

7 formas de matar programas que no responden en Linux

Cuando una aplicación de Linux deja de responder y falla, ¿cómo puedes eliminarla? Pruebe uno de estos trucos para forzar el cierre de un programa en Linux.

Leer siguiente

CuotaPíoCorreo electrónico
Temas relacionados
  • linux
  • Procesador de computadora
  • Comandos Linux
  • Primaria Linux
Sobre el Autor
Rumaisa Niazi (13 artículos publicados)

Rumaisa es escritora independiente en MUO. Ha desempeñado muchas funciones, desde matemática hasta entusiasta de la seguridad de la información, y ahora trabaja como analista de SOC. Sus intereses incluyen leer y escribir sobre nuevas tecnologías, distribuciones de Linux y todo lo relacionado con la seguridad de la información.

Más de Rumaisa Niazi

Suscríbete a nuestro boletín

¡Únase a nuestro boletín para obtener consejos técnicos, reseñas, libros electrónicos gratuitos y ofertas exclusivas!

Haga clic aquí para suscribirse