Gestión de procesos Linux/Unix: ps, kill, top, df, free, nice Comandos

¿Qué es un proceso?

Una instancia de un programa se llama Proceso. En términos simples, cualquier comando que le dé a su máquina Linux inicia un nuevo proceso.

¿Qué es un proceso?

Es posible tener múltiples procesos para el mismo programa.

Tipos de Procesos:

  • Procesos en primer plano: Se ejecutan en la pantalla y necesitan información del usuario. Por ejemplo programas de office
  • Procesos en segundo plano: Se ejecutan en segundo plano y normalmente no necesitan la intervención del usuario. Por ejemplo antivirus.

Hagan clic aquí si el video no es accesible

Ejecutar un proceso en primer plano

Para iniciar un proceso en primer plano, puede ejecutarlo desde el panel o desde la terminal.

Cuando utilice la Terminal, tendrá que esperar hasta que se ejecute el proceso en primer plano.

Ejecutar un proceso en primer plano

Ejecutando un proceso en segundo plano

Si inicia un programa/proceso en primer plano desde la terminal, no podrá trabajar en la terminal hasta que el programa esté en funcionamiento.

Las tareas que requieren un uso intensivo de datos requieren una gran capacidad de procesamiento y pueden tardar horas en completarse. No querrás que tu terminal quede inactivo durante tanto tiempo.

Para evitar tal situación, puede ejecutar el programa y enviarlo a un segundo plano para que el terminal permanezca disponible para usted. Aprendamos cómo hacer esto –

Ejecutar un proceso en segundo plano

Fg

Puede utilizar el comando "fg" para continuar un programa que se detuvo y ponerlo en primer plano.

La sintaxis simple de esta utilidad es:

fg jobname

Ejemplo

  1. Inicie el reproductor de música 'banshee'
  2. Deténgalo con el comando 'ctrl +z'
  3. Continúe con la utilidad 'fg'.

comando fg

Veamos otros comandos importantes para gestionar procesos:

Mejor

Esta utilidad informa al usuario sobre todos los procesos en ejecución en la máquina Linux.

Comando superior

Presione 'q' en el teclado para salir de la pantalla del proceso.

La terminología es la siguiente:

Campo Descripción Ejemplo Ejemplo
PID El ID del proceso de cada tarea. 1525 961
User El nombre de usuario del propietario de la tarea. Inicio root
PR Prioridad

Puede ser 20 (el más alto) o -20 (el más bajo)

20 20
NI El gran valor de una tarea. 0 0
VIRTUAL Memoria virtual utilizada (kb) 1775 75972
RES Memoria física utilizada (kb) 100 51
SHR Memoria compartida utilizada (kb) 28 7952
S

Estado

Hay cinco tipos:

'D' = sueño ininterrumpido

'R' = corriendo

'S' = durmiendo

'T' = rastreado o detenido

'Z' = zombi

S R
%UPC % de tiempo de CPU 1.7 1.0
% MEM Memoria física utilizada 10 5.1
TIEMPO + Tiempo total de CPU 5:05.34 2:23.42
Comando Nombre del comando Photoshop.exe Xorg

PS

Este comando significa "Estado del proceso". Es similar al "Administrador de tareas" que aparece en una Windows Máquina cuando usamos Cntrl+Alt+Supr. Este comando es similar al comando 'superior' pero la información que se muestra es diferente.

Para verificar todos los procesos que se ejecutan bajo un usuario, use el comando –

ps ux

Comando PS

También puede verificar el estado del proceso de un solo proceso, use la sintaxis –

ps PID 

Comando PS

Matar

Este comando finaliza los procesos en ejecución en una máquina Linux.

Para utilizar estas utilidades, necesita conocer el PID (ID de proceso) del proceso que desea eliminar.

Sintaxis -

kill PID

Para encontrar el PID de un proceso simplemente escriba

pidof Process name

Intentémoslo con un ejemplo.

Matar comando

NICE

Linux puede ejecutar muchos procesos a la vez, lo que puede ralentizar la velocidad de algunos procesos de alta prioridad y provocar un rendimiento deficiente.

Para evitar esto, puede decirle a su máquina que priorice los procesos según sus requisitos.

Esta prioridad se llama Niceness en Linux y tiene un valor entre -20 y 19. Cuanto menor sea el índice de Niceness, mayor será la prioridad dada a esa tarea.

El valor predeterminado de todos los procesos es 0.

Para iniciar un proceso con un valor de amabilidad distinto del valor predeterminado, utilice la siguiente sintaxis

nice -n 'Nice value' process name

Buen comando

Si ya hay algún proceso ejecutándose en el sistema, entonces puede "Renice" su valor usando la sintaxis.

renice 'nice value' -p 'PID'

Para cambiar Niceness, puede usar el comando 'top' para determinar el PID (id de proceso) y su valor Nice. Later use el comando renice para cambiar el valor.

Entendamos esto con un ejemplo.

Buen comando

DF

Esta utilidad informa el espacio libre en disco (disco duro) en todos los sistemas de archivos.

Comando DF

Si desea la información anterior en un formato legible, utilice el comando

'df -h' 

Comando DF

Gratis

Este comando muestra la memoria (RAM) libre y utilizada en el sistema Linux.

Comando libre

Puedes usar los argumentos.

free -m para mostrar la salida en MB

free -g para mostrar la salida en GB

Resumen:

  • Cualquier programa en ejecución o comando dado a un sistema Linux se llama proceso.
  • Un proceso podría ejecutarse en primer plano o en segundo plano.
  • El índice de prioridad de un proceso se llama Nice en Linux. Su valor predeterminado es 0 y puede variar entre 20 y -19.
  • Cuanto menor sea el índice de amabilidad, mayor será la prioridad que se le dará a esa tarea.
Comando Descripción
bg Para enviar un proceso a segundo plano
fg Para ejecutar un proceso detenido en primer plano
parte superior Detalles de todos los procesos activos
ps Dar el estado de los procesos en ejecución para un usuario
picosegundo PID Da el estado de un proceso en particular.
pidof Da el ID de proceso (PID) de un proceso
matar PID mata un proceso
agradable Inicia un proceso con una prioridad dada
re bueno Cambia la prioridad de un proceso que ya se está ejecutando
df Da espacio libre en el disco duro de su sistema
gratis Proporciona RAM libre en su sistema