== Umgang mit Sparse-Dateien ==

Unter dem Linux-Filesystem ext2 bzw. ext3 ist es möglich,
sogenannte "sparse"-Dateien zu benutzen. Dabei werden Datenblöcke,
die nur Nullen enthalten, nicht auf die Platte geschrieben. Wenn
man also eine große Datei hat, die aber eigentlich leer ist,
benötigt diese fast gar keinen Platz. Sparse-Dateien sind also
besonders nützlich bei Harddisk-Images z.B. für UserModeLinux oder
[[QEmu]].

Anzeigen kann man sparse-Dateien mit 

  ls -lsh

Durch das '''s''' wird ganz vorne die echte, also physikalische
Dateigröße angezeigt. Stimmt die nicht mit der normalen Größe
überein, so haben wir sparse-Blöcke in der Datei. Erzeugen kann man
sparse-Dateien, indem man mit '''cp''' eine bestehende Datei
konvertiert oder indem man sie mit der seek-Option von '''dd''' neu
erzeugt, also z.B. so:

  cp --sparse=always altedatei neuedatei
  dd if=/dev/zero of=test.img bs=1M seek=1024 count=0

Außerdem gibt es noch einen außerordentlich interessanten Trick, um Sparse-Files auch aus einer Pipe zu erzeugen. Folgendes Beispiel habe ich aus der manpage von "ntfsclone"

  bunzip2 -c ntfsmeta.img.bz2 | cp --sparse=always /proc/self/fd/0 ntfsmeta.img

Die Datei "/proc/self/fd/0" ist dabei ein anderer Name für die Standardeingabe.

Zum Erzeugen von SparseFiles siehe auch den ARtikel FestplatteAufraeumen.
L
-- ThomasBayen