Vamos a ver un resumen de comandos básicos para trabajar y gestionar procesos Linux.
comando ps
El comando ps en Linux simplemente nos muestra una instantánea de los procesos actuales en ejecución.
Ahora vamos a llamar a un nuevo proceso:
1 | sleep 60 & |
Ahora comprobamos que el proceso se encuentra en ejecución; de nuevo con ps:
TERMINAR PROCESOS POR NÚMERO DE PROCESO (Comando kill)
Ahora vamos a terminar dicho proceso, con el comando kill y el numero de proceso:
Cuando un comando no se pueda terminar con el comando kill, ejecutaremos kill -9
TERMINAR PROCESOS POR NOMBRE (comando killall)
Ahora crearemos 2 procesos con el mismo nombre, y comprobamos que están ejecutándose:
Y los terminaremos con el comando killall:
–> Parámetro -w (Esperar a que los procesos terminen):
1 | killall -w sleep |
El comando anterior espera a que todos los procesos “sleep” terminen. Lo comprueba una vez por segundo.
Este comando puede alargarse eternamente si la señal es ignorada o no tiene efecto…
–> Parámetro -u (finaliza solo procesos ejecutados como usuario):
Si ejecutamos killall -u nombreusuario, se terminarán todos los procesos ejecutados por dicho usuario.
AYUDA DEL COMANDO KILLALL
Comando pidof (ID de procesos)
1 | pidof nombreproceso |
En este caso nos muestra 2 id de proceso bash, puesto que hay 2 ventanas de terminal abiertas.
1 | pidof -s bash |
Este parámetro nos mostrará solo el pid del proceso nombrado
Ayuda del comando pidof
Comando nice
El comando nice en Linux sirve para ejecutar un programa con su prioridad de programación modificada.
Solo los usuarios root pueden modificar la prioridad de todos los procesos. Los demás usuarios podrán modificar la prioridad de los procesos de los que son propietarios.
En este caso, llamamos al proceso sleep, y después cambiamos su prioridad con
1 | nice -n 19 sleep 30 & |
y comprobamos cómo ha cambiado su pid;
;entonces podemos reajustar de nuevo la prioridad de este proceso, con pid 23511, con el comando renice:
1 | renice -n 19 23511 |
Vemos que aparece el mensaje:
1 | 23511 (ID de proceso) prioridad antigua 19, prioridad nueva 19. |
Ayuda sobre el comando nice:
El rango de valores “nice” abarca desde -20 (más favorable al proceso) hasta 19 (menos favorable al proceso).
Los argumentos obligatorios para las opciones largas son también obligatorios para las opciones cortas.
-n, –adjustment=N añade el entero N al valor “nice” (10 por omisión)
Comando top
El comando top nos muestras los procesos en ejecución en tiempo real en nuestro sistema Linux
Lo más interesante del comando top es que nos mostrará :
–> Tiempo de actividad y carga del sistema
–> Las tareas
–> Estados de la CPU, memoria física y memoria virtual:
Para obtener más info acerca del funcionamiento del comando top en Linux, podemos ejecutar man top (para ver el manual del comando), o desde este enlace de Geek Theory encontraremos más info avanzada acerca de este comando.
comando pstree
Nos muestra en forma de árbol (de forma jerárquica) una lista de los procesos en ejecución.
Para mostrar el pdi de los procesos ejecutaremos el parámetro -p:
1 | pstree -p |
Si estamos buscando un proceso en concreto, ejecutaremos:
1 | pstree pid del proceso |
por ej:
1 | pstree 21716 |
Comando time
Con el comando time podremos averiguar el tiempo que cuesta ejecutar un comando.
La sintáxis es:
1 | time comando |