Linux Essentials//Die Einsteiger-Zertifizierung des LPI - Linup Front ...
Linux Essentials//Die Einsteiger-Zertifizierung des LPI - Linup Front ...
Linux Essentials//Die Einsteiger-Zertifizierung des LPI - Linup Front ...
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
156 11 Dateien archivieren und komprimieren<br />
11.1 Archivierung und Komprimierung<br />
»Archivierung« ist der Prozess <strong>des</strong> Zusammenfassens vieler Dateien zu einer einzigen.<br />
<strong>Die</strong> klassische Anwendung ist das Ablegen eines Verzeichnisbaums auf<br />
Magnetband – das Magnetbandlaufwerk erscheint unter <strong>Linux</strong> als Gerätedatei,<br />
auf die die Ausgabe eines Archivierprogramms geschrieben werden kann. Entsprechend<br />
können Sie mit einem »Entarchivierungsprogramm« von der Gerätedatei<br />
<strong>des</strong> Bandlaufwerks lesen und diese Daten dann wieder als Verzeichnisbaum<br />
abspeichern. Da die meisten entsprechenden Programme sowohl Dateien zusammenfassen<br />
als auch Archive wieder aufdröseln können, fassen wir bei<strong>des</strong> unter<br />
dem Begriff der Archivierung zusammen.<br />
»Komprimierung« ist das Umschreiben von Daten in eine gegenüber dem Original<br />
platzsparende Fassung. Wir interessieren uns hier nur für »verlustfreie«<br />
Komprimierung, bei der es möglich ist, aus den komprimierten Daten das Original<br />
in identischer Form wieder herzustellen.<br />
B<br />
<strong>Die</strong> Alternative besteht darin, einen höheren Komprimierungsgrad zu erreichen,<br />
indem man darauf verzichtet, das Original absolut identisch wiedergewinnen<br />
zu können. <strong>Die</strong>sen »verlustbehafteten« Ansatz verfolgen Komprimierungsverfahren<br />
wie JPEG für Fotos und »MPEG-1 Audio Layer 3«<br />
(besser bekannt als »MP3«) für Audiodaten. <strong>Die</strong> Kunst besteht hier darin,<br />
unnötige Details zu verwerfen; bei MP3 wird zum Beispiel auf der Basis eines<br />
»psychoakustischen Modells« <strong>des</strong> menschlichen Gehörs auf Teile <strong>des</strong><br />
Signals verzichtet, die der Hörer sowieso nicht wahrnimmt, und der Rest<br />
möglichst effizient kodiert. JPEG arbeitet ähnlich.<br />
Lauflängenkodierung<br />
Als einfache Illustration könnten Sie eine Zeichenkette der Form<br />
ABBBBAACCCCCAAAABAAAAAC<br />
kompakter als<br />
A*4BAA*5C*4AB*5AC<br />
darstellen. Hierbei steht »*4B« für eine Folge von vier »B«. <strong>Die</strong>ses simple Verfahren<br />
heißt »Lauflängenkodierung« (engl. run-length encoding) und findet sich heute<br />
noch zum Beispiel (mit Änderungen) in Faxgeräten. <strong>Die</strong> »echten« Komprimierprogramme<br />
wie gzip oder bzip2 verwenden aufwendigere Methoden.<br />
Während in der Windows-Welt Programme gebräuchlich sind, die Archivierung<br />
und Komprimierung kombinieren (PKZIP, WinZIP & Co.), werden die beiden<br />
Schritte bei <strong>Linux</strong> und Unix üblicherweise getrennt. Eine gängige Vorgehensweise<br />
besteht darin, eine Menge von Dateien zunächst mit tar zu archivieren und<br />
die Ausgabe von tar dann zum Beispiel mit gzip zu komprimieren – PKZIP & Co.<br />
komprimieren jede Datei einzeln und fassen die komprimierten Dateien dann zu<br />
einer großen zusammen.<br />
Der Vorteil dieses Ansatzes gegenüber dem von PKZIP und seinen Verwandten<br />
besteht darin, dass eine Komprimierung über mehrere der Originaldateien<br />
hinweg möglich ist und so höhere Komprimierungsraten erzielt werden können.<br />
Genau dasselbe ist aber auch ein Nachteil: Wenn das komprimierte Archiv beschädigt<br />
wird (etwa durch ein schadhaftes Medium oder gekippte Bits bei der<br />
Übertragung), kann das komplette Archiv ab dieser Stelle unbenutzbar werden.<br />
B<br />
B<br />
Natürlich hält Sie auch unter <strong>Linux</strong> niemand davon ab, Ihre Dateien erst zu<br />
komprimieren und sie dann zu archivieren. Leider ist das nicht so bequem<br />
wie die umgekehrte Vorgehensweise.<br />
Selbstverständlich existieren auch für <strong>Linux</strong> Implementierungen der gängigen<br />
Komprimierungs- und Archivprogramme der Windows-Welt, etwa zip<br />
und rar.<br />
Copyright © 2012 <strong>Linup</strong> <strong>Front</strong> GmbH