Creative Saplings

30 Exemplos úteis de comandos ‘ps’ para monitoramento de processos do Linux

Janeiro 30, 2021
No Comments

ps (status dos processos) é um utilitário Unix / Linux nativo para visualizar informações sobre uma seleção de processos em execução em um sistema: ele lê essas informações dos arquivos virtuais no sistema de arquivos / proc. É um dos utilitários importantes para administração de sistema especificamente sob monitoramento de processo, para ajudá-lo a entender o que está acontecendo em um sistema Linux.

Ele tem várias opções para manipular sua saída, no entanto, você encontrará uma pequena vários deles são praticamente úteis para uso diário.

Leia também: Tudo o que você precisa saber sobre processos no Linux

Neste artigo, veremos 30 exemplos úteis de comandos ps para monitorar processos ativos em execução em um sistema Linux.

Observe que o ps produz uma saída com uma linha de título, que representa o significado de cada coluna de informação, você pode encontrar o significado de todos os rótulos no ps man página.

Listar todos os processos no shell atual

1. Se você executar o comando ps sem nenhum argumento, ele exibirá processos para o shell atual.

$ ps 
Lista os processos atuais em execução

Imprimir todos os processos em formatos diferentes

2. Exibir todos os processos ativos em um sistema Linux em formato genérico (Unix / Linux).

$ ps -AOR$ ps -e
Listar processos no formato padrão

3. Exibir todos os processos no formato BSD.

$ ps auOR$ ps axu
Listar processos no formato BSD

4. Para executar uma listagem de formato completo, adicione o sinalizador -f ou -F.

$ ps -efOR$ ps -eF
Processos de lista em formato de lista longa

Exibir processos de execução do usuário

5. Você pode selecionar todos os processos de sua propriedade (executor do comando ps, root neste caso), digite:

$ ps -x 

6. Para exibir os processos de um usuário por ID de usuário real (RUID) ou nome, use o sinalizador -U.

$ ps -fU tecmintOR$ ps -fu 1000
Listar processos do usuário por ID

7. Para selecionar os processos de um usuário por ID de usuário efetivo (EUID) ou nome, use a opção -u.

$ ps -fu tecmintOR$ ps -fu 1000

Imprimir todos os processos em execução como raiz (ID real e efetiva)

8. O comando abaixo permite que você visualize todos os processos em execução com privilégios de usuário root (real & ID efetivo) no formato do usuário.

$ ps -U root -u root 
Exibir processos de execução do usuário raiz

Processos de grupo de exibição

9. Se você deseja listar todos os processos pertencentes a um determinado grupo (ID de grupo real (RGID) ou nome), digite.

$ ps -fG apacheOR$ ps -fG 48
Exibir processos de grupo

10. Para listar todos os processos pertencentes ao nome de grupo efetivo (ou sessão), digite.

$ ps -fg apache

Processos de exibição por PID e PPID

11. Você pode listar os processos por PID da seguinte maneira.

$ ps -fp 1178
Listar processos por PID

12. Para selecionar o processo por PPID, digite.

$ ps -f --ppid 1154
Listar processo por PPID

13. Faça a seleção usando a lista PID.

$ ps -fp 2226,1154,1146
Lista
Processos por PIDs

Processos de exibição por TTY

14. Para selecionar processos por tty, use o sinalizador -t da seguinte maneira.

$ ps -t pst/0$ ps -t pst/1$ ps -ft tty1
Listar processos por TTY

Árvore de processos de impressão

15. Uma árvore de processo mostra como os processos no sistema estão vinculados uns aos outros; processos cujos pais foram eliminados são adotados pelo init (ou systemd).

$ ps -e --forest 
Listar árvore de processos

16. Você também pode imprimir uma árvore de processo para um determinado processo como este.

$ ps -f --forest -C sshdOR$ ps -ef --forest | grep -v grep | grep sshd 
Visualização do processo em árvore de listas

Imprimir threads de processo

17. Para imprimir todos os threads de um processo, use o sinalizador -H, isso mostrará as colunas LWP (processo de peso leve) e NLWP (número de processos de peso leve).

$ ps -fL -C httpd
Listar threads de processo

Especifique o formato de saída personalizado

Usando as opções -o ou –format, o ps permite que você crie formatos de saída definidos pelo usuário como mostrado abaixo.

18. Para listar todos os especificadores de formato, inclua o sinalizador L.

$ ps L

19. O comando abaixo permite que você visualize o PID, PPID, nome de usuário e comando de um processo.

$ ps -eo pid,ppid,user,cmd
Listar processos com nomes

20. Abaixo está outro exemplo de um formato de saída personalizado que mostra o grupo do sistema de arquivos, valor legal, hora de início e tempo decorrido de um processo.

$ ps -p 1154 -o pid,ppid,fgroup,ni,lstart,etime
Listar informações do ID do processo

21. Para encontrar um nome de processo usando seu PID.

$ ps -p 1154 -o comm=
Encontrar processo usando PID

Exibir processos pai e filho

22. Para selecionar um processo específico por seu nome, use o sinalizador -C, isso também exibirá todos os seus processos filho.

$ ps -C sshd
Encontrar processo pai-filho

23. Encontre todos os PIDs de todas as instâncias de um processo, útil ao escrever scripts que precisam ler PIDs de uma saída ou arquivo std.

$ ps -C httpd -o pid=
Encontre todos os PIDs do processo

24. Verifique o tempo de execução de um processo.

$ ps -eo comm,etime,user | grep httpd

A saída abaixo mostra que o serviço HTTPD está em execução há 1 hora, 48 minutos e 17 segundos.

Encontrar tempo de atividade do processo

Solução de problemas Desempenho do sistema Linux

Se o seu sistema não estiver funcionando como deveria, por exemplo, se estiver anormalmente lento, você pode solucionar alguns problemas do sistema como segue.

26. Encontre os principais processos em execução por maior uso de memória e CPU no Linux.

$ ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | headOR$ ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%cpu | head
Encontre os principais processos em execução

27. Para interromper processos / aplicativos que não respondem do Linux ou qualquer processo que consome muito tempo de CPU.

Primeiro, encontre o PID do processo ou aplicativo que não responde.

$ ps -A | grep -i stress

Em seguida, use o comando kill para encerrá-lo imediatamente.

$ kill -9 2583 2584
Encontre e elimine um processo

Imprimir informações de segurança

28. Mostre o contexto de segurança (especificamente para SELinux) como este.

$ ps -eMOR$ ps --context
Encontre o contexto SELinux

29. Você também pode exibir informações de segurança no formato definido pelo usuário com este comando.

$ ps -eo euser,ruser,suser,fuser,f,comm,label
Listar o contexto SELinux por usuários

Executar monitoramento de processo em tempo real usando o utilitário Watch

30. Finalmente, como o ps exibe informações estáticas, você pode empregar o utilitário watch para realizar o monitoramento do processo em tempo real com saída repetitiva, exibida a cada segundo como no comando abaixo (especifique um comando ps personalizado para atingir seu objetivo).

$ watch -n 1 "ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head"
Monitoramento do processo em tempo real

Importante: o ps mostra apenas informações estáticas; para ver a saída atualizada com frequência, você pode usar ferramentas como htop; início e relances: os dois últimos são na verdade uma ferramenta de monitoramento de desempenho do sistema Linux.

Você também pode querer ler os seguintes artigos relacionados.

  1. Como encontrar um nome de processo usando o número PID no Linux
  2. Encontrar os principais processos em execução pela maior memória e uso da CPU no Linux
  3. Um guia para Comandos Kill, Pkill e Killall para encerrar um processo no Linux
  4. Como encontrar e interromper processos em execução no Linux
  5. Como iniciar o comando Linux em segundo plano e desanexar o processo no terminal

Articles
Previous Post

PMC (Português)

Next Post

Yosemite Hikes: Os melhores lugares para andar no Parque Nacional de Yosemite

Deixe uma resposta Cancelar resposta

Artigos recentes

  • As melhores escolas de fotografia do mundo, 2020
  • Cidadãos soberanos levam sua filosofia antigovernamental para as estradas
  • Guia de custos de reparo de estuque
  • Muckrakers (Português)
  • Oncologia de precisão

Arquivo

  • Fevereiro 2021
  • Janeiro 2021
  • Dezembro 2020
  • Novembro 2020
  • Outubro 2020
  • Setembro 2020
  • Deutsch
  • Nederlands
  • Svenska
  • Norsk
  • Dansk
  • Español
  • Français
  • Português
  • Italiano
  • Română
  • Polski
  • Čeština
  • Magyar
  • Suomi
  • 日本語
  • 한국어
Proudly powered by WordPress | Theme: Fmi by Forrss.