Descripción
en este tutorial rápido, aprenderá cómo encontrar el ID del proceso padre en Linux desde la línea de comandos.
también aprenderá a encontrar los hijos de un ID de proceso padre dado usando el comando ps
.
también cubriremos cómo generar un árbol de procesos completo de un proceso padre usando el comando pstree
. Una cosa muy útil cuando desea identificar a todos los hijos de un padre dado, sus identificaciones y nombres, que puede necesitar al matar un proceso.,
ID del proceso padre Variable de entorno
El ID del proceso padre de su contexto actual se expone como una variable de entorno. Para ver el valor se puede hacer eco de él.
echo $PPID
por ejemplo, si está SSH
‘d en un servidor Linux, el valor de la variable de entorno $PPID
será el ID de proceso del proceso SSH
.
la variable de entorno solo muestra el ID del proceso., Para ver cuál es el proceso padre podemos usar el comando ps
con la variable de entorno $PPID
.
ps -e | grep $PPID
encuentra el ID del proceso padre de un proceso en ejecución
para determinar el proceso padre de un proceso específico, usamos el comando ps
.
ps -o ppid= -p 9801
la salida solo contiene el ID del proceso padre. Usando la salida del comando ps
podemos determinar el nombre del proceso.,
ps -e | grep 9801
2029 ? 00:00:14 apache2
Listado de Procesos Hijo de un Padre ID de Proceso
Con el padre ID de proceso podemos búsqueda de todos los procesos hijos de los padres con el pgrep
comando.
pgrep -laP $PPID
para un padre SSH típico, la salida mostrará los siguientes procesos
30797 -bash30798 /usr/lib/openssh/sftp-server
Mostrar árbol de procesos
otra utilidad útil es el comando pstree
. Este comando generará un árbol de procesos hijos de un ID de proceso padre., Por ejemplo, para mostrar un árbol de procesos hijos del proceso padre actual, debe ejecutar el siguiente comando.
pstree $PPID
sshd─┬─bash───pstree └─sftp-server
en el ejemplo anterior, podemos ver que el sshd
proceso actual de nuestro Padre IDENTIFICADOR de Proceso (PPID), y que tiene dos procesos hijos. El proceso hijo se bash
y sftp-server
.
también podemos ver que el proceso bash
tiene su propio hijo, que es el comando pstree
que acabamos de ejecutar.,
el comando pstree
también puede generar el ID de proceso de cada proceso en su árbol. Para generar los ID de proceso, utilice el indicador -p
. Aquí hay un ejemplo de un árbol de procesos para un servidor Web Apache.
pstree -p 2029