Mit Hilfe des Befehls dd ist es unter Linux und vielen anderen unixoiden Systemen möglich, eine Festplatte mit Nullen zu überschreiben. Ist die Festplatte dabei z.B. als sda im System registriert, so funktioniert das Überschreiben mit folgendem Befehl:
dd if=/dev/zero of=/dev/sda
Je nach Festplattengröße kann der Vorgang dabei durchaus einige Stunden in Anspruch nehmen.
Und für welches Szenario wäre das geeignet? Sowohl für normale Formatierung als auch zuverlässige Datenlöschung gibt es spezielle Werkzeuge.
Bei heutigen Datendichten ist das für sichere Löschung der Festplatte (sofern HDD, nicht SSD) mehr als ausreichend.
Du würdest den Befehl für eine SSD nicht empfehlen?
Das Problem bei einer SSD ist das selbst wenn man sie „komplett“ überschreibt ist das nicht genug. Hintergrund ist dass die SSD im Durchschnitt etwa 10 Prozent ihrer Gesamtkapazität in der Hinterhand hält, an diese 10 % kommt man nicht heran, da sie vom Controller verwaltet werden.
Aber auf Grund des Wear leveling kommt man (bis auf ganz wenige, intern inzwischen als „defekt“ markierte Blöcke) doch an alle Blöcke heran: Einfach nicht nur einmal, sondern mind. noch einmal 10% (besser 50%) beschreiben. Dann sind dabei auch die bisher versteckten Bereiche enthalten, und dafür werden neue Bereiche versteckt.
Es gibt hierfür zwar keine Garantie (jede Firmware hat ihre Eigenheiten), aber wenn die Zusatzblöcke bisher schon einmal beschrieben wurden, dann werden sie es (bis auf die defekten Blöcke) aber nun auch. Da die defekten Blöcke vermutlich wirklich defekt sind, besteht da nur ein sehr kleines Restrisiko auf sehr wenige Daten, die nur sehr gute Fachleute noch finden werden.
Für HDDs reicht das einmalige überschreiben mit Nullen. In diesem Fall machen shred oder wipe ansich auch nichts anderes als dieser Befehl.
SSDs sollten dagegen mit Zufallszahlen überschrieben werden und das auch mehrfach. Insgesamt ist die Faktenlage bei diesen Datenträgern aber noch etwas mager um zukunftssicher sagen zu können, wie viele Durchgänge beim Überschreiben wirklich „sicher“ löschen.
In beiden Fällen gilt, dass man Datenträger immer besser vollständig überschreibt, also nicht nur einzelne Partitionen oder gar Dateien/Ordner.
Eine SSD mehrfach zu überschreiben wird wegen dem wear leveling recht wenig bringen.
Ich würde, gerade bei SSD (aber auch bei HDD), daher auf ATA Secure Erase zurückgreifen. Hierbei wird auch der Bereich für Sector Reallocation überschrieben.
Gerade wegen Wear Leveling dürfte dabei jede Zelle gleich häufig, also mind. 1 mal, überschrieben werden.
ATA Secure Erase ist besser – wenn er korrekt implementiert wurde. Also am Besten beides. Und noch besser speichert man verschlüsselt – dann muss man nur den Schlüssel vergessen.
1.) Um den Prozess deutlich zu beschleunigen sollte eine blocksize angegeben werden, also
dd if=/dev/zero of=/dev/sda bs=1M
2.) Eine weitere Beschleunigung bei dd (in diesem Falle hier eher theoritsch, praktischer wenn lesen/schreiben auf unterschiedlichen devices ist) erreicht man durch Trennen der in/out-Prozesse per Pipe, also zB
dd if=/dev/sda1 bs=1M | of=/ziel/pfad bs=1M
3.) Für Zufallszahlen statt Nullen geht als Quelle if=/dev/random
4.) Warum dd und keine speziellen Werkzeuge? Gegenfrage: warum Spezialtools wenn dd in jedem Linuxsystem sowieso rumliegt :)? Viele Leute benutzen dd regelmäßig, um zB Liveisos auf Sticks zu bringen, den MBR in ein Image wegzusichern, 1:1 Kopien ihrer Paritione zu ziehen etc., dann ist das Nullen eines Devices nur eine weitere Anwendung eines vertrauten Tools.
5.) Um dann doch noch ein „spezielles“ Werkzeug was ebenfalls jeder schon hat als Alternative zu erwähnen, es geht auch
cat /dev/zero > /dev/sda
Naja, „spezielle“ Werkzeuge mal hin oder her, aber cat, dd ebenso wie shred sind alle aus coreutils. Im Endeffekt führt uns jede Feststellung bei der Frage nach dem Warum wieder zu dem Ergebnis, dass unter Linux viele Wege zum gleichen Ziel führen. Bleibt dann am Ende wieder eine Geschmacksfrage mit Würzung nach konkretem Anwendungsfall =)
Vorsicht! dd bricht beim ersten Schreibfehler ab!
Für SSD’s ist noch immer die gute alte Schrottmühle die einfachste und beste Lösung.