On Sat, Oct 05, 2002 at 09:07:26PM +0000, Christian Weisgerber wrote:
> Oliver Fromme:
>
> > Da tar auf Filesystem-Ebene arbeitet, hat es keine Möglich-
> > keit, festzustellen, wo eine Datei »sparse« ist und wo
> > nicht. Die -S Option ist nichts weiter als ein Ratespiel.
>
> Richtig ist, dass tar nicht feststellen kann _wo_ eine Datei dünn
> besetzt ist. Er kann aber sehr wohl feststellen, _ob_ sie das ist.
>
> > Das Problem bei tar -S ist, daß er dann überall Sparse-
> > files erzeugt, wenn Dateien irgendwo Blöcke mit Nullen
> > enthalten,
>
> Unsinn. Ich bin kein sonderlicher Freund von GNU tar, aber so hirntot
> ist er auch wieder nicht. Nur wenn stat.st_blocks und stat.st_size
> nicht zusammenpassen, wird eine Datei als dünn besetzt behandelt.
> Nur die Mischung von echten Nullen und Löchern kann tar nicht
> identisch wieder herstellen. Swapfiles betrifft das nicht.
Stelle ich mir äußerst zuverlässig vor, wenn man mal komprimierte
Filesysteme hat.
Ich habe hier eine Datei, bei dem die Datei mehr Platz belegt, als
die Größe vorgibt.
stat.st_blocks zählt eben auch die Verkettungsblöcke mit.
Dann müsste der tar schon recht gutes Kenntnisse über das Filesystem
haben, um die beiden Werte miteinander vergleichen zu können.
Nein - ich glaube nicht, das tar das _wirklich_ feststellen kann.
> > Wie Bernd schon sagte: Wenn man Sparse-files _korrekt_
> > kopieren möchte, führt leider kein Weg an dump|restore
> > vorbei.
>
> Das finde ich allerdings merkwürdig formuliert. dump|restore ist
> die unmittelbar nahe liegende und erste Wahl.
Ansichtssache - für mich ist cpio erste Wahl.
Dump ist langsam, weil es ohne prereads auf raw devices zugreift.
Da müsste schon mal jemand async IO einbauen, oder mittels Hilfprozess
lesen.
Auch gehen hier die Daten alle durch eine Pipe von einem Programm zu
einem anderen - alles andere als Effizient, nicht zuletzt, weil die
Pipe Queue default recht klein ist und viele Task Umschaltungen
erfolgen, auch wenn einem das wohl im Single User Mode recht egal sein
kann.
Letzterer Nachteil ist natürlich mit der tar Variante gemein.
Mache mal eine Kopie einer Partition mit dump/restore und cpio, dann
vergleiche die Zeit.
-- B.Walter COSMO-Project http://www.cosmo-project.de ticso(at)cicely.de Usergroup info(at)cosmo-project.de To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org with "unsubscribe de-bsd-questions" in the body of the messageReceived on Sun 06 Oct 2002 - 01:20:40 CEST