Sparen Sie Platz: Mit einem Archivierungsprogramm fassen Sie mehrere Dateien zu einer einzigen zusammen, und mit einem Komprimierungs-Tool verkleinern Sie das Datenpaket. Wir zeigen, wie Sie zum Verpackungskünstler werden.
Alles eingepackt und die Größe vielleicht noch zurechtgestutzt – gut verschnürt schicken Sie Ihre Urlaubsfotos per Mail auf die Reise oder sichern die persönlichen Daten. Mit Archivierungs- und Komprimierungsprogrammen sparen Sie Platz und sorgen für mehr Übersicht im Datendschungel. Ein weiterer Vorteil von gepackten Sicherungskopien ist, dass die ursprünglichen Dateieigenschaften erhalten bleiben – so stellen Sie beim Auspacken die Originaldaten wieder her. Wir stellen Verpackungskünstler unter Linux vor.
Format, Format
Archivformate gibt es wie Sand am Meer: Während sich unter Windows hauptsächlich .zip– und .rar-Dateien auf der Platte tummeln, sind unter Linux .tar.gz– oder .tar.bz2-Archive weit verbreitet. Für diese kryptischen Dateiendungen sind jeweils zwei Programme verantwortlich: tar fasst mehrere Dateien und Verzeichnisse zu einem Archiv zusammen, und gzip (.gz) bzw. bzip2 (.bz2) komprimieren Daten.
Trotz dieser unterschiedlichen Formate ist es kein Problem, Archive – komprimierte oder unkomprimierte – zwischen den verschiedenen Betriebssystemen auszutauschen. Linux kommt problemlos mit .zip– und .rar-Dateien zurecht, und unter Windows leistet das unter der GPL stehende Programm 7-Zip [1] gute Dienste (Abbildung 1).

Abbildung 1: 7-Zip packt und entpackt alle gängigen Archivformate, darunter auch “.tar.gz”- und “.tar.bz2”-Dateien.
Mit dem Konqueror archivieren
KDEs Datei-Manager leistet gute Dienste beim Verpacken. Wählen Sie zunächst die entsprechenden Daten aus, z. B. indem Sie mit der linken Maustaste einen Rahmen um die Dateien oder Verzeichnisse ziehen. Alternativ markieren Sie mehrere Daten, indem Sie bei gedrückt gehaltener [Strg]-Taste auf Objekte klicken – den kompletten Verzeichnisinhalt erwischen Sie über die Tastenkombination [Strg]+[A]. Schließlich erhalten Sie über den Menüpunkt Bearbeiten / Auswahl Zugriff auf verschiedene Auswahlfunktionen.
Über das Kontextmenü der rechten Maustaste erstellen Sie anschließend ein Archiv – wählen Sie den Eintrag Hinzufügen zu Archiv und geben Sie im aufgehenden Dialogfenster Verzeichnis und Dateiname an. Das Zielformat legen Sie entweder über eine Dateiendung fest, z. B. archiv.tar (unkomprimiertes tar-Archiv), archiv.tar.gz (mit gzip komprimiertes tar-Archiv) usw., oder indem Sie aus dem Drop-down-Menü einen entsprechenden Eintrag wählen.
Schneller geht’s, wenn Sie alle zu verpackenden Daten zunächst in ein eigenes Verzeichnis legen, dieses mit der rechten Maustaste markieren und aus dem Kontextmenü Komprimieren als auswählen: Konqueror bietet die gängigsten Formate an und erstellt mit einem Mausklick .gz-, .bz2-, .tar-, tar.gz-, tar.bz2– und .zip-Dateien (Abbildung 2). Die (komprimierte) Archivdatei landet im aktuellen Verzeichnis.
Darüber hinaus ist es über den Kontextmenü-Eintrag Komprimieren möglich, Daten einem Archiv hinzuzufügen: Wählen Sie Hinzufügen zu, um zu einer Liste der Archive im aktuellen Verzeichnis zu gelangen, oder rufen Sie den Punkt Hinzufügen zu Archiv auf und navigieren Sie im Dateidialog zum gewünschten Paket.
Mit Konqueror können Sie in komprimierte und unkomprimierte Archive per Mausklick hineinwechseln und auf die enthaltenen Daten zugreifen. Alternativ rufen Sie mit der rechten Maustaste das Kontextmenü auf, wählen dort Entpacken und entscheiden dann, ob Sie das Archiv beispielsweise im aktuellen Verzeichnis (Hier entpacken) oder an einer anderen Stelle im Dateisystem (Entpacken nach) auspacken. Die letzte Variante öffnet einen Auswahldialog, in dem Sie den gewünschten Ordner angeben. Anschließend präsentiert Konqueror den Archivinhalt in einem neuen Fenster.
Ver”zip”t und zugenäht!
Ein Zip-Archiv legen Sie auf der Kommandozeile mit dem gleichnamigen Befehl (zip) an; geben Sie dabei den Archivnamen und die Dateien oder Verzeichnisse an, die Sie einpacken wollen, z. B.:
zip archiv.zip datei1 datei2 ordner
Das Programm verrät, welche Schritte es gerade ausführt und wie stark es komprimiert:
adding: datei1 (deflated 37%) adding: datei2 (deflated 66%) adding: datei3 (deflated 65%)
Um eine Datei oder einen Ordner einem bestehenden Archiv hinzuzufügen, setzen Sie die Option -g (engl. grow, größer machen) ein. Geben Sie auch hier wieder zunächst den Namen des Archivs an, danach den Parameter und dann die anzuhängende Datei, z. B.:
$ zip archiv.zip -g datei4 updating: datei4 (deflated 40%)
Auch hier informiert das Programm über die Handlung. Ersetzen Sie -g im Aufruf durch -d, entfernt zip Dateien aus dem Archiv.
Ebenso schnell geht das Auspacken mit dem Befehl unzip: Um auf Nummer sicher zu gehen, schauen Sie zunächst nur den Inhalt an:
$ unzip -l archiv.zip
Archive: archiv.zip
Length Date Time Name
——– —- —- —-
9 01-08-06 17:12 datei1
633 01-07-06 21:51 datei2
Lassen Sie die Option -l weg, um das Archiv im aktuellen Verzeichnis auszupacken:
$ unzip archiv.zip Archive: archiv.zip extracting: datei1 inflating: datei2
Das Programm hat praktischerweise eine eingebaute Sicherheitsabfrage. Liegen im Verzeichnis schon Dateien mit demselben Namen, fragt unzip nach:
replace datei1? [y]es, [n]o, [A]ll, [N]one, [r]ename:
Wenn Sie die betroffene Datei überschreiben wollen, drücken Sie [Y] gefolgt von [Eingabe]. Alternativ klammern Sie die Datei mit [N] aus, entscheiden mit [Umschalt]+[A], dass Sie alle weiteren Dateien auch ersetzen wollen, oder mit [Umschalt]+[N], dass keine Datei überschrieben wird. Um die Datei unter einem neuen Namen abzulegen, drücken Sie [R] und geben den neuen Dateinamen ein.
Jäger und Sammler “tar”
Während das Programm zip nicht nur archiviert, sondern gleichzeitig auch komprimiert, fasst tar lediglich Daten zu einem Archiv zusammen, das Sie anschließend mit einem Programm wie gzip oder bzip2 komprimieren.
Mehrere Dateien stecken Sie mit dem folgenden Befehl in ein Archiv:
$ tar -cvf archiv.tar datei1 datei2 datei1 datei2
Alternativ darf es auch ein Verzeichnis mit allen Unterordnern sein:
$ tar -cvf archiv.tar verzeichnis verzeichnis/ verzeichnis/datei1 verzeichnis/datei2
Neben den Optionen (c, engl. create, erzeugt ein Archiv; v, engl. verbose, ausführliche Anzeige; f, engl. file, erwartet als Nächstes den Dateinamen des Archivs) geben Sie den Namen der Archivdatei gefolgt von den zu verpackenden Daten an.
Haben Sie etwas vergessen, ist das kein Problem – auch tar lässt Sie ein bestehendes Archiv vergrößern:
tar -r neuedatei -f archiv.tar
Wer eine Datei aus einem tar-Archiv entfernen möchte, nimmt den Parameter --delete zur Hilfe. Geben Sie zunächst die zu löschende Datei an, danach bestimmen Sie wieder mit -f den Archivnamen:
tar --delete datei3 -f archiv.tar
Um ein tar-Archiv wieder auszupacken, verwenden Sie den Parameter -x (engl. extract):
tar -xvf archiv.tar
Anders als unzip überschreibt tar vorhandene Dateien mit gleichem Namen, ohne nachzufragen. Ersetzen Sie daher zunächst -x durch -t, um den Inhalt des Archivs am Bildschirm zu betrachten:
tar -tvf archiv.tar
Komprimieren mit “gzip” und “bzip2”
Für das Verkleinern der tar-Archive sind unter Linux die beiden Komprimierungsprogramme gzip und bzip2 zuständig. Letzteres setzt auf einen anderen Kompressionsalgorithmus und erzeugt etwas kleinere Dateien. Beide Programme legen keine Archive an, sondern verkleinern nur einzelne Dateien – wollen Sie meherere Dateien oder ganze Verzeichnisse komprimieren, legen Sie zuerst ein tar-Archiv an und verkleinern dieses oder fassen beide Schritte mit einer speziellen tar-Option zusammen (siehe Abschnitt Alles in einem Rutsch). Was zip (und entsprechende Windows-Tools) in einem Rutsch machen, ist unter Linux in zwei logische Schritte aufgeteilt.
Um eine Datei kleiner zu machen, geben Sie den Befehl
gzip datei
bzw.
bzip2 datei
ein. Beide Programme ersetzen die Originaldatei durch eine komprimierte Version mit der Endung .gz bzw. .bz2. Wie stark die Tools die Ausgangsdatei verkleinern, hängt vom Inhalt ab: Am besten komprimierbar sind Dateien, in denen sich ähnliche Muster wiederholen. MP3-Dateien und JPEG-Bilder, die schon komprimierte Daten enthalten, schrumpfen daher fast gar nicht.
Darüber hinaus nehmen Sie selbst Einfluss auf die Komprimierung, indem Sie eine Kompressionsrate zwischen 1 und 9 angeben: So arbeitet gzip -1 datei bzw. bzip2 -1 datei am schnellsten, aber mit niedrigster Kompressionsrate; entsprechend komprimieren die Programme mit dem Parameter -9 am stärksten. Standardeinstellungen sind -6 für gzip und -9 für bzip2.
Die Befehle zum Auspacken heißen gunzip bzw. bunzip2:
gunzip datei.gz bunzip2 datei.bz2
Liegt eine Datei mit demselben Namen im Verzeichnis, verhalten sich die beiden Programme unterschiedlich: gunzip fragt nach, ob Sie die Datei überschreiben möchten:
gunzip: datei1 already exists; do you wish to overwrite (y or n)?
Drücken Sie [Y], um die Datei zu überschreiben, oder [N], um den Vorgang abzubrechen, und bestätigen Sie Ihre Wahl mit [Eingabe].
bunzip2 verhält sich anders: Standardmäßig verweigert das Tool den Dienst und bricht den Vorgang mit der Meldung Output file datei1 already exists. (“Die Datei datei1 gibt es schon”) ab. Wollen Sie die Datei dennoch ersetzen, teilen Sie das dem Programm über die Option -f (engl. force, erzwingen) mit:
bunzip2 -f datei.bz2
Alles in einem Rutsch
Mit den gezeigten Kommandos tar und gzip bzw. bzip2 erstellen Sie komprimierte Archive. Einen Arbeitsschritt können Sie sich allerdings sparen: tar kennt Parameter, die das Archiv in einem Rutsch komprimieren. Um ein gzip-komprimiertes tar-Archiv zu erstellen, schreiben Sie beispielsweise:
tar -czvf archiv.tar.gz verzeichnis
Entsprechend ersetzen Sie im Aufruf die Option -z durch -j, wenn Sie auf bzip2 als Komprimierungskünstler setzen:
tar -cjvf archiv.tar.bz2 verzeichnis
Die richtige Dateiendung müssen Sie selbst angeben, wenn Sie die Schritte auf diese Weise zusammenfassen. An komprimierte tar-Archive können Sie keine weiteren Daten anhängen – entweder packen Sie die Daten mit gunzip respektive bunzip2 wieder aus, hängen die Datei ans Archiv an und komprimieren es wieder, oder Sie greifen gleich zu zip.
Zum Auspacken von .tar.gz– und .tar.bz2-Archiven ist ebenfalls nur ein Kommandozeilenaufruf nötig:
tar -xzvf archiv.tar.gz
bzw.
tar -xjvf archiv.tar.bz2
Beachten Sie auch hier, dass tar ohne Warnung Dateien mit gleichem Namen überschreibt – daher können Sie auch in diesem Fall zunächst -x durch -t ersetzen und nachschauen, was das Paket enthält:
$ tar -tzvf archiv.tar.gz datei1 datei2
Ob Sie Pakete im Konqueror oder auf der Kommandozeile erstellen, ändert natürlich nichts an Format und Inhalt: Die mit tar erzeugten Archive können Sie also auch über den Konqueror wieder entpacken.
Glossar
-
tar
-
Der Name leitet sich vom englischen tape archiver ab –
tarwar ursprünglich für die Verwaltung von Bandarchiven vorgesehen. Auch wenn diese Backup-Medien heute nur noch im Profibereich verwendet werden, setzt Linux immer noch auftarals Archivar.
[1] 7-Zip-Homepage: http://www.7-zip.org/

