Pular para o conteúdo
Início » Comando Linux: ps (Status do Processo)

Comando Linux: ps (Status do Processo)

O comando “ps” é uma ferramenta essencial para exibir informações relacionadas aos processos em execução em um sistema Linux. Ele oferece uma visão detalhada das atividades dos processos, permitindo aos usuários monitorar e gerenciar o desempenho do sistema.

Entendendo a Saída Básica do Comando “ps”

Ao executar o comando “ps” sem argumentos, você obterá uma saída simples, incluindo as seguintes colunas:

  • PID (ID de processo): Este é um identificador único para cada processo em execução.
  • TTY (Tipo de terminal): Indica o tipo de terminal no qual o processo está sendo executado.
  • TIME (Tempo): Mostra o tempo de CPU consumido pelo processo desde o início de sua execução.
  • CMD (Comando): Exibe o comando que foi usado para iniciar o processo correspondente.
$ ps
--------------------------------------------------------------------
    PID TTY          TIME CMD
  54316 pts/0    00:00:00 bash
  54341 pts/0    00:00:00 ps

Utilizando Argumentos com o Comando “ps”

O comando “ps” pode ser personalizado com argumentos para atender às necessidades específicas. A presença de um traço (-) antes dos argumentos resulta na saída padrão, enquanto a ausência de um traço produz a saída no estilo BSD (Berkeley Software Distribution).

Aqui estão alguns exemplos de argumentos úteis do “ps”:

  • Para visualizar todos os processos em execução: ps -e ou ps -A
  • Para obter uma lista formatada completa de todos os processos em execução: ps -efL
$ ps -efL | more   # Use "more" para visualização desde o início
-------------------------------------------------------------------
UID          PID    PPID     LWP  C NLWP STIME TTY          TIME CMD
root           1       0       1  1    1 03:44 ?        00:00:20 /sbin/init
root           2       0       2  0    1 03:44 ?        00:00:00 [kthreadd]
...

Pesquisando Processos com “grep”

Você pode combinar o comando “ps” com o utilitário “grep” para procurar processos específicos. Por exemplo, se você deseja verificar se o servidor “httpd” está em execução, pode fazer o seguinte:

$ ps -efL | grep httpd
--------------------------------------------------------------------
root       48778   39025   48778  0    1 04:22 pts/0    00:00:00 grep --color=auto httpd

Filtrando Processos por Usuário ou Grupo

Você também pode filtrar os processos exibidos com base no nome de usuário ou grupo:

  • Para ver todos os processos em execução por nome de usuário: ps -u root
  • Para ver todos os processos em execução por grupo: ps -G admin

Visualizando a Árvore de Processos

Às vezes, é útil ver a árvore de processos, onde um processo pode ter vários subprocessos. Você pode usar o comando “ps -ejH” para visualizar a árvore de processos:

$ ps -ejH | grep sshd
--------------------------------------------------------------------
    614     614     614 ?        00:00:00   sshd
  22310   22310   22310 ?        00:00:00     sshd
  30267   30267   30267 ?        00:00:00     sshd
  33871   33871   33871 ?        00:00:00     sshd

Neste exemplo, examinamos a árvore de processos do processo “sshd”.

Utilizando “ps aux” para uma Visão Detalhada

Um dos comandos “ps” mais amplamente utilizados é “ps aux”. Ele exibe todos os processos em execução usando a sintaxe BSD e fornece informações detalhadas, incluindo:

  • %CPU (Porcentagem de CPU): A porcentagem de tempo de CPU usada pelo processo.
  • %MEM (Porcentagem de Memória): A porcentagem de memória física usada pelo processo.
  • VSZ (Virtual Size): A quantidade de memória virtual consumida pelo processo.
  • RSS (Resident Set Size): A quantidade de memória física real usada pelo processo.
  • START (Início): A data ou hora em que o processo foi iniciado.
  • TIME (Tempo): O tempo total de CPU consumido pelo processo.
  • STAT (Status): O estado atual do processo.
$ ps aux | more
--------------------------------------------------------------------
USER  PID %CPU %MEM   VSZ   RSS  TTY   STAT START  TIME   COMMAND
root  1   0.6  0.5  169396 11312  ?    Ss   03:44   0:24  /sbin/init
root  2   0.0  0.0       0     0  ?    S    03:44   0:00  [kthreadd]
...

O comando “ps aux” fornece informações adicionais, como a porcentagem de CPU e memória usada, tornando-o uma ferramenta valiosa para monitorar o desempenho do sistema Linux.

Em resumo, o comando “ps” é uma ferramenta poderosa para exibir informações sobre os processos em execução em um sistema Linux. Com a combinação certa de argumentos, ele pode fornecer uma visão detalhada do estado atual do sistema, permitindo que os usuários gerenciem eficientemente os processos e otimizem o desempenho do sistema.

Marcações: