MiniTipp: I/O Statistiken eines laufenden «dd» anzeigen
Möchte man eine exakte Kopie einer Festplattenpartion anlegen oder eine Partition mit Zufallswerten vollschreiben ist dd das Mittel der Wahl.
Um z.B den Inhalt von
/dev/sda
auf /dev/sdb
zu kopieren, tippt man
# dd if=/dev/sda of=/dev/sdb bs=4M
Um /dev/sdb5
mit Zufallswerten vollzuschreiben dagegen tippte man
# dd if=/dev/urandom of=/dev/sdb5 bs=4M
Je nach Größe der Partition kann dieser Prozess durchaus mehrere Stunden in Anspruch nehmen. Am Ende aber gibt dd die I/O-Statistiken aus:
743+0 records in 743+0 records out 3116367872 bytes (3.1 GB) copied, 88.7885 s, 35.1 MB/s
Möchte man nun aber eine 2 TB große Partition mit Zufallswerten vollschreiben, würde man dann doch gerne etwas über den Fortschritt der Aktion erfahren - schließlich lässt sich die Kopiergeschwindigkeit schwer vorhersagen.
Dazu sendet man einfach ein USR1
-Signal an den dd
-Prozess und
dd
schreibt die I/O Statistiken nach stdout. Zunächst benötigen wir natürlich
die Prozess-ID:
# ps -ef | grep -w '[d]d' root 12731 11445 0 21:51 pts/1 00:00:00 dd if=/dev/random of=/dev/sdb5 bs=4M
Dann senden wir das USR1
-Signal...
# kill -USR1 12731
und dd
gibt den Kopierfortschritt aus, arbeitet aber weiter. Die Ausgabe erscheint
natürlich auf dem Terminal, auf dem das dd-Kommando abgesetzt wurde und nicht dort, wo wir
den kill
-Befehl abgesetzt haben.
# dd if=/dev/urandom of=/dev/sdb5 bs=4M 0+1151 records in 0+1151 records out 9237 bytes (9.2 kB) copied, 0.391 s, 23.1 kB/s _