visão geral
neste tutorial rápido, você vai aprender como encontrar o ID do processo pai no Linux a partir da linha de comandos.
também irá aprender a encontrar os filhos de um dado ID do processo pai usando o comando ps
.
também vamos cobrir como produzir uma árvore de processo completa de um processo pai usando o comando . Uma coisa muito útil quando você quer identificar todas as crianças de um determinado pai, seus IDs e Nomes, que você pode precisar ao matar um processo.,
variável de ambiente de ID do processo Progenitor
o ID do processo progenitor do seu contexto actual é exposto como uma variável de ambiente. Para ver o valor que você pode ecoar para fora.
echo $PPID
Por exemplo, se você estiver SSH
‘d em um servidor Linux, o valor de $PPID
variável de ambiente será o ID do processo SSH
processo.
a variável de ambiente só produz o ID do processo., Para ver o que é o processo pai, podemos usar o comando ps
com o comando $PPID
variável de ambiente.
ps -e | grep $PPID
Find the Parent Process ID of a Running Process
To determine the parent process of a specific process, we use the ps
command.
ps -o ppid= -p 9801
a saída contém apenas o ID do processo-mãe em si. Usando o resultado do comando ps
podemos determinar o nome do processo.,
ps -e | grep 9801
2029 ? 00:00:14 apache2
listando os processos-filhos de um Parent Process ID
com o parent process ID podemos procurar todo o processo-filho usando o parent usando o comando pgrep
.
pgrep -laP $PPID
Para uma típica SSH pai, a saída irá listar os seguintes processos
30797 -bash30798 /usr/lib/openssh/sftp-server
Visualização em Árvore do Processo
Outro utilitário útil é o pstree
comando. Este comando irá produzir uma árvore de processos filhos de um ID de processo pai., Por exemplo, para mostrar uma árvore de processos filhos do processo pai atual, você executaria o seguinte comando.
pstree $PPID
sshd─┬─bash───pstree └─sftp-server
a Partir do exemplo acima, podemos ver que o sshd
processo é o nosso Pai atual Processo de IDENTIFICAÇÃO (PPID), e que ele tem dois filhos processos. O processo infantil é bash
e sftp-server
.
também podemos ver que o processobash
tem o seu próprio filho, que é o comandopstree
que acabamos de executar.,
o comando pode também enviar o ID do processo de cada processo na sua árvore. Para obter os IDs do processo, você usa a bandeira
. Aqui está um exemplo de uma árvore de processo para um servidor web Apache.
pstree -p 2029