Iotop je dobrý nástroj pro to, co chcete. Umožňuje také zobrazit akumulované množství I/O na libovolném z DISK READ, DISK WRITE, SWAPIN a IO (celkové procento). To je prostřednictvím šikovného rozhraní:
- Stačí stisknout a na klávesnici a ty nejhladovější procesy seřadí navrch.
- Chcete-li obrátit pořadí, stačí stisknout r .
- Pokud chcete třídit podle jiných sloupců, stačí stisknout klávesu doleva/doprava.
Jako top
, prezentace je poměrně nabitá. Další věc je, že nemá nespočet možností, které top
má (např. nemohu se rozhodnout skrýt žádný ze sloupců, o které nemám zájem), ale nástroj je pro svůj konkrétní účel více než dost dobrý.
Můžete použít lsof
(člověk lsof). Následující vrátí seznam všech souborů, které jsou otevřené pro zápis:
lsof | grep -e "[[:digit:]]\+w"
Zejména pro nízkou aktivitu disku je nutné používat iotop v dávkovém režimu, aby se zabránilo rychlému mizení krátkých přístupových linek. Odpověď podle Jak mohu v Linuxu protokolovat čtení/zápis souborového systému podle názvu souboru? ukazuje, jak to udělat.
Zatím
iotop
je nejlepším celkovým řešením. Následující příkaz vám poskytne výstup všech procesů využívajících disk v reálném čase.
iotop -bktoqqq -d .5
where: -b is batch mode
-k is kilobytes/s
-t adds timestamp
-o only show processes or threads actually doing I/O
-qqq removes output headers
-d .5 updates every .5 seconds
Jakmile budete mít ID procesu, můžete soubory najít také pomocí
lsof -p $PID