Der Befehl shred
In diesem Beitrag lernen Sie den Befehl shred kennen, welcher Ihnen das sichere Überschreiben und anschließende Löschen von Dateien oder Device-Files unter Linux-/UNIX-Betriebssystemen ermöglicht.
shred unterscheidet sich insofern von dem Befehl rm, dass gelöschte Daten selbst mit forensischen Mitteln sehr schwer bzw. nicht mehr wiederherstellbar sind. Dies wird durch mehrfaches Überschreiben der Daten mit Zufallswerten oder Bitmustern erreicht. Der Befehl arbeitet dabei nach der sogenannten Gutmann-Methode.
Installation
Da shred im Paket coreutils enthalten ist, muss es meist nicht nachinstalliert werden. Ist das Paket jedoch nicht installiert dann können Sie dies über den folgenden Befehl tun:
apt-get install coreutils
Überschreiben / Löschen von Dateien
Um einzelne Dateien zu Überschreiben lässt sich shred mit der folgenden Syntax aufrufen:
shred [Optionen] [Datei(en)]
Zum Überschreiben mehrerer Dateien ist hierbei die Angabe mehrerer durch Leerzeichen getrennter Dateinamen erlaubt. Wird als Datei-Angabe "-" verwendet, so überschreibt shred die Standardausgabe.
Beispiel: Einzelne Datei überschreiben
Die Datei "profi-tutorials-themen.txt" des aktuellen Verzeichnisses soll hier überschrieben werden.
Inhalt Datei:
linux
e-business
it-consulting
foto
Eingabe:
shred profi-tutorials-themen.txt
Inhalt der Datei nach Abschluss:
Die Datei "profi-tutorials-themen.txt" ist nach Ausführung des Befehls noch immer vorhanden. Wie unterhalb zu sehen, wurde der Inhalt der Datei lediglich mit Zufallswerten überschrieben.
Beispiel: Mehrere Dateien überschreiben
Eingabe:
shred der-befehl-shred.txt der-befehl-wget.txt linux-befehle-pdf.txt
Bedeutung:
Hierbei werden die drei Dateien "der-befehl-shred.txt", "der-befehl-wget.txt" und "linux-befehle-pdf.txt" überschrieben. Analog zum obigen Beispiel müssen sie zur Freigabe des Speichers noch gelöscht werden.
Beispiel: Standardausgabe überschreiben
Eingabe:
shred -
Bedeutung:
In diesem Fall überschreibt shred die Standardausgabe.
Die Option -u
Zu beachten ist, dass shred die angegebenen Dateien bei der Verwendung ohne jegliche Optionen lediglich überschreibt, nicht jedoch löscht. Wenn Sie die Dateien nach dem Überschreiben auch Löschen möchten, um den entsprechenden Speicher freizugeben, verwenden Sie zusätzlich die Option -u:
shred -u [Datei(en)]
Beispiel: Datei überschreiben und löschen
Eingabe:
shred -u 20-linux-befehle.txt
Bedeutung:
Die Datei "20-linux-befehle.txt" des aktuellen Verzeichnisses wird überschrieben und anschließend gelöscht, sodass der belegte Speicher freigegeben wird.
Überschreiben von Geräten
Neben dem Überschreiben von Dateien unterstützt shred auch das Überschreiben ganzer Blockdevices, wie beispielsweise Partitionen oder ganze Festplatten. Die zu verwendende Syntax lautet folgendermaßen:
shred [Optionen] [Gerät]
Beispiel: Partition löschen
Eingabe:
shred /dev/sda2
Bedeutung:
Alle Daten auf der Partition /dev/sda2 werden überschrieben.
Weitere wichtige Funktionen / Optionen
-f - Überschreiben erzwingen
Mit der Option -f (force) ist es möglich, den Vorgang des Überschreibens zu erzwingen. Falls dazu andere Zugriffsberechtigungen nötig sind, werden diese automatisch entsprechend geändert.
shred -f [Datei]
-n - Anzahl Durchläufe festlegen
Die Option -n (number of iterations) ermöglicht es Ihnen auszuwählen, wie oft shred die gewählten Daten überschreiben soll. Der Standardwert, welcher bei Auslassen des Parameters verwendet wird, ist 3.
shred -n [N] [Datei]
-s - Feste Anzahl Bytes überschreiben
-s (size) ermöglicht Ihnen das Überschreiben einer festen Anzahl Bytes. Suffixe, wie beispielsweise K, G oder M, sind dabei zulässig.
shred -s [Bytes] [Datei]
Beispiel: Feste Anzahl Bytes überschreiben
Genau die ersten 10 Bytes der Datei "profi-tutorials-themen.txt" des aktuellen Verzeichnisses sollen hier überschrieben werden.
Inhalt Datei:
linux
e-business
it-consulting
foto
Eingabe:
shred -s 10 profi-tutorials-themen.txt
Inhalt der Datei nach Abschluss:
Im Inhalt der Datei ist zu erkennen, dass genau die ersten 10 Bytes mit Zufallswerten überschrieben wurden. Ein Teil der Datei ist noch erhalten geblieben.
-v - Fortschritt anzeigen
Mit der verbose-Option -v können Sie den Fortschritt des shred-Befehls einsehen:
shred -v [Datei]
Beispiel: Fortschritt anzeigen
Hierbei soll während der Durchführung des shred-Befehls auch der Fortschritt angezeigt werden.
Eingabe:
shred -v 20-linux-befehle.txt
Ausgabe:
Während der Ausführung wird nun der Fortschritt im Terminal ausgegeben. Nach Abschluss des standardmäßigen dreifachen Überschreibens ist die folgende Ausgabe im Terminal zu sehen:
-x - Aufrunden verhindern
Bei Verwendung der Option -x (exact) werden Dateigrößen nicht auf den nächsten vollen Block aufgerundet. Für nicht-reguläre Dateien, wie beispielsweise Gerätenamen, ist dies die Voreinstellung.
shred -x [Datei]
Beispiel: Aufrunden verhindern
In diesem Beispiel soll einmal der Unterschied zwischen der Verwendung der Option -x und dem Auslassen der Option dargestellt werden. Dazu wird shred zunächst ohne die Option ausgeführt. Die Datei "profi-tutorials-themen.txt" hat vor Ausführung eine Kapazität von 36 Bytes.
Inhalt Datei:
linux
e-business
it-consulting
foto
Eingabe:
shred profi-tutorials-themen.txt
Kapazität der Datei nach Abschluss:
Die Datei hat nach Abschluss der Ausführung eine Kapazität von 4096 Bytes. Dies entspricht der Blockgröße des Dateisystems.
Im Folgenden wird der Befehl zusammen mit der Option -x verwendet. Der Inhalt der Datei "profi-tutorials-themen.txt" wurde zuvor wiederhergestellt.
Eingabe:
shred -x profi-tutorials-themen.txt
Kapazität der Datei nach Abschluss:
Die Datei hat nach Abschluss der Ausführung noch immer die Kapazität von 36 Bytes. Die Option -x hat somit das Aufrunden auf den nächsten vollen Block verhindert.
-z - Mit Nullen überschreiben
Wenn Sie zum Ende des Überschreibens noch einen finalen Durchlauf durchführen wollen, welcher die Daten mit Nullen überschreibt, verwenden Sie die Option -z (zero). Dies hilft dabei, das Überschreiben zu verbergen.
shred -z [Datei]
Wichtige Hinweise
Überschreiben von Dateisystemen
Bei der Verwendung von shred zum Überschreiben von Dateisystemen ist es wichtig zu beachten, dass dieses zum Zeitpunkt des Überschreibens nicht eingebunden ist, um die vollständige und rückstandslose Entfernung von Daten zu gewährleisten.
Überschreiben an derselben Stelle
Es gilt zu beachten, dass Die Funktion von shred auf der Annahme beruht, dass das Dateisystem Daten an derselben Stelle überschreibt. Zwar ist dies die traditionelle Vorgehensweise, jedoch erfüllen viele moderne Betriebssysteme diese Annahme nicht.
Im Folgenden seien einige Dateisysteme genannt, auf welchen shred nicht effektiv arbeiten bzw. nicht für alle Dateisystem-Modi eine Wirkung garantiert werden kann:
Abonniere JETZT unseren Newsletter!
Verpasse nie wieder neue Beiträge und exklusive Insider-Only-Inhalte!