NTFS: unbenutzte Sektoren auf Null setzen

Gast #2609972
Lesenswert?

Hallo,

nachdem google nicht sofort das passende ausgespuckt hat:
Gibt es eine Software mit der man bei einem NTFS Dateisystem (optional: 
auch FAT32 und ext3) alle unbenutzten Sektoren Nullen kann?
Ziel ist es ein mit dd erstelltes Image komprimieren zu können. Ich weiß 
dass es auch "partimage" gibt, mit dem man an sich auf Abbilder von 
Partitionen erstellen kann, hab aber festgestellt dass zurückgespielte 
NTFS Partitionen (manchmal?) nicht bootfähig sind. Will aber nicht lang 
experimentieren um raus zu finden wo das partimage-Problem liegt. Per dd 
erstellte Images waren immer benutzbar, das brauchen aber natürlich mehr 
Platz, v.a. wenn die Partition relativ leer ist.

Vielen Dank,
Gast #2610047
Lesenswert?

Genau dafür habe ich mir mal vor Äonen dieses kleine Programm 
geschrieben, was nichts weiter macht, als alle freien Bereiche mit 
Dateien zu beschreiben, die mit Nullen gefüllt sind. Am Ende löscht das 
Programm seine eigenen Dateien wieder weg.
Ich benutze es immer noch sehr häufig, insbesondere wenn ich virtuelle 
Images mit Microsoft Filesystemen erstellt habe.

VG, Steffen
Angehängte Dateien:
Gast #2610438
Lesenswert?

> wenn die wiederhergestellte Partition nicht booten will liegt es evtl.
> nur am fehlenden 'Active' Bit.

Daran lags nicht, darauf hab ich schon geachtet. Das mit partimage 
kopierte XP (Image gezogen und auf andere Platte "recovered") hat ja 
auch angefangen zu booten, hing dann aber auf hlaben Weg. Per dd kopiert 
ging die Kopie dann.

> Das könnte mit SDelete und der Option -z funktionieren:
> http://technet.microsoft.com/en-us/sysinternals/bb897443

Bei gebootetem XP scheint es ganeu das zu machen was ich brauche. Vielen 
Dank für den Tipp.

Was ich noch gefunden habe: In ein Knoppix eingebunden kann man wohl 
auch sämtliche freie Sektoren Nullen indem man die Platte mit einer 
Null-Datei voll schreibt und die dann löscht:
dd if=/dev/zero of=/tmp/delete.me bs=8M; rm delete.me
(http://www.linuxweblog.com/dd-image)
Gast #2676707
Lesenswert?

asd schrieb:
> Was ich noch gefunden habe: In ein Knoppix eingebunden kann man wohl
> auch sämtliche freie Sektoren Nullen indem man die Platte mit einer
> Null-Datei voll schreibt und die dann löscht:
> dd if=/dev/zero of=/tmp/delete.me bs=8M; rm delete.me

entweder
s/;/;sync;/

oder bei dd die option conv=fsync hinzufügen.

Damit's auch wirklich auf der Platte (und nicht im RAM-Buffer) landet!
#2676712
Lesenswert?

Wenn man unter Unix-ähnlichen Systemen freie Sektoren löschen will, 
indem man einfach alles mit Dateien zumüllt, sollte man das aber als 
root tun. Denn normalerweise kann man als normaler Benutzer nicht den 
ganzen Platz aufbrauchen; ein Rest ist nur für root reserviert 
(typischerweise ein paar Prozent).
Gast #2676723
Lesenswert?

Stimmt, falls man nicht bei der Erstellung des Dateisystems mittels -m 0 
manuell eingegriffen hat.

Ich hatte den OP allerdings so verstanden, das er ein (temporär 
'gemountetes') NTFS Filesystem 'säubern' will ;-)

Auf einer Linux root partition sollte man so etwas wirklich nur machen 
wenn sich über die Folgen im klaren ist.
Gast #2677790
Lesenswert?

> Ziel ist es ein mit dd erstelltes Image komprimieren zu können. Ich weiß

Hallo,

dazu verwendet man besser eine Software, die das Dateisystem "versteht" 
und unbenutzte Sektoren garnicht mitspeichert, das geht zumindest 
wesentlich schneller - das Nullen müsste man ja vor jedem Backup 
wiederholen. dd ist die dümmste von allen und berücksichtigt das 
Dateisystem überhaupt nicht. Acronis kann da schon entscheidend mehr, 
wenn auch nicht alles.

Gruss Reinhard
Gast #2677932
Lesenswert?

Reinhard, das kann ich so aber nicht bestätigen.

Gerade dd in Verbindung mit 'Sparse'-Dateien ist hervorragend geeignet 
jedes - aber auch wirklich jedes - Dateisystem auf eine Art und Weise zu 
sichern von der Backup Programme nur träumen.

Beispiel (und das mache ich regelmäßig seit ca. 8 Jahren):
1) remount mit sync Option (macht's temporär ein paar Prozent langsamer)
   Bei externen, nicht genutzten Partitionen unnötig (auch 4. und 5.)
2) Nullen der jeweiligen Partition
Während das System läuft...
3) dd <options> <partition> | cp -sparse=always /dev/stdin <großesImage>
4) loop-setup <großesImage>
5) fsck loopdevice
Fertig!

Vorteil1: Ich kann später jederzeit das <großeImage> mittels loop 
mounten und innerhalb von Sekundenbruchteilen nicht nur auf die Daten 
zugreifen sondern könnte mit ihnen arbeiten.

Vorteil2: Komplett unabhängig von irgendwelchen 
Backup-(Programmen/Formaten/Eigenarten/Problemen). Habe jetzt noch 
Images aus der Anfangszeit die ich selbst dann noch verwenden könnte 
wenn die Welt vergessen sollte wie dd funktioniert;-)

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren