GNU/Linux >> Linux Esercitazione >  >> Linux

Ho un alto io stat. Alta scrive. Ma quali file vengono scritti?

Bene, potresti provare i seguenti comandi che hanno funzionato per me in RHEL6:

1) Qualunque dispositivo tu veda nell'output "iostat" che esegue più I/O, usalo con fuser comando come segue:

fuser -uvm device

2) Otterrai un elenco di processi con il nome utente che causa più I/O. Seleziona quei PIDS e usali nel lsof comando come segue:

lsof -p PID | more

3) Otterrai un elenco di file/directory insieme all'utente che esegue il massimo I/O.


Sembra che non ci siano strumenti per scoprire il throughput I/O per file se non all'interno del processo che utilizza il file. Ma ci sono modi per scoprire il throughput I/O del processo.

iotop - È un'utilità simile a top/iftop che mostra il throughput I/O del processo.

Dopo aver individuato quale processo sta avendo un I/O pesante, usa quanto segue per scoprire quale file è in uso

lsof -c <process name>

Ciò dovrebbe restringere l'ambito e aiutare a individuare la fonte.


Puoi usare inotifywait da inotify-tools per scoprire esattamente in quale file viene scritto. Questo non ti dirà quanti dati vengono scritti, ma almeno ti dirà su quali file vengono scritti man mano che accade.

Ad esempio, questo comando stamperà il nome del file non appena ne vengono creati, modificati o eliminati in /tmp :

$ sudo inotifywait -e modify -e attrib -e move -e create -e delete -m -r /tmp
Setting up watches.  Beware: since -r was given, this may take a while!
Watches established.
/tmp/ CREATE test
/tmp/ MODIFY test

Sfortunatamente dovrai indovinare quale directory contiene i file in cui stai scrivendo. Questo fallisce se provi ad usarlo nella directory root, anche se apparentemente può essere sovrascritto:

$ sudo inotifywait -e modify -e attrib -e move -e create -e delete -m -r /
Setting up watches.  Beware: since -r was given, this may take a while!
Failed to watch /; upper limit on inotify watches reached!
Please increase the amount of inotify watches allowed per user via `/proc/sys/fs/inotify/max_user_watches'.

Linux
  1. Trovare e rimuovere file di grandi dimensioni che sono aperti ma sono stati eliminati?

  2. Linux – Determinazione di file specifici responsabili di I/o elevati?

  3. Cosa sono i file .run?

  4. Cosa sono i file sparsi in Linux

  5. Trova quali file ci sono in un pacchetto in Ubuntu

N Equivalente a Top ma per I/o di rete?

7zip, Xz, Gzip, Tar, ecc:quali sono le differenze??

Configura le unità flash nelle istanze con I/O elevato come unità dati

Qual è l'equivalente Unix/Linux dell'I/O registrato?

Quali sono le differenze tra lsof e netstat su Linux?

In quali unità sono le misure I/O nel tempo GNU?