Comandos úteis para monitoramento em Línux

Comentarios


Olá pessoal!
Pensei em iniciar o blog com alguma informação útil, por isso estou postando essa lista de comandos úteis, meu pequeno canivete suíço para monitorar processos, memória, processamento, logs.. ou seja, o estado geral da máquina.
Muito útil para administrar servidores Linux, mas serve também para ver se aquele processozinho que está te cismando realmente está atrapalhando o desempenho.

Free

Resumo da memória em Linux.
Exibe a quantidade de memória RAM disponível, quanto desta está sendo utilizado, quanto há de memória livre. Exibe também a memória compartilhada, buffer, cache e swap utilizada pelo kernel Linux.

Exemplos de uso:

free -m
Este comando exibe a memória física em MB.

free -h
Exibe a memória em modo mais fácil para a leitura humana, ou seja, agrupada em MB e GB.

free -m -s 5
Cria um loop de chamadas com delay de 5 segundos, ou seja, a cada 5 segundos, você terá os valores exibidos no terminal (ou onde você quiser direcionar a saída de tela) em megabytes. O intervalo de tempo pode ser modificado a sua escolha.

Vmstat

Exibe várias informações sobre memória, sistema e CPU, como swap, memória livre, buffer, memória cache, espaço para paginação, atividade de IO, traps entre outros.
Exemplos de uso:

vmstat
Indicará dados desde o último reboot da máquina.

vmstat 5
O comando indicará dados desde o último reboot da máquina e repetindo a informação de 5 em 5 segundos.

Ps

O comando ps mostra, de maneira estática, os processos que estão sendo executados no sistema. Suas opções mais comuns são:
a - Lista todos os processos criados.
x - Lista os processos que não são controlados pelo terminal.
u - Lista o nome do usuário e a hora que o processo foi iniciado.
--help - Mostra a ajuda do comando ps.
man ps - Mostra o manual completo do comando.

Exemplo de uso:

ps -aux
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND root         1  0.0  0.2  33504  2756 ?        Ss   13:45   0:01 /sbin/init root         2  0.0  0.0      0     0 ?        S    13:45   0:00 [kthreadd] root         3  0.0  0.0      0     0 ?        S    13:45   0:00 [ksoftirqd/0] root         5  0.0  0.0      0     0 ?        S<   13:45   0:00 [kworker/0:0H] root         6  0.0  0.0      0     0 ?        S    13:45   0:00 [kworker/u2:0] root         7  0.0  0.0      0     0 ?        S    13:45   0:00 [rcu_sched] root         8  0.0  0.0      0     0 ?        S    13:45   0:00 [rcuos/0] root         9  0.0  0.0      0     0 ?        S    13:45   0:00 [rcu_bh] root        10  0.0  0.0      0     0 ?        S    13:45   0:00 [rcuob/0] root        11  0.0  0.0      0     0 ?        S    13:45   0:00 [migration/0] root        12  0.0  0.0      0     0 ?        S    13:45   0:00 [watchdog/0] root        13  0.0  0.0      0     0 ?        S<   13:45   0:00 [khelper] root        14  0.0  0.0      0     0 ?        S    13:45   0:00 [kdevtmpfs] root        15  0.0  0.0      0     0 ?        S<   13:45   0:00 [netns]   
 

A saída do comando é uma tabela onde cada coluna fornece uma informação, como descrito abaixo:

USER - Nome do usuário dono do processo.
UID - Número de identificação do usuário dono do processo.
PID - Número de identificação do processo.
PPID - Número de identificação do processo pai de cada tarefa.
PRI - Número de prioridade da tarefa. (Números altos são prioridades baixas).
NI - Valor preciso da prioridade da tarefa.
%CPU - O consumo de processamento do processo.
%MEM - O consumo de memória do processo.
SIZE - Tamanho do código da tarefa em kilobytes.
RSS - Soma total da memória física usada pelo processo, em kilobytes.
WCHAN - Endereço ou nome da função do kernel da tarefa que está atualmente suspensa.
STAT - Estado do processo: S - Suspenso, R - em Execução, T - Interrompido, Z - Terminado, etc.
TTY - Terminal onde são executados os processos.
TIME - Tempo total da CPU usado pelo processo desde que foi iniciado.
COMMAND - Nome do comando do processo.


Caso queira apenas informações sobre um processo específico. Veja o exemplo, que lista as informações sobre o cron:

# ps aux | grep cron
root  347  0.0  0.3  1652  680 ?        S    09:00   0:00 /usr/sbin/cron


pstree

O comando pstree é usado para visualizar a árvore de processos.
# pstree
init-+-alarmd      |-apache---5*[apache]      |-atd      |-cron      |-6*[getty]      |-i2oevtd      |-inetd

Top

O comando top é utilizado como um monitor do sistema, mostra a atividade do processador em tempo real. Exibindo as tarefas que estão sendo executadas na CPU e fornecendo uma interface amigável para o gerenciamento de processos.
Os processos exibidos ficam ordenados por ordem de consumo, facilitando a visualização.

Exemplo de uso:

top
top - 15:58:30 up  2:13,  2 users,  load average: 0,00, 0,02, 0,05 Tarefas:  80 total,   2 executando,  78 dormindo,   0 parado,   0 zumbi %Cpu(s):  0,3 us,  0,7 sy,  0,0 ni, 98,7 id,  0,0 wa,  0,3 hi,  0,0 si,  0,0 st KiB Mem:   1017916 total,   550056 used,   467860 free,    25348 buffers KiB Swap:  1951740 total,        0 used,  1951740 free.   216500 cached Mem   PID USUÃRIO  PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND     1 root      20   0   33504   2756   1400 S  0,0  0,3   0:01.78 init     2 root      20   0       0      0      0 S  0,0  0,0   0:00.00 kthreadd     3 root      20   0       0      0      0 S  0,0  0,0   0:00.01 ksoftirqd/0     5 root       0 -20       0      0      0 S  0,0  0,0   0:00.00 kworker/0:0H     6 root      20   0       0      0      0 S  0,0  0,0   0:00.73 kworker/u2:0     7 root      20   0       0      0      0 S  0,0  0,0   0:00.19 rcu_sched     8 root      20   0       0      0      0 R  0,0  0,0   0:00.23 rcuos/0     9 root      20   0       0      0      0 S  0,0  0,0   0:00.00 rcu_bh    10 root      20   0       0      0      0 S  0,0  0,0   0:00.00 rcuob/0    11 root      rt   0       0      0      0 S  0,0  0,0   0:00.00 migration/0    12 root      rt   0       0      0      0 S  0,0  0,0   0:00.08 watchdog/0    13 root       0 -20       0      0      0 S  0,0  0,0   0:00.00 khelper    14 root      20   0       0      0      0 S  0,0  0,0   0:00.00 kdevtmpfs    15 root       0 -20       0      0      0 S  0,0  0,0   0:00.00 netns    16 root       0 -20       0      0      0 S  0,0  0,0   0:00.00 writeback     

Du

O comando "du" é utilizado para saber o espaço utilizado em disco, por pastas ou arquivos, de maneira rápida e fácil.

Exemplos de uso:

 du -h *
Exibe o tamanho de todos os arquivos (*) do diretório corrente em unidades humanas (KB, MB, GB, etc).
8,0K    apache2.conf 28K     conf-available 4,0K    conf-enabled 4,0K    envvars    


du -hs /etc/apache2/
Exibe o tamanho do diretório /etc/apache2 em unidades humanas de forma sumarizada.
644K         /etc/apache2/

Df

O comando "df" mostra o espaço livre e em uso de cada partição. Pode ser utilizado junto com várias opções, mas quando utilizado sozinho, mostrará o espaço usado e disponível de todos os sistemas de arquivos atualmente montados.

Exemplos de uso:

df –a
Sist. Arq.     1K-blocks   Usado Disponível Uso% Montado em /dev/sda5       28908412 1894116   25522792   7% / proc                   0       0          0    - /proc sysfs                  0       0          0    - /sys none                   4       0          4   0% /sys/fs/cgroup none                   0       0          0    - /sys/fs/fuse/connections none                   0       0          0    - /sys/kernel/debug none                   0       0          0    - /sys/kernel/security udev              498152       4     498148   1% /dev devpts                 0       0          0    - /dev/pts tmpfs             101792     512     101280   1% /run none                5120       0       5120   0% /run/lock none              508956       0     508956   0% /run/shm none              102400       0     102400   0% /run/user none                   0       0          0    - /sys/fs/pstore systemd                0       0          0    - /sys/fs/cgroup/systemd      df -hT
Mostra o espaço livre/ocupado em MB, KB, GB ao envéz de blocos e o tipo de sistema de arquivos de cada partição.

Sist. Arq.      Tam. Usado Disp. Uso% Montado em /dev/sda5        28G  1,9G   25G   7% / none            4,0K     0  4,0K   0% /sys/fs/cgroup udev            487M  4,0K  487M   1% /dev tmpfs           100M  512K   99M   1% /run none            5,0M     0  5,0M   0% /run/lock none            498M     0  498M   0% /run/shm none            100M     0  100M   0% /run/user
 


Opções:
a - inclui sistema de arquivos com 0 blocos
-h - mostra o espaço livre/ocupado em MB, KB, GB ao envéz de blocos.
-k - lista em Kbytes
-l - somente lista sistema de arquivos locais
-m - lista em Mbytes
-T - lista o tipo de sistema de arquivos de cada partição.



Tail

O comando tail pode ser utilizado para examinar as últimas linhas de um arquivo, nada que o comando Cat já não faça, porém, o que o torna muito especial é o parâmetro "-f" que permite a visualização dinâmica de um arquivo, ou seja, as linhas são exibidas na tela na medida em que são geradas. Isso torna o comando Tail importantíssimo quando se deseja monitorar um log, por exemplo.

Exemplos de uso:

tail /etc/passwd
Exibe as dez últimas linhas do arquivo /etc/passwd.

tail -n 20 /etc/passwd
É possível também especificar o número de linhas a serem exibidas, ao invés das dez linhas que o comando adota como padrão.

tail -f /var/log/apache2/error.log
Além de listar as 10 ultimas linhas do arquivo, mostrará as linhas que forem sendo "apendadas" a este em tempo real.

É isso aí! Espero ter ajudado alguém, pois quando iniciei os estudos com Linux, não conhecia nada, e tinha muita dificuldade quando surgia "a tal tela preta". kkkk

#Compartilhar: Facebook Twitter Google+ Linkedin Technorati Digg

0 comentários:

Tecnologia do Blogger.