GNU/Linux >> Linux Esercitazione >  >> Linux

Posso vedere l'avanzamento di un'operazione di "sincronizzazione"?

Guardando /proc/meminfo mostrerà il Dirty numero che si riduce nel tempo man mano che tutti i dati escono; parte di esso potrebbe riversarsi in Writeback anche. Questo sarà un riepilogo rispetto a tutti i dispositivi, ma nei casi in cui un dispositivo sul sistema è molto più lento degli altri, di solito finirai dove tutto in quella coda è correlato ad esso. Probabilmente troverai il Dirty numero grande quando inizi e il sync termina all'incirca nello stesso momento in cui si avvicina a 0. Prova questo per ottenere un display interattivo:

watch -d grep -e Dirty: -e Writeback: /proc/meminfo

Con i normali dischi posso normalmente ignorare Writeback , ma non sono sicuro che sia coinvolto più spesso nel percorso di trasferimento USB. Se semplicemente rimbalza su e giù senza una chiara tendenza, probabilmente puoi semplicemente guardare il Dirty numero.


Puoi guardare il /sys/block/<device>/stat file per il dispositivo appropriato durante la sincronizzazione. La colonna 9 indicherà il numero di richieste in transito sul dispositivo, che dovrebbe scendere a zero al termine della sincronizzazione.
Non conosco un modo per tradurlo in un numero di byte, ma dovrebbe darti un'idea approssimativa di quanta "roba" è ancora in sospeso.

Vedere il file stat.txt nella documentazione del kernel per ulteriori informazioni. (C'è anche un inflight file in quella directory sul mio sistema che sembra contenere richieste di lettura e scrittura in volo, ma non riesco a trovare documenti per questo.)


Usando la risposta di Greg, puoi semplicemente avere sync eseguito in background durante la visualizzazione dello stato del blocco Dirty in memoria.

Per ottenere ciò, esegui semplicemente questo comando:

sync & watch -n 1 grep -e Dirty: /proc/meminfo

Questo chiamerà sync in background durante l'esecuzione di watch nella parte anteriore. Quando il sync il comando sarà terminato (intorno a quando la dimensione del blocco Dirty avrà raggiunto lo 0), avrai un output simile a questo:

1]  + 27260 done        sync

Ciò significa che il comando è terminato e puoi terminare il watch comando con Ctrl +C .


Linux
  1. Come posso trovare la versione di Fedora che uso?

  2. Come posso ottenere lo stato della tastiera in Linux?

  3. PyODBC:impossibile aprire il driver anche se esiste

  4. Come posso monitorare la lunghezza della coda di accettazione?

  5. Posso cambiare il SID di un database Oracle?

Guarda i video di YouTube sul terminale Linux

Cos'è il comando Linux Watch + Esempi

7 modi per usare il comando Linux Watch

Backup della home directory - La guida rapida e sporca

Risolto l'errore, impossibile trovare il comando hwmatch su Grub

Non riesci a trovare .so nella stessa directory dell'eseguibile?