Saiba como está seu linux utilizando sysstat

Para quem é antigo de UNIX/Linux, sabe quão importante é saber exatamente como está se comportando o seu sistema, em windows existe o famigerado Task Manager, mas em Linux, bem, em Linux temos um maravilhoso conjunto de ferramentas chamado sysstat.
Obviamente é para linha de comando e pode mostrar dese I/O de disco (partição a partição), até utilização de RAM e CPU e muito mais. Como é uma suite, existem vários comandos, aqui vai um exemplo bem simples de um deles, o chamado vmstat:

procs ———–memory———- —swap– —–io—- –system– —–cpu——
r b swpd free buff cache si so bi bo in cs us sy id wa st
3 1 0 301868 119136 7629144 0 0 22376 10052 895 213 1 33 27 40 0
4 0 0 299284 119044 7632176 0 0 16788 17320 742 122 1 33 44 22 0
2 1 0 293200 119044 7632568 0 0 256 87068 141 15 0 100 0 0 0
2 1 0 294688 119044 7632568 0 0 0 9152 107 8 0 47 0 53 0

A saída aqui não é das melhores, mas no terminal fica tudo identado de fácil visualição, isso foi retirado durante uma grande movimentação de arquivos de um disco para outro, por isso o alto I/O e pouca utilização da CPU.
Outro comando interessante, para ver exatamente I/O é o iostat:

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
0.72    0.01   14.68   21.53    0.00   63.06

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sda               4.43       227.78        32.91     340106      49146
sda1              0.03         1.24         0.00       1846          2
sda2              4.38       226.34        32.91     337956      49144
sdb             132.90     13194.64        52.47   19701314      78344
sdb1            132.88     13194.12        52.47   19700538      78344
sdc              26.69         4.02     13190.62       6006   19695312
sdc1             26.66         3.50     13190.62       5230   19695312
dm-0              9.19       220.11        32.14     328650      47992
dm-1              0.14         1.13         0.01       1682         16
dm-2              0.23         1.75         0.10       2618        152
dm-3              0.12         0.94         0.04       1402         56
dm-4              0.17         0.76         0.61       1130        912
dm-5              0.11         0.87         0.01       1298         16
dm-6              0.05         0.39         0.00        584          0
dm-7            201.37     13193.93        52.47   19700258      78344
dm-8           1649.28         3.14     13191.11       4690   19696040

Como falei, estou fazendo muito I/O, e aqui é possível ver quanto e de onde está sendo feito, segundo a segundo.
Outro comando interessante é o chamado sar, ele tira snapshots de tempos em tempos e te mostra uma média da performance do sistema:

08:49:03 AM       LINUX RESTART

08:50:01 AM       CPU     %user     %nice   %system   %iowait    %steal     %idle
09:00:01 AM       all      0.17      0.00      4.84      6.31      0.00     88.68
09:10:03 AM       all      0.60      0.00     22.13     41.36      0.00     35.92
Average:          all      0.36      0.00     12.47     21.78      0.00     65.40

Preciso falar mais algo? Dêm uma olhada no man desses comandos (ele possui links para todos os outros comandos) e brinquem um pouco com as opções, essa suite é muito útil para scripts e programas em geral, ou apenas para ver ;)

Abraços e até a próxima

About Zarnick

Programer, sysadmin, guitarrist, and Italian. That's what I am. Plain simple.
OpenSource, Stuffs, Tips , , , , , ,