Quante volte avete avviato un
dd e avete atteso con ansia l'esito della scrittura?
Di solito, quando usiamo questo tool, lo avviamo e speriamo che tutto vada per il meglio, senza avere la possibilità di sapere se il processo è attivo, quanti dati abbiamo già trasmesso e
soprattutto quanto manca alla fine!
Se poi, per qualche motivo c'è un calo di tensione o per un falso contatto etc. il client si scollega per un attimo, perde inevitabilmente dati preziosi.
Per questo uso un workaround
per controllare lo stato e l'avanzamento del comando dd :
pvpv è un altro software (presente nei repository) che concatena file(s) o un input con un output, e va installato a parte con:
#apt-get install pv
e si può usare con le opzioni aggiuntive presenti nel suo
pv --help
ma noi le ometteremo.
Come si usa:basta concatenare l'input del nostro comando con l'output di pv attraverso delle
| "pipe" o barra verticale You are not allowed to view links.
Register or
LoginNel nostro caso è abbastanza semplice, genericamente si fa così:
dd if=input |pv| dd of=output
un esempio più completo:
sudo dd if=/dev/sdb1 |pv| sudo dd of=/dev/sdc1 && sync
l'output sarà una stringa dinamica che indica la quantità dei dati trasmessi, il tempo trascorso e la velocità di trasferimento, del tipo:
6,13GiB 0:28:59 [3,61MiB/s]
Ciò rende possibile una stima del tempo mancante molto realistica (facendo 2 conti al volo) ed evidenzia eventuali problemi, oltre a dare la certezza che lo script avviato stia procedendo come previsto.
In fine ci mostra un risultato tipo:
6580862976 byte (6,6 GB) copiati, 1748,43 s, 3,8 MB/s
che può servire a capire se i dati scritti sono gli stessi previsti.
Spero possa tornare utile a qualcuno.