14.3. Komprimieren und Archivieren von Dateien

Manchmal ist es nützlich, eine Gruppe von Dateien gemeinsam in einer Datei zu speichern, so dass eine Sicherungskopie erstellt werden kann und die Dateien einfach in ein anderes Verzeichnis oder auf einen anderen Computer übertragen werden können. Es kann ebenfalls manchmal nützlich sein, mehrere Dateien in eine Datei zu komprimieren, da dadurch weniger Speicherplatz benötigt wird und diese Dateien schneller heruntergeladen werden können.

Es ist wichtig, den Unterschied zwischen einer Archivdatei und einer komprimierten Datei verstehen zu können. Eine Archivdatei ist eine in einer einzigen Datei gespeicherte Sammlung von Dateien und Verzeichnissen. Sie ist nicht komprimiert — sie beansprucht den gleichen Speicherplatz wie die einzelnen Dateien und Verzeichnisse, die in der Archivdatei zusammengefasst sind. Eine komprimierte Datei ist eine Sammlung von Dateien und Verzeichnissen, die in einer Datei gespeichert sind und so gespeichert werden, dass sie weniger Speicherplatz benötigen als die einzelnen in der komprimierten Datei enthaltenen Dateien und Verzeichnisse. Wenn Ihr Computer nicht über ausreichend Speicherplatz verfügt, können Sie Dateien, die Sie nicht sehr oft verwenden, oder Dateien, die Sie speichern möchten, aber nicht mehr verwenden, komprimieren und damit Speicherplatz sparen.

AnmerkungAnmerkung
 

Eine Archiv-Datei ist keine komprimierte Datei, aber eine komprimierte Datei kann eine Archiv-Datei sein.

14.3.1. Verwenden von File Roller

Red Hat Linux verfügt über ein grafisches Dienstprogramm namens File Roller, mit dem Sie Dateien und Verzeichnisse komprimieren, dekomprimieren und archivieren können. File Roller unterstützt die allgemein verwendeten UNIX- und Linuxformate zur Komprimierung und Archivierung von Dateien und verfügt über eine einfache Schnittstelle sowie bei Bedarf über eine ausführlich gestaltete Hilfsdokumentation. Weiterhin ist es in die Desktop-Umgebung und den grafischen Dateimanager integriert, so dass die Arbeit mit Archivdateien wesentlich erleichtert wird.

Klicken Sie zum Starten von File Roller auf Hauptmenü => Zubehör => File Roller. Ansonsten können Sie den File Roller auch durch das Eingeben von file-roller von einem Shell-Prompt aus starten. Abbildung 14-1 zeigt Ihnen File Roller in Aktion.

TippTipp
 

Wenn Sie einen Dateimanager (wie z.B. Nautilus) verwenden, können Sie mit einem einfachen Doppelklick auf die Datei, die Sie aus dem Archiv entfernen oder dekomprimieren wollen, den File Roller starten. Nun öffnet sich das File Roller -Anzeigefenster, das die dekomprimierte bzw. aus dem Archiv genommene Datei in einem Ordner anzeigt; Sie können nun die Datei entweder aus dem Ordner herausnehmen oder anzeigen lassen.

Abbildung 14-1. File Roller in Aktion

14.3.1.1. Eine Datei mit dem File Roller dekomprimieren oder aus dem Archiv entfernen

Wenn Sie eine Datei aus dem Archiv entfernen und/oder dekomprimieren wollen, klicken Sie auf der Symbolleiste auf Öffnen. Nun öffnet sich ein Dateimenü, aus dem Sie das Archiv auswählen können, das Sie bearbeiten möchten. Wenn Sie z.B. eine Datei mit dem Namen foo.tar.gz haben, die in Ihrem Home-Verzeichnis gespeichert ist, markieren Sie die Datei und klicken Sie auf OK. Hierauf erscheint die Datei im größten Anzeigefenster von File Roller als Ordner, in dem Sie sich durch einen Doppelklick auf das Ordner-Symbol frei bewegen können. File Roller übernimmt alle Verzeichnis- und Unterverzeichnishierarchien unverändert, was Ihnen das Suchen nach einer bestimmten Datei im Archiv erleichtert. Durch das Klicken auf den Button Entnehmen können Sie einzelne Dateien oder ganze Archive herausnehmen. Jetzt wählen Sie das Verzeichnis aus, in dem Sie die entnommenen Dateien speichern möchten und klicken auf OK.

14.3.1.2. Erstellen von Archiven mit dem File Roller

Wenn sie mehr Speicherplatz auf Ihrer Festplatte erzeugen wollen oder mehrere Dateien oder ein Dateiverzeichnis per E-Mail verschicken wollen, können Sie mit Hilfe von File Roller Archive Ihrer Dateien und Verzeichnisse erstellen. Klicken sie zum Erstellen eines neuen Archivs auf der Symbolleiste auf Neu. Es öffnet sich nun ein Datei-Browser, über den Sie den Archivnamen und die Komprimierungsmethode festlegen können. Wählen Sie zum Beispiel ein Tar komprimiert mit gzip (tar.gz)-Format aus dem Drop-Down Menü aus, und geben Sie den Namen der zu erstellenden Archivdatei ein. Klicken Sie nun auf OK . Ihr neues Archiv kann jetzt mit Dateien und Verzeichnissen gefüllt werden. Um Dateien zu Ihrem neuen Archiv hinzuzufügen, klicken Sie auf Hinzufügen, worauf sich ein Browser-Fenster öffnet (Abbildung 14-2) , in dem Sie nach der Datei oder dem Verzeichnis suchen können, die/das Sie in Ihr Archiv aufnehmen wollen. Nachdem Sie diesen Vorgang beendet haben, klicken Sie auf OK und betätigen nun zum Schließen des Archivs auf den Button Schließen.

Abbildung 14-2. Erstellen eines Archivs mit dem File Roller

TippTip
 

Wir haben hier noch lange nicht alle Funktionen des File Roller behandelt. Weitere Informationen erhalten Sie im File Roller-Handbuch (zu dem Sie durch das Klicken auf Hilfe => Handbuch) gelangen).

14.3.2. Dateien am Shell-Prompt komprimieren

Komprimierte Dateien benötigen weniger Speicherplatz und werden schneller heruntergeladen als große, unkomprimierte Dateien. In Red Hat Linux können Sie Dateien mit den Tools gzip, bzip2, oder zip komprimieren.

Wir empfehlen das Komprimierungstool bzip2, da es am häufigsten zum Komprimieren verwendet wird und, wie auch gzip in den meisten UNIX-ähnlichen Betriebssystemen enthalten ist. Wenn Sie Dateien zwischen Linux und anderen Betriebssystemen, wie MS Windows, übertragen wollen, sollten Sie zip verwenden, da es von diesen Betriebssystemen am häufigsten verwendet wird.

KomprimierungstoolsErweiterungDekomprimierungstool
gzip.gzgunzip
bzip2.bz2bunzip2
zip.zipunzip

Tabelle 14-1. Komprimierungstools

Mit gzip komprimierte Dateien haben die Erweiterung .gz, mit bzip2 komprimierte Dateien haben die Erweiterung .bz2, und mit zip komprimierte Dateien die Erweiterung .zip.

Mit gzip komprimierte Dateien werden mit gunzip, mit bzip2 komprimierte Dateien mit bunzip2 und mit zip komprimierte Dateien mit unzip dekomprimiert.

14.3.2.1. Bzip2 und Bunzip2

Um eine Datei mit bzip2 zu komprimieren, geben Sie am Shell-Prompt folgenden Befehl ein:

bzip2 filename

Die Datei wird komprimiert und als filename.bz2 gespeichert.

Um eine komprimierte Datei wieder zu erweitern, geben Sie folgenden Befehl ein:

bunzip2 filename.bz2

Die Datei filename.bz2 wird gelöscht und durch filename ersetzt.

Sie können mehrere Dateien und Verzeichnisse gleichzeitig mit bzip2 komprimieren und durch ein Leerzeichen voneinander getrennt aufführen:

bzip2 filename.bz2 file1 file2 file3 /usr/work/school 

Mit dem oben aufgeführten Befehl werden die Dateien file1, file2, file3 und die Inhalte des Verzeichnisses /usr/work/school (angenommen, dieses Verzeichnis existiert) komprimiert und in der Datei filename.bz2 abgelegt.

TippTipp
 

Weitere Informationen erhalten Sie auf den man-Seiten von bzip2 und bunzip2, die Sie aufrufen können, indem Sie man bzip2 und man bunzip2 am Shell-Prompt eingeben.

14.3.2.2. Gzip and Gunzip

Um mit gzip Dateien zu komprimieren, geben Sie am Shell-Prompt den folgenden Befehl ein:

gzip filename

Die Datei wird komprimiert und als filename.gz gespeichert.

Um die Datei wieder zu erweitern, geben Sie den folgenden Befehl ein:

gunzip filename.gz

Die Datei filename.gz wird gelöscht und durch filename ersetzt.

Sie können mehrere Dateien und Verzeichnisse gleichzeitig mit gzip komprimieren und durch ein Leerzeichen voneinander getrennt ausführen :

gzip -r filename.gz file1 file2 file3 /usr/work/school 

Mit dem oben aufgeführten Befehl können Sie die Dateien file1, file2, file3 sowie die Inhalte des Verzeichnisses /usr/work/school (angenommen dieses Verzeichnis existiert) komprimieren und in der Datei filename.gz ablegen.

TippTipp
 

Weitere Informationen erhalten Sie auf den man-Seiten von gzip und gunzip, die Sie aufrufen können, indem Sie am Shell-Prompt den Befehl man gzip und man gunzip eingeben.

14.3.2.3. Zip und Unzip

Um eine Datei mit zip zu komprimieren, geben Sie am Shell-Prompt den folgenden Befehl ein:

zip -r filename.zip filesdir

In diesem Beispiel ist filename.zip die Datei, die Sie erstellen und filesdir das Verzeichnis, in das Sie die neue zip-Datei ablegen möchten. Mit der Option -r wird festgelegt, dass alle Dateien, die im Verzeichnis filesdir enthalten sind, rekursiv in die Datei aufgenommen werden.

Um den Inhalt einer zip-Datei zu entnehmen, geben Sie folgenden Befehl ein:

unzip filename.zip

Sie können mehrere Dateien und Verzeichnisse gleichzeitig mit zip komprimieren. Lassen Sie dabei bei der Aufzählung zwischen den Dateien jeweils eine Leerstelle:

zip -r filename.zip file1 file2 file3 /usr/work/school 

Mit dem oben aufgeführten Befehl werden die Dateien file1, file2, file3 und die Inhalte des Verzeichnisses /usr/work/school (angenommen, dieses Verzeichnis existiert) komprimiert und in der Datei filename.zip abgelegt.

TippTipp
 

Weitere Informationen erhalten Sie auf den man-Seiten von zip und unzip, die Sie aufrufen können, indem Sie man zip und man unzip am Shell-Prompt eingeben.

14.3.3. Dateien am Shell-Prompt archivieren

Eine tar-Datei ist eine Sammlung von mehreren Dateien und/oder Verzeichnissen in einer einzigen Datei. Eine solche Datei ist zum Durchführen von Backups und zum Erstellen von Archiven empfehlenswert.

Im Folgenden einige Optionen, die tar bietet:

Um eine tar-Datei zu erstellen, geben Sie Folgendes ein:

tar -cvf filename.tar directory/file

In diesem Beispiel ist Dateiname.tar die Datei, die Sie erstellen und Dateien/Verzeichnisse die Datei oder das Verzeichnis, das Sie in der neuen Datei ablegen möchten.

Sie können mehrere Dateien und Verzeichnisse gleichzeitig mit tar bearbeiten und durch ein Leerzeichen voneinander getrennt aufführen:

tar -cvf filename.tar /home/mine/work /home/mine/school

Durch den oben aufgeführten Befehl legen Sie alle Dateien in den Unterverzeichnissen work und school von /home/mine ab, und zwar in die neue Datei filename.tar des aktuellen Verzeichnisses.

Wenn Sie den Inhalt einer tar-Datei auflisten möchten, geben Sie Folgendes ein:

tar -tvf filename.tar

Wenn Sie den Inhalt einer tar-Datei entnehmen möchten, geben Sie Folgendes ein:

tar -xvf filename.tar

Dieser Befehl entfernt die tar-Datei zwar nicht, legt aber Kopien ihres Inhalts im aktuell ausgeführten Verzeichnis ab, und erhält die von der archivierten Datei verwendete Verzeichnisstruktur. Wenn zum Beispiel die tar-Datei eine Datei mit dem Namen bar.txt im foo/ Verzeichnis enthält, legt das Entnehmen der archivierten Datei ein Verzeichnis mit dem Namen foo/ in Ihrem aktuell verwendeten Verzeichnis an, das die Datei bar.txt beinhaltet.

Bedenken Sie, dass der Befehl tar nicht standardmäßig Dateien komprimiert. Um eine mit tarred und bzipped komprimierte Datei zu erstellen, verwenden Sie die Option -j:

tar -cjvf filename.tbz file

tar-Dateien, die mit bzip2 komprimiert werden, erhalten normalerweise die Erweiterung .tbz; manchmal werden diese Dateien jedoch auch mit der Erweiterung tar.bz2 archiviert.

it diesem Befehl erstellen Sie eine Archiv-Datei und komprimieren diese zu der Datei filename.tbz. Wenn Sie die Datei filename.tbz mit dem Befehl bunzip2 dekomprimieren, wird die Datei filename.tbz entfernt und durch filename.tar ersetzt.

Sie können eine mit dem Befehl bzip bearbeitete tar-Datei mit folgendem Befehl wieder vergrößern und aus dem Archiv nehmen:

tar -xjvf filename.tbz

Verwenden Sie die Option -z, um eine mit tar und gzip komprimierte Datei zu erstellen:

tar -czvf filename.tgz file

tar-Dateien, die mit gzip komprimiert wurden, erhalten normalerweise die Erweiterung .tgz.

Mit diesem Befehl erstellen Sie die Archiv-Datei filename.tar und komprimieren diese als Datei filename.tgz. (Die Datei filename.tar wird nicht gespeichert.) Wenn Sie die Datei filename.tgz mit dem Befehl gunzip dekomprimieren, wird die Datei filename.tgz entfernt und durch die Datei filename.tar ersetzt.

Sie können eine gzip tar -Datei mit dem folgenden Befehl entpacken:

tar -xzvf filename.tgz

TippTipp
 

Nähere Informationen zum Befehl tar erhalten Sie, indem Sie den Befehl man tar eingeben und damit die entsprechende man-Seite aufrufen.