Pular para o conteúdo

iotop - Cheatsheet de Monitor de I/O de Disco Por-Processo

iotop - Cheatsheet de Monitor de I/O de Disco Por-Processo

iotop é um utilitário tipo-top que exibe uso de I/O de disco por processo em tempo real. Enquanto iostat diz que um device está ocupado, iotop diz qual processo está fazendo a leitura e escrita, a que taxa e com que prioridade de I/O. É a forma mais rápida de responder “o que está batendo no disco agora?” Lê dados de accounting do kernel e por isso precisa de root para fazer isso.

Instalação

PlatformCommand
Debian/Ubuntusudo apt install iotop
Fedora/RHELsudo dnf install iotop
Arch Linuxsudo pacman -S iotop
RequisitoKernel com CONFIG_TASK_IO_ACCOUNTING (padrão)
Verificarsudo iotop --version

Executando

CommandDescrição
sudo iotopVisualização interativa ao vivo de todos os processos
sudo iotop -oApenas mostre processos realmente fazendo I/O
sudo iotop -aMostre I/O acumulado (totais, não taxas)
sudo iotop -PMostre processos (não threads individuais)
sudo iotop -u USERFiltre por usuário
sudo iotop -d 5Atualize a cada 5 segundos

O Display

ColumnSignificado
TID/PIDID de thread ou processo
PRIOClasse de prioridade de agendamento de I/O
USERProprietário do processo
DISK READTaxa de leitura atual
DISK WRITETaxa de escrita atual
SWAPIN% de tempo gasto fazendo swap in
IO% de tempo aguardando I/O
COMMANDLinha de comando do processo

Duas linhas de header mostram Total e Actual disco read/write para todo o sistema.

Teclas Interativas

KeyAção
oAlterne --only (oculte processos inativos)
aAlterne acumulado vs taxa
pAlterne processos/threads
rInverta a ordem de classificação
/ Mude a coluna de classificação
qSaia

Modo Batch / Logging

Para scripts e captura de evidência, execute não-interativamente.

# Log os top processos de I/O a cada 2s, 10 iterações, apenas os ativos
sudo iotop -boPqqq -d 2 -n 10 > iotop.log
FlagEfeito
-bModo batch (não-interativo)
-oApenas processos ativos
-n NNúmero de iterações
-qSilencioso (repita para suprimir headers)
-kKilobytes

Fluxos de Trabalho Comuns

# "O que está escrevendo para disco agora?" — apenas ativos, processos não threads
sudo iotop -oP

# Apanhe um spike de I/O periódico ao longo do tempo
sudo iotop -boP -d 1 -n 60 > spikes.log

# Culpe os processos de um usuário pela carga de disco
sudo iotop -oP -u appuser

I/O Priority (pareia com ionice)

iotop mostra a PRIO (ionice) classe; você muda com ionice.

ionice classSignificado
ionice -c 1Prioridade de I/O em tempo real
ionice -c 2 -n 0..7Best-effort (padrão), nível 0 = máxima
ionice -c 3Idle — apenas I/O quando disco estiver livre
# Desprioritize a I/O de disco de um job batch pesado
ionice -c 3 -p $(pgrep -n backup)

iotop vs Ferramentas Relacionadas

ToolRespostas
iotopQual processo está fazendo I/O de disco
iostatSe o device está saturado
pidstat -dI/O por-processo (scriptável, sysstat)
dstat/doolVisualização combinada de sistema

Fluxo de trabalho: iostat mostra o disco está ocupado → iotop mostra qual processo → ionice desprioritiza.

Recursos