Wie lange dauert es, ein Laufwerk mit dd auf null zu setzen? [geschlossen]


14

Wie lange dauert es, bis 1 TB auf Null gefüllt sind (mit dd dev / zero)?

Ich mache eigentlich zwei 500G gleichzeitig, wenn es darauf ankommt.


3
Sagen Sie uns, wie lange hat es gedauert, die Laufwerke mit Nullen zu versehen?
Rolnik

1
Mein WD 1 TB (5400 U / min) dauert ungefähr 240 Minuten, ist aber alt und hat Sektoren neu zugeordnet. Übrigens ist es nicht so verschieden von der gleichen Zeit, die Smart berichtet, als die Zeit, um einen erweiterten Selbsttest zu erwarten (255 Minuten)
Barrymac

2
Hinzufügen eines weiteren Datenpunkts: Nur dd if=/dev/zero of=/dev/sdX bs=8Mzwei brandneue Seagate ST4000DM000 4-TB-Laufwerke wurden gleichzeitig über SATA-300-Ports betrieben (ich glaube, es war mehr oder weniger perfekt parallelisierbar - die CPU-Auslastung lag beim ersten ddProzess konstant bei ~ 20% , bevor der zweite Prozess gestartet wurde und dann nahmen beide jeweils ~ 20%. Die erste Scheibe endete in 8h50min (530 min) und die zweite in 8h30min (510 min). Es entspricht einer Schreibgeschwindigkeit von ~ 130 MB / s pro Laufwerk, was angesichts des monotonen Eingangs nicht so ungewöhnlich ist. Die Hardware war ab 2009 (CPU: C2D E8400; Chipsatz: Intel P43 / ICH10).
Daniel Andersson

Antworten:


9

Es hängt von vielen Faktoren ab, einschließlich, aber nicht beschränkt auf:

  • Plattengeschwindigkeit (U / min)
  • Eingebauter Cache
  • Anzahl der Platten und ob gleichzeitig auf mehrere Platten geschrieben werden kann
  • Festplattenschnittstelle (SATA / SCSI usw.)
  • Interface-Controller-Leistung
  • Konfiguration der Antriebe (zB getrennte Kanäle oder gleicher Kanal)

Auch wenn das Nullsetzen eines Laufwerks eine einfache Aufgabe für die CPU und den RAM ist, kann es dennoch zu folgenden Auswirkungen kommen:

  • CPU-Leistung
  • Verfügbarer RAM
  • RAM-Geschwindigkeit
  • Andere Aufgaben werden gleichzeitig erledigt
  • Energieverwaltungseinstellungen

Unter der Annahme, dass ein relativ neuer Computer mit Laufwerken mittlerer Qualität auf einer minimalen Linux-Bootdiskette NUR den Nullstellungsvorgang (kein GUI, Internet usw.) vollständig in den Arbeitsspeicher geladen hat, kann er zwischen 2 und 12 Stunden liegen. Wenn ich eine einzelne Zahl rausschmeißen müsste, würde ich sagen, näher an dreieinhalb Stunden, aber auch hier gibt es nicht genug Informationen, um eine gute Schätzung zu erhalten, als es tatsächlich zu tun.

Wenn Sie mehr als 1 GB freien Speicherplatz haben, können Sie versuchen, das Laufwerk bereitzustellen dd if=/dev/zero bs=512 count=2048 of=/tmp/tempzeround eine andere Datei auszuführen. Wenn Sie mehr über die optimale Blockgröße für das schnellste Schreiben auf Ihr Laufwerk wissen, können Sie diese für den bs-Wert (in Kilobyte) verwenden und die Anzahl auf die gewünschte Dateigröße festlegen. Dann können Sie dies nutzen, um eine bessere Schätzung zu erhalten, ohne Daten zu verlieren. Es wird nur eine große Datei erstellt, die Nullen enthält.


3
Nach meiner Erfahrung auf Festplatten der letzten zehn Jahre ist bs = 1M eine enorme Verbesserung gegenüber bs = 512 und kann als Standard verwendet werden, ohne sich über das Finden des Optimums Gedanken machen zu müssen.
Crazyscot

@crazyscot ja massiver unterschied da mit dem bs = 1M um den schrecklichen default von bs = 512 zu überschreiben. Außerdem zeigt ddrescue (überprüfen Sie, wie die Blockgröße eingestellt wird) einen Prozent- / Fortschrittsbalken an.
Barlop

2

Ich habe eine DVD mit zufälligen Daten auf einem 750-GB-Laufwerk erstellt. Ich denke, es hat ungefähr 20 Stunden gedauert. Das, was wirklich nervte, war, dass ich das viermal für ein RAID-Array mit vier Festplatten machen musste. Ich denke, der Engpass ist die Schreibgeschwindigkeit Ihrer Laufwerke. Sie sind schlau, es parallel zu den Laufwerken zu tun.


2
Ein großer Teil Ihres Leistungsproblems lag wahrscheinlich in der Verwendung von Zufallszahlen. / dev / urandom oder jede andere Quelle wird sich sehr bemühen, wirklich zufällige Zahlen zu generieren, wodurch Ihr Durchsatz sinkt. So etwas wie / dev / zero wird dieses Problem nicht haben.
Sam Bisbee

Besteht das Risiko, dass 1 TB Nullen irgendwo in der Pipeline bis zum Speicher komprimiert werden und die Ergebnisse verzerren? Ich meine nicht wirklich auf der Festplatte komprimiert, sondern
Kugelfisch

2

Mit einer Partition von +100 GB, Acer Aspire 5750G, externer SATA-Festplatte, USB 2, 5400 U / min:

xxxx@acer-ubuntu:~$ sudo dd if=/dev/zero of=/dev/sdb2 bs=8M
[sudo] password for xxxx: 
dd: writing `/dev/sdb2': No space left on device
12500+0 records in
12499+0 records out
104856551424 bytes (105 GB) copied, 2846.87 s, 36.8 MB/s

und

xxxx@acer-ubuntu:~$ sudo dd if=/dev/zero of=/dev/sdb1 bs=8M
[sudo] password for xxxx: 
dd: writing `/dev/sdb1': No space left on device
6579+0 records in
6578+0 records out
55183409152 bytes (55 GB) copied, 1497.23 s, 36.9 MB/s

1

Ich vermute, aber meine Vermutung ist, dass es vom Laufwerks-Controller, dem Controller auf der Hauptplatine und dem, was sonst noch CPU / IO aufnimmt, abhängt.

Meine Vermutung, in der Größenordnung von Stunde oder Stunden. Tage scheinen lang zu sein. Je nachdem, wie Ihr Computer eingerichtet ist, kann das gleichzeitige Ausführen von beiden die Leistung tatsächlich verlangsamen, wenn Sie einen Konflikt für den Laufwerkcontroller erstellen. Obwohl Sie Nullen herauspumpen, weiß nichts in Ihrem Laufwerk das und es muss jedes Byte schreiben.


1

Wenn Sie nur die Laufwerke löschen, ist DBAN im einfachen Löschmodus ein hervorragendes Tool für den parallelen Durchsatz . Es ist als ISO verfügbar und führt den dd if=/dev/zeroBefehl für Sie auf den ausgewählten Laufwerken aus.


0

Es sollte 2-5 Stunden dauern. Ihr Engpass ist die Festplatte, nicht der RAM, die CPU, die Kabel oder die Controller-Konfiguration. Sofern Sie keinen sehr alten Computer wie einen originalen Pentium haben, sind Ihre CPU und Ihr Arbeitsspeicher viel schneller als die Spindeldrehzahl der Festplatte, ebenso wie Ihre SATA-Kabel. Der Cache kommt nicht einmal ins Spiel, weil Sie das Laufwerk auf Null setzen (es sei denn, Sie haben 1 TB Cache).

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.