Gerenciamento de Processos Linux

LinuxBeginner
Pratique Agora

Introdução

Este laboratório apresenta ferramentas Linux essenciais para gerenciar processos e recursos do sistema. Como iniciante, você aprenderá a usar os comandos ps, top e free para monitorar e analisar processos do sistema e o uso da memória. Essas ferramentas são fundamentais para entender o que está acontecendo em seu sistema Linux.

Conquistas

Ao final deste laboratório, você será capaz de:

  • Listar e filtrar processos usando ps
  • Monitorar processos em tempo real com top
  • Verificar o uso da memória do sistema usando free
Este é um Lab Guiado, que fornece instruções passo a passo para ajudá-lo a aprender e praticar. Siga as instruções cuidadosamente para completar cada etapa e ganhar experiência prática. Dados históricos mostram que este é um laboratório de nível iniciante com uma taxa de conclusão de 85%. Recebeu uma taxa de avaliações positivas de 100% dos estudantes.

Listar Todos os Processos

Vamos começar listando todos os processos em execução no sistema usando o comando ps.

  1. Abra seu terminal. Você deve estar no diretório /home/labex/project. Se não tiver certeza, você sempre pode verificar seu diretório atual digitando pwd e pressionando Enter.

  2. Execute o seguinte comando para listar todos os processos:

    ps -e

    Isso exibirá uma lista de todos os processos, incluindo seu Process ID (PID), terminal (TTY), tempo de CPU e nome do comando.

  3. Reserve um momento para examinar a saída. Você verá processos do sistema e processos do usuário. Aqui está o que cada coluna significa:

    • PID: O Process ID único
    • TTY: O tipo de terminal associado ao processo
    • TIME: A quantidade de tempo de CPU usado pelo processo
    • CMD: O nome do comando ou programa

    Não se preocupe se você vir nomes de processos desconhecidos; muitos deles são processos do sistema que são executados em segundo plano.

Exibir Informações Detalhadas do Processo

Agora, vamos obter informações mais detalhadas sobre os processos.

  1. Execute o seguinte comando:

    ps aux

    Este comando mostra uma lista detalhada de todos os processos, incluindo o usuário que iniciou o processo, o uso de CPU e memória e a linha de comando completa.

  2. A saída pode ser bastante longa. Você pode usar o comando less para visualizá-la mais facilmente:

    ps aux | less

    Isso direciona a saída de ps aux para less, permitindo que você role por ela.

  3. No visualizador less:

    • Use as setas para cima e para baixo para rolar
    • Pressione Space para avançar uma página
    • Pressione b para retroceder uma página
    • Pressione q para sair do visualizador less quando terminar
  4. Vamos detalhar o que você está vendo:

    • USER: O proprietário do processo
    • PID: Process ID
    • %CPU: Uso da CPU
    • %MEM: Uso da memória
    • VSZ: Tamanho da memória virtual
    • RSS: Resident Set Size (memória física não trocada usada)
    • TTY: Tipo de terminal
    • STAT: Estado do processo
    • START: Hora de início do processo
    • TIME: Tempo cumulativo da CPU
    • COMMAND: O comando com todos os seus argumentos

Não se preocupe se você não entender tudo isso agora. À medida que você ganha mais experiência, você se familiarizará com esses termos.

Filtrar Processos por Usuário

Você pode filtrar processos para mostrar apenas aqueles pertencentes a um usuário específico. Isso é útil quando você deseja se concentrar em processos de uma conta de usuário específica.

  1. Para ver os processos pertencentes ao usuário root, execute:

    ps -u root

    O usuário root é o superusuário em sistemas Linux, com direitos de acesso total ao sistema. Muitos processos do sistema são executados sob a conta root.

  2. Para ver os processos pertencentes ao seu usuário atual (labex), execute:

    ps -u labex

    Isso mostrará todos os processos que você iniciou em sua conta de usuário.

  3. Compare as saídas desses dois comandos. Você provavelmente verá mais processos sob root do que sob sua conta de usuário.

Monitorar Processos em Tempo Real com top

O comando top fornece uma visão dinâmica e em tempo real dos processos em execução. É como um painel ao vivo para o seu sistema.

  1. Execute o seguinte comando:

    top
  2. Você verá uma exibição continuamente atualizada dos processos do sistema, classificados por uso da CPU. A exibição é dividida em duas seções principais:

    • A área de resumo na parte superior, mostrando informações em todo o sistema
    • A lista de processos, mostrando detalhes de processos individuais
  3. Enquanto estiver em top, você pode usar vários comandos:

    • Pressione M para classificar por uso de memória em vez de CPU
    • Pressione P para retornar à classificação por uso da CPU
    • Pressione T para classificar por tempo de execução
    • Pressione N para classificar por PID
    • Use as setas para cima e para baixo para navegar na lista de processos
    • Pressione q para sair do top
  4. A área de resumo inclui informações importantes do sistema:

    • Tempo de atividade do sistema e médias de carga (load averages)
    • Resumo de tarefas (total, em execução, dormindo, parado, zumbi)
    • Estados da CPU (usuário, sistema, ocioso, etc.)
    • Uso da memória (total, livre, usado, buffers/cached)
    • Uso da swap

Reserve um tempo para explorar o top. É uma ferramenta poderosa para entender o que está acontecendo em seu sistema em tempo real.

Verificar o Uso de Memória do Sistema

O comando free permite que você verifique o uso de memória do sistema de forma rápida e fácil.

  1. Execute o seguinte comando para ver o uso de memória em um formato legível por humanos:

    free -h

    A opção -h significa "human-readable" (legível por humanos), que exibe os tamanhos em potências de 1024 (por exemplo, 1K, 234M, 2G).

  2. Você verá uma saída semelhante a esta:

                   total        used        free      shared  buff/cache   available
    Mem:           7.7G        4.1G        287M        624M        3.3G        2.7G
    Swap:          2.0G        506M        1.5G

    Vamos detalhar o que cada linha e coluna significa:

    • Mem: Esta linha mostra informações sobre a RAM do seu sistema
    • Swap: Esta linha mostra informações sobre o seu espaço de swap (memória virtual)

    Colunas:

    • total: Memória total instalada
    • used: Memória atualmente em uso
    • free: Memória não utilizada
    • shared: Memória compartilhada por vários processos
    • buff/cache: Memória usada por buffers do kernel, cache de página e slabs
    • available: Estimativa de quanta memória está disponível para iniciar novas aplicações, sem swapping
  3. Não se alarme se sua memória "free" parecer baixa. O Linux usa a memória disponível para cache de disco para melhorar o desempenho do sistema, mas essa memória pode ser recuperada, se necessário, pelas aplicações.

Resumo

Neste laboratório, você aprendeu a usar ferramentas-chave de gerenciamento de processos Linux:

  • ps para listar e filtrar processos
  • top para monitorar processos em tempo real
  • free para verificar o uso de memória do sistema

Esses comandos são essenciais para a administração e solução de problemas do sistema. Eles fornecem informações sobre o que está sendo executado em seu sistema, como os recursos estão sendo usados e podem ajudá-lo a identificar possíveis problemas.

À medida que você se sentir mais confortável com essas ferramentas, poderá explorar opções adicionais e combiná-las com outros comandos Linux para uma análise de sistema mais avançada. Por exemplo:

  • Use ps com grep para encontrar processos específicos
  • Aprenda a interpretar as informações detalhadas em top para identificar aplicações que consomem muitos recursos
  • Use free em scripts para monitorar o uso de memória ao longo do tempo

Lembre-se, a prática leva à perfeição! Não hesite em experimentar esses comandos por conta própria para aprofundar sua compreensão do gerenciamento de processos Linux. Quanto mais você usar essas ferramentas, mais intuitivas elas se tornarão.