ubuntuusers.de

Leeren Festplattenplatz sicher überschreiben

Status: Ungelöst | Ubuntu-Version: Ubuntu
Antworten |

Igor_Warneck

Anmeldungsdatum:
31. August 2006

Beiträge: Zähle...

Wohnort: Kassel

Guten Morgen!

Vielleicht ist meine Frage grundlegend falsch, aber das liegt vielleicht an meinen Erinnerungen an XP und Konsorten. Ich möchte den "unbeschriebenen" Festplattenplatz sicher überschreiben. Das ich mit shred Dateien löschen kann habe ich schon gelesen - geht auch schön - aber kann ich auch den "freien Platz" einer Partition 25mal mit irgendwas überschreiben und so nicht mehr wiederherstellbar machen? Ich will mich jetzt mal als anständigen Paranoiden bezeichnen - nur damit ihr meine Frage versteht.

Ich möchte eben nicht die ganze Festplatte löschen, sondern nur den freigewordenen Speicherplatz.

Schönen Gruss,

Moderiert von Chrissss:

Thema ins Sicherheitsforum verschoben.

bennym

Avatar von bennym

Anmeldungsdatum:
26. Februar 2006

Beiträge: 726

Ist deine Festplatte unbeschrieben (dh. du hast keine wichtigen Daten und Programme drauf)? Ich glaube nur so kannst du allen Speicherplatz mit Nullen vollschreiben.
Wenn ja, boote von Knoppix und gehe mit strg alt f1 in einen root konsole und tippe:

dd if=/dev/zero of=/dev/hda bs=65536


ein. Das ueberschreibt die ganze(!) Festplatte mit Nullen, sodass wirklich nichts mehr wiederherstellbar ist.

mfg benny

Phil_

Avatar von Phil_

Anmeldungsdatum:
7. Juli 2005

Beiträge: 83

Wohnort: Freiburg im Breisgau

die lösung oben überschreibt ja die ganze festplatte. um nur den freien speicherplatz zu überschreiben fällt mir spontan keine bessere lösung ein als folgende:
du schreibst ein skript, welches den freien speicherplatz ermittelt und eine entsprechend große datei (toleranz!) erstellt, die dann mit daten aus /dev/random oder /dev/null (am besten abwechselnd) einige male überschrieben wird (geht auch mit dd denke ich). dannach in dem gleichen skript die datei wieder löschen und schon müsste die sache halbwegs clean sein. der vorteil liegt auch darin das du diese sache während der laufzeit vornehmen kannst.
falls dir nicht einfällt wie das geht schau hier im wiki nach truecrypt, die container dafür werden auf die gleiche art und weise erstellt und beschrieben.

Lindiot

Anmeldungsdatum:
22. August 2006

Beiträge: 693

dd if=/dev/zero of=/freespace bs=512

unmittelbar danach die Datei freespace wieder löschen da sonst kein Platz mehr für 'log und Co' über ist. Ganz ungefährlich ist das allerdings nicht. Wenn im Dateisystem irgendwas nicht clean ist könnte das einen schweren Fehler verursachen zB den Crash der nachfolgenden Partition.

Deswegen sollte zuvor unbedingt ein Dateisystemcheck durchgeführt werden.
Wer es nicht ganz so hart will kann sich auch über 3-4 spezielle Aufrufe an das Ziel ranpirschen.

Ich hab das gerade mal auf einer Reiserpartition umgesetzt, da scheint es problemlos funktioniert zu haben. Die Nachfolge-Partition hab ich noch nicht gecheckt *g*, aber das ist nur meine KUbuntu, nicht weiter schlimm 😉

Phil_

Avatar von Phil_

Anmeldungsdatum:
7. Juli 2005

Beiträge: 83

Wohnort: Freiburg im Breisgau

das ist ungefaehr was ich meinte allerdings finde ich die loesung von lindiot recht brutal.
wenn ich das richtig sehe werden ja einfach solange nullen geschrieben bis es nichtmehr geht.
bekanntermassen reagieren linuxsysteme auf diesen zustand relativ empfindlich, von instabilitaet bis zu abstuerzen kombiniert mit unwillen dannach zu starten.
vielleicht laesst sich das problem auch mit deiner zeile elegant loesen indem man die blockgroesse so setzt, dass hoechstwahrscheinlich ein bisschen platz uebrigbleibt.
ich dachte irgendwie an sowas:

dd if=/dev/urandom of=/freespace bs=10240k count=x
wobei vorher halt der freie speicherplatz in MB ermittelt werden muss und x dann durch [(freieMB/10)–>abrunden und 1 abziehen] ersetzt wird.
so blieben zum beispiel mindestens 10MB fuer das system uebrig, was je nach situation (memdump,grosse traces bei fehlern, swap geht kaputt, laufwerksindizierung startet automatisch) auch noch zu wenig sind.

ein komplettes skript muesste dann die datei freespace sofort wieder loeschen und nochmal schreiben (dann am besten m it /dev/null), solange bis du dich wohlfuehlst.\

gruss

Lindiot

Anmeldungsdatum:
22. August 2006

Beiträge: 693

Das Swap-Problem sollte gängigerweise nicht auftreten da SWAP üblicherweise auf einer anderen Partition liegt. Bei mir wurde die Partition bis auf 'NULL-Byte' free vollgeschrieben, Probleme sind keine aufgetreten. Das will aber nichts bedeuten für andere Installationen, denn ich hab nur ein völlig harmloses Ding laufen.

Die Random-Variante würde ich nur wählen wenn relativ wenig zu überschreiben ist, weil das kräftigst verzögert. Deine Idee eine größere Blockgröße zu nutzen ist nicht schlecht, damit könntest in der Tat erreichen dass im Mittel die Hälfte davon frei bleibt, allerdings könnts zufällig auch genau passen.

dd if=/dev/urandom of=/freespace bs=10240k oder
dd if=/dev/zero of=/freespace bs=10240k

Fängst an zu rechnen, dann kannst auch wieder auf 'bs=512' zurückgehen und das passende count nutzen, das wär mir dann wieder sympatischer, Geschmacksache halt.

Andererseits wennst alles überschreiben willst, dann kannst eigentlich keine 5 oder 10 MB großzügig weglassen. Ist aber völlig richtig, bei Systempartitionen ist das bestimmt nicht unproblematisch obwohl es bei mir keine Probleme verursacht hat.

dd if=/dev/zero of=/freespace bs=512
dd: writing /freespace': No space left on device\\ 6497941+0 records in\\ 6497940+0 records out unmittelbar hierauf sollte in dem Script die Datei /freespace wieder gelöscht werden, dann gibts den Engpass allenfalls für den Bruchteil einer Sekunde. Ich habs über den konqueror gelöscht, das ging problemlos, aber das könnte wie gesagt auch größeres Glück gewesen sein.

Phil_

Avatar von Phil_

Anmeldungsdatum:
7. Juli 2005

Beiträge: 83

Wohnort: Freiburg im Breisgau

jupp also wenn es nicht die systempartition ist und nix wirklich aussergewoehnliches laeuft, dann wuerde ich deine variante der einfachheit halber vorziehen.
auf systempartitionen (oder wie bereits angedeutet bei partitionsfehlern) wurde ich sehr vorsichtig sein, denn falls was schiefgeht ist der schaden gross.

man koennte ein script mit 2 zeilen schreiben das die eingegebene partition prueft (sinnvoll denn die meisten tools dafuer wollen ungemountete partitionen –> script bricht ab wenn man versucht die systempartition zu cleanen) und dann halt die quick&dirty-methode aufruft.

ansonsten geht nullen schreiben natuerlich schneller, aber da muss man mal in die hiesigen normen schauen ob da mehrfaches ueberschreiben mit gleichem inhalt sinn macht, ich denke naemlich nicht.
vielleicht 2x abwechselnd einsen und nullen ? das hatte glaube ich etwas mit verwertbaren magnetischen informationen zu tun, die nach 1x nullen noch zu reproduzieren sind.
aber ich hab da keine grosse ahnung und bin da auch nicht so paranoid. auf arbeit ueberschreiben wir die platten allerdings 10x abwechselnd mit nullen und zufallszahlen und nullen vorher auf lowlevel.

vielleicht sollten wir jetzt erstmal warten was der threadsteller davon haelt, ich denke wir haben schon mehr als genug geschrieben 😉

Igor_Warneck

(Themenstarter)

Anmeldungsdatum:
31. August 2006

Beiträge: 77

Wohnort: Kassel

Ja was habe ich denn hier angerichtet ☺ Ihr begebt Euch ja in Höhenflüge.

Ich bin noch nicht der Linux-Held, aber Eure Aktion erscheint ja nicht so ganz ungefährlich für das System. Mir ein bisschen riskant, weil ich 100% auf den Rechner gerade angewiesen bin und da nichts ins Schwanken bringen möchte, sonst komme ich mit meiner Arbeit leider nicht hinterher.

Wenn ich die ganze Festplatte putzen muss dann würde ich

shred -n3 -vz /dev/hda

nehmen. Aber mir geht es ja um den freien Speicherplatz.

Gibt es da wirklich nur die Systemriskante Lösung, welche Ihr angesrochen habt, oder doch einen goldenen Mittelweg?

Igor

otzenpunk Team-Icon

Avatar von otzenpunk

Anmeldungsdatum:
17. Oktober 2005

Beiträge: 8691

Wohnort: Hamburg-Altona

Phil_ hat geschrieben:

das ist ungefaehr was ich meinte allerdings finde ich die loesung von lindiot recht brutal.
wenn ich das richtig sehe werden ja einfach solange nullen geschrieben bis es nichtmehr geht.
bekanntermassen reagieren linuxsysteme auf diesen zustand relativ empfindlich, von instabilitaet bis zu abstuerzen kombiniert mit unwillen dannach zu starten.

Wüsste nicht, wie das zu "Instabilität und Abstürzen" führen sollte. Sicherlich sollte man diese Datei anschließend sofort wieder löschen, denn ansonsten kann es wirklich dazu führen, dass Programme ihren Dienst verweigern, weil sie bspw. keine Lock- oder Pid-Datei anlegen können. Wenn man die Datei aber einfach nur anlegt, evtl. mit Shred ein paar Mal überschreibt, und dann wieder löscht, sollte es keine Probleme geben, vor allem wenn man das im Recovery Modus erledigt.
Phil_ hat geschrieben:

vielleicht laesst sich das problem auch mit deiner zeile elegant loesen indem man die blockgroesse so setzt, dass hoechstwahrscheinlich ein bisschen platz uebrigbleibt.

Das ist ja dann völlig sinnlos. Entweder man will alles richtig löschen, oder nicht. Aber auf Zufall ein paar Daten übrig lassen... 🙄

Das Thema hatten wir übrigens vor zwei Wochen erst (mit einigen Zusatzinformationen): freien festplattenspeicher sicher löschen

Verwandtes Thema: Wie endgültiges Löschen von Dateien?

Ich mach den Thread deswegen mal zu.

Antworten |