- Dave McKay
@TheGurkha
May 12, 2020, 8:00am EDT
p> O comando Linuxtop
é uma das “stalwarts” dos sistemas operativos do tipo Unix. A sua exibição utilitária está repleta de informação útil sobre os processos de execução e utilização de recursos do seu sistema. Mas, sabia que também suporta cor, destaque, e mesmo gráficos elementares?
Um Painel de Informação Empacotado
O comando top
existe desde 1984, e existem muitas variantes do mesmo. Para este artigo, estamos a correr o Ubuntu 18.04 com todos os patches aplicados, e a versão 3.3.12 de top
. Também cruzámos tudo em dois outros computadores de teste, um a correr Fedora e o outro Manjaro.
O padrão top
exibe o máximo de informação possível na janela do terminal. A informação é um pré-requisito para a administração, portanto isto é uma coisa boa. Uma das características de um bom administrador de sistemas é a capacidade de identificar problemas emergentes e lidar com eles antes que afectem o serviço. top
dá-lhe um painel de controlo de muitas métricas de sistema diferentes que o ajudam a fazer exactamente isso.
O visor é melhor descrito como funcional, em vez de intuitivo, e as abreviaturas abundam. Quando se encontra pela primeira vez top
, sente-se apertado, críptico, e desligado. Com algumas teclas, no entanto, pode afinar o conteúdo e o formato do visor de acordo com o que é importante para si.
Verifica a tua versão do topo
Para verificar qual a versão do topo que tens, escreve o seguinte numa janela terminal:
top -v
top -v numa janela terminal.
se a tua versão estiver muito atrás de 3.3.12, pode não suportar todas as características que vamos cobrir.
A exibição padrão
Pode iniciar top
digitando o seguinte e premindo “Enter”:
top
A exibição padrão contém duas áreas de informação: a área de resumo (ou painel de instrumentos), e a área de tarefas (ou lista de processos). Por defeito, top
actualiza a sua exibição de três em três segundos – irá notar uma ligeira cintilação quando o fizer.
A primeira linha de números no tablier inclui o tempo, há quanto tempo o seu computador está a funcionar, o número de pessoas que fizeram login, e qual tem sido a média da carga durante o último, cinco, e 15 minutos. A segunda linha mostra o número de tarefas e os seus estados: a correr, parado, a dormir, ou zombie.
A terceira linha mostra os seguintes valores da unidade central de processamento (CPU):
- us: Tempo que a CPU gasta a executar processos para pessoas no “espaço do utilizador”
- sy: Quantidade de tempo gasto a executar processos do “espaço do núcleo” do sistema.
- ni: Quantidade de tempo gasto a executar processos com um valor definido manualmente.
- id: Quantidade de tempo de inactividade da CPU.
- wa: Quantidade de tempo que o CPU gasta à espera de E/S para completar.
- olá: Quantidade de tempo gasto em manutenção de hardware interrupções.
- si: Tempo gasto na manutenção de interrupções de software.
- st: Quantidade de tempo perdido devido à execução de máquinas virtuais (“roubar tempo”).
A quarta linha mostra a quantidade total (em kibibibytes) de memória física, e quanto é livre, usada, e tamponada ou em cache.
A quinta linha mostra a quantidade total (também em kibibibytes) de memória swap, e quanto é livre, usada, e disponível. Esta última inclui a memória que se espera recuperar de caches.
Os títulos das colunas na lista de processos são os seguintes:
- PID: Process ID.
- USER: O proprietário do processo.
- PR: Prioridade do processo.
- NI: O valor agradável do processo.
- VIRT: Quantidade de memória virtual utilizada pelo processo.
- RES: Quantidade de memória residente utilizada pelo processo.
- SHR: Quantidade de memória partilhada utilizada pelo processo.
- S: Estado do processo. (Ver a lista abaixo para os valores que este campo pode tomar).
- %CPU: A percentagem de tempo de CPU utilizado pelo processo desde a última actualização.
- %MEM: A percentagem de memória física utilizada.
- TIME+: Tempo total de CPU utilizado pela tarefa em centésimos de segundo.
- COMANDO: O nome do comando ou linha de comando (nome + opções).
Valores de memória são mostrados em kibibytes. A coluna está fora do ecrã, à direita não cabia na imagem acima, mas vamos vê-la em breve.
O estado do processo pode ser um dos seguintes:
- D: Sono ininterrupto
- R: Correndo
- S: Dormindo
- T: Traçado (parado)
- Z: Zumbi
Pressão Q para sair top
.
Deslocando o Visor
P>Pode pressionar as setas para cima ou para baixo, Home, End, e Page Up ou Down para mover para cima e para baixo e aceder a todos os processos.
Pressiona a seta para a esquerda ou para a direita para mover a lista de processos para os lados. Isto é útil para ver quaisquer colunas que não cabem dentro dos limites da janela do terminal.
Na imagem abaixo, pressionamos a Seta Direita algumas vezes para ver a coluna .
Mudando as unidades numéricas
Vamos mudar as unidades de visualização para valores sensíveis. Prima E maiúsculo para percorrer as unidades utilizadas para exibir valores de memória nestas opções: kibibytes, mebibytes, gibibibytes, tebibytes, pebibytes, e exbibytes. A unidade em uso é o primeiro item nas linhas quatro e cinco.
Pressionar “e” minúsculo para fazer o mesmo para os valores na lista de processo: kibibibytes, mebibytes, gibibytes, tebibytes, e pebibytes.
Pressionamos E para definir as unidades de memória do painel de instrumentos para gibibytes e “e” para definir as unidades de memória da lista de processo para mebibytes.
Modificando o Conteúdo Sumário
P>Pode alterar as definições de visualização das linhas no tablier ou removê-las completamente.
Pressionar l para ligar ou desligar a linha de resumo da carga (a primeira linha). Removemos a linha do resumo da carga na imagem abaixo.
Se tiver uma CPU multi-core, prima 1 para alterar o visor e ver as estatísticas individuais de cada CPU. Existem quatro CPUs no nosso computador. Pressionamos 1 para ver o quão difícil cada uma delas está a funcionar.
Obviamente, isto ocupa mais espaço no ecrã dentro da janela do terminal.
Pode premir “t” para trocar as exibições da CPU por gráficos ASCII simples que mostram a percentagem de utilização para cada CPU.
Para cada CPU, top
exibe três números e o gráfico. Da esquerda para a direita, os números são os seguintes:
- O combinado
us
eni
percentagem (espaço do utilizador+tarefas com definições não padronizadas e agradáveis). - O
sy
percentagem (espaço de núcleo). - O total (arredondado para um valor inteiro).
pressionar “t” novamente para alterar a visualização gráfica para caracteres de bloco sólido.
Pressione “t” mais uma vez para remover completamente a exibição da CPU e a linha de resumo de tarefas.
Pressiona “m” para fazer o ciclo da memória e trocar as linhas de memória através de diferentes opções de visualização. A primeira pressão substitui as estatísticas por um gráfico ASCII.
Outra pressão altera o gráfico para bloquear caracteres.
Pressiona “m” mais uma vez para remover as linhas de CPU ao mesmo tempo.
Se quiser, pode ver gráficos de CPU e memória ao mesmo tempo. Basta premir “t” e “m” até obter a combinação desejada.
Cor e Realce
P>Pode premir “z” para adicionar cor ao mostrador.
Quando pensa em top
, provavelmente não pensa em ecrãs coloridos e gráficos ASCII, mas são construídos directamente em.
Pressiona “y” para destacar tarefas em execução na lista de processos. Ao premir “x” realça a coluna utilizada para ordenar a lista de processos. Pode alternar entre realce de texto a negrito e invertido premindo “b.”
Selecção por colunas
Por defeito, a lista de processos é ordenada pela coluna %CPU
. Pode alterar a coluna de ordenação pressionando a seguinte:
- P: A coluna
%CPU
. - M: O
%MEM
coluna. - N: O
PID
coluna. - T: O
TIME+
coluna.
Na imagem abaixo, a lista do processo é ordenada pela coluna PID
.
Veja a linha de comando completa
Pressing “c” alterna a coluna COMMAND entre a exibição do nome do processo e a linha de comando completa.
Para ver uma “árvore” de processos que foram lançados ou desovados por outros processos, prima V.
Ver Processos para um único utilizador
Pressionar “u” para ver os processos para um único utilizador. Ser-lhe-á pedido o nome ou UID.
Digite o nome do UID da pessoa que pretende monitorizar. Vamos escrever “dave” e clicar em “Enter”. Agora, os únicos processos na área de tarefas pertencem ao utilizador dave
.
Apenas Ver Tarefas Activas
Pressionar I para ver apenas tarefas activas.
Tarefas que não tenham consumido nenhum CPU desde a última actualização não serão mostradas.
Definir quantos processos a mostrar
Pressionar “n” para limitar a exibição a um certo número de linhas, independentemente de as tarefas estarem activas. Ser-lhe-á pedido o número de processos a exibir.
Digitamos 10 e premimos Enter, pelo que aparecem 10 processos na área de tarefas.
Reniciar um Processo
P>P>Pode premir “r” para alterar o valor agradável (prioridade) de um processo. Ser-lhe-á pedido o ID do processo. Basta premir Enter para utilizar a ID do processo da tarefa no topo da janela do processo. Digitamos 7800, que por acaso é o ID de processo de uma instância do Firefox.
Depois de premir Enter, é-lhe solicitado o novo valor simpático a aplicar ao processo. Escrevemos 15, e depois premimos Enter.
O novo valor agradável é aplicado ao processo imediatamente.
RELATADO: Como definir prioridades de processo com nice e renice no Linux
Kill a Process
Pressionar “k” para matar um processo. Ser-lhe-á então pedido o ID do processo que pretende matar. Na verdade, pode enviar qualquer sinal para o processo. Vamos matar o processo 7879, que parou de responder.
Ser-lhe-á dada a oportunidade de digitar o sinal que deseja enviar. Pode especificá-lo pelo nome ou número. Se simplesmente premir Enter, top
envia o sinal SIGTERM
(kill).
Assim que premir Enter, o sinal é enviado para o processo.
RELATADO: Como Matar Processos do Terminal Linux
Customizing the Display
P>Pode também personalizar as cores e colunas que são exibidas. Vamos alterar a cor utilizada para os avisos, cujo padrão é vermelho.
Pressionar Z maiúsculo para ir para a página de definições de cores. A parte superior do ecrã mostra as cores em uso pelos diferentes elementos do ecrã. Para indicar qual elemento do ecrã pretende alterar, prima um dos seguintes, que são sensíveis a maiúsculas/minúsculas:
- S: Área de dados resumidos.
- M: Mensagens e avisos.
- H: Títulos das colunas.
- T: Informação de tarefas na lista de processos.
Pressionamos M para alterar os prompts.
Para escolher uma cor, prima um dos seguintes números:
- 0: Preto.
- 1: Vermelho.
- 2: Verde.
- 3: Amarelo.
- 4: Azul.
- 5: Magenta.
- 6: Cyan.
- 7: Branco.
p> Pressionamos 6 para usar cyan.
janela de definições de cor com a cor 6 seleccionada, numa janela terminal.
Pressiona Enter para guardar as suas definições. Os pedidos de entrada estarão agora na cor seleccionada.
p>Podemos também alterar as colunas exibidas no ecrã Gestão de Campos. Prima F para entrar no ecrã de Gestão de Campos.
Campos que são exibidos têm um asterisco (*
) ao lado deles e estão destacados a negrito. Prima as setas para cima e para baixo para mover o destaque através da lista de campos.
Se mover o destaque para fora da parte inferior de uma coluna, este aparecerá no topo da coluna seguinte (a menos que esteja na parte inferior da última coluna). Se o mover do topo de uma coluna, aparecerá no fundo da anterior (a menos que esteja no topo da primeira coluna).
Movemos o destaque para COMMAND
entrada, e depois premimos “d” para remover o asterisco (*
). Seguidamente passámos para o UID
entrada, e pressionámos “d” para colocar um asterisco junto a essa entrada. Isto significa que a coluna não será exibida, mas a coluna UID
irá.
Enquanto o destaque está na coluna UID
, premimos “s” para ordenar a lista de processos na coluna UID
coluna.
Pressione Enter para guardar as suas configurações, e depois prima “q” para sair do ecrã de Gestão de Campos.
A coluna UID
substituiu a coluna , e a lista de processos é ordenada por ela.
Modo de exibição alternativo
Isto funciona melhor em modo de ecrã inteiro. Prima A para exibir quatro áreas na lista de processos, e depois prima “a” para passar de área para área.
Cada área tem uma colecção diferente de colunas, mas cada uma é também personalizável através do ecrã de Gestão de Campos. Isto dá-lhe a possibilidade de ter um ecrã completo e personalizado mostrando informações diferentes em cada área, e a capacidade de ordenar cada área por uma coluna diferente.
Outras teclas
As seguintes são algumas outras teclas que poderá achar úteis em top
:
- W: Guarde as suas configurações e personalizações para que ainda estejam em vigor na próxima vez que iniciar
top
. - d: Defina uma nova taxa de actualização do ecrã.
- Espaço: Force
top
para actualizar a sua exibição agora mesmo.
Top Banana
Como vimos, top
tem um repertório e tanto. Outros programas, tais como htop
, foram inspirados por ele, mas cada um deles tem a sua própria concepção.
No entanto, top
está instalado em todo o lado. Quando vai a empresas para ver redes ou servidores, ser-lhe-á muitas vezes dito que nada pode ser alterado nos servidores ao vivo. O cliente faz as regras, por isso tem de usar o que já está instalado.
p>Even se preferir uma ferramenta de monitorização diferente, deverá conhecertop
. Mais cedo ou mais tarde, é provável que se encontre numa situação em que só terá acesso a.
Dave McKay usou pela primeira vez computadores quando a fita de papel perfurado estava em voga, e tem vindo a programar desde então. Após mais de 30 anos na indústria das TI, é agora um jornalista de tecnologia a tempo inteiro. Durante a sua carreira, trabalhou como programador freelance, gestor de uma equipa internacional de desenvolvimento de software, gestor de projectos de serviços de TI e, mais recentemente, como responsável pela protecção de dados. Dave é um evangelista Linux e defensor do código aberto. Leia a biografia completa ”