USB-Datenträger - Schreibfortschritt überprüfen

Alle möglichen kleinen Tipps
beluga

USB-Datenträger - Schreibfortschritt überprüfen

Beitrag von beluga »

USB-Datenträger an veralteten USB-2.0-Ports verhalten sich bei der Datenübertragung großer Einzeldateien tückisch.
Auf einem Linux-System transferieren die Daten nur auf den ersten Blick schnell auf das Medium.
Ein ähnliches Szenario bietet sich bei vermeintlich schnellen USB-Sticks mit 3.x Standard von No-Name Herstellern.

Fakt ist, dass der Kernel die Daten vorläufig erst ins RAM schreibt. Bis alle Schreibaktionen auf langsamen USB-Sticks endgültig abgeschlossen sind, dauert es jedoch noch eine ganze Weile, auch wenn der verwendete Dateimanager bzw. das Tool dd den erfolgreichen Abschluss der Aktion vermeldet.
Aus dem Cache werden die Daten unter Linux erst dann geschrieben, wenn der Datenträger ausgehängt wird, oder der Befehl sync im Terminal erteilt wird. Das kann bei sehr großen Dateien eine gefühlte Ewigkeit dauern, zumal eine Statusanzeige fehlt. Um die verbleibende Zeit besser abschätzen zu können, helfen zwei Kommandos, die zunächst sync im Hintergrund aufrufen und dieser per watch die Bytes im Cache anzeigen, die noch nicht physisch auf den verwendeten Datenträger geschrieben wurden:

Code: Alles auswählen

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

Nun kann man im Terminal die stets aktualisierte Zeile "Dirty" verfolgen, mit einem Wert an Daten, der fortlaufend kleiner wird. Sobald hier der Wert 0 erreicht wird, ist die Übertragung garantiert abgeschlossen.
bild 1.jpg
Damit bei Übertragungen von mehreren hundert Megabyte oder mehr Volumen beispielsweise mit dd oder ähnlichen Tools die Imagedateien auf USB-Sticks u. ä. nicht zum uneinschätzbaren Geduldsspiel ausarten, kann diese Methode Abhilfe schaffen.

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste