Operation Manual
“buch” — 2014/9/6 — 18:56 — page 140 — #136
3 Arbeiten im Terminal
Wenn Sie das Beispiel mit einem festen Link ausführen, sieht es so aus, als würden
sich im Verzeichnis
test zwei unabhängige Dateien befinden. In Wahrheit sind aber
abc und xyz nur zwei Verweise auf ein und dieselbe Datei. ls -l gibt in der zweiten
Spalte an, wie viele Links auf eine bestimmte Datei zeigen – im vorliegenden Beispiel
also 2. Wenn Sie zusätzlich die Option
-i verwenden, gibt ls auch den Inode der Datei
an. Inodes sind interne Identifikationsnummern des Dateisystems. Die Übereinstim-
mung der Inodes beweist, dass
abc und xyz durch einen festen Link verbunden sind:
mkdir test ; cd test
touch abc
ln abc xyz
ls - l
-rw -r--r -- 2 pi pi 0 Jun 14 13:54 abc
-rw -r--r -- 2 pi pi 0 Jun 14 13:54 xyz
ls - li
131595 -rw -r--r -- 2 pi pi 0 Jun 14 13:54 abc
131595 -rw -r--r -- 2 pi pi 0 Jun 14 13:54 xyz
cd ..
rm -r test
3.8 Komprimierte Dateien und Archive
In Linux gibt es diverse Möglichkeiten, um Dateien zu komprimieren, um kompri-
mierte Dateien wieder auszupacken sowie um mehrere Dateien zu einem Archiv
zusammenzufassen (siehe Tabelle 3.9).
Kommando Bedeutung
gzip komprimiert eine Datei (Kennung .gz).
gunzip dekomprimiert die Datei wieder.
bzip2 komprimiert eine Datei (Kennung .bz2).
bunzip2 dekomprimiert die Datei wieder.
xz komprimiert eine Datei (Kennung .xz).
unxz dekomprimiert die Datei wieder.
tar erstellt bzw. extrahiert ein Dateiarchiv.
zip erzeugt ein Windows-kompatibles ZI P-Archiv.
unzip extrahiert ein ZIP-Archiv .
zipinfo zeigt Informationen über ein ZIP-Archiv an.
Tabelle 3.9 Kommandos zum Komprimieren und Archivieren von Dateien
140
“buch” — 2014/9/6 — 18:56 — page 141 — #137
3
3.8 Komprimierte Dateien und Archive
Die wichtigsten Kommandos lernen Sie hier kennen. Im Raspberry-Pi-Alltag kommt
vor allem das Dekomprimieren bzw. das Auspacken von Archiven häufig vor: Wenn
Sie aus dem Internet Beispieldateien herunterladen, sind diese in der Regel kompri-
miert bzw. als Archiv verpackt. Die im Folgenden vorgestellten Kommandos sind aber
natürlich auch für Backup-Scripts praktisch oder dann, wenn Sie mehrere Dateien per
E-Mail weitergeben bzw. auf einen FTP-Server hochladen möchten.
Komprimieren und dekomprimieren
Das populärste Komprimierkommando unter Linux ist gzip. Es komprimiert die als
Parameter angegebenen Dateien und benennt sie in
name.gz um. gunzip funktioniert
in die umgekehrte Richtung. Die beiden Kommandos verwenden den sogenannten
LZ77-Lempel-Ziv-Algorithmus, der sich besonders gut für Textdateien eignet, nicht
aber für Audio- oder Video-Dateien. Die Komprimierung ist verlustlos; nach dem
Dekomprimieren steht die ursprüngliche Datei wieder unverändert zur Verfügung.
Die folgenden Kommandos demonstrieren die Anwendung für eine CSV-Datei mit
tabellarisch formatierten Messdaten, die sich besonders gut komprimieren lassen:
ls -l test . csv
-rw -r--r -- 1 pi pi 168325 Jun 14 16:47 test . csv
gzip test . csv
ls -l test . csv.gz
-rw -r--r -- 1 pi pi 24837 Jun 14 16:47 test .csv .gz
gunzip test .csv .gz
ls -l test . csv
-rw -r--r -- 1 pi pi 168325 Jun 14 16:47 test . csv
bzip2
und bunzip2 sind Alternativen zu gzip und gunzip. Der Vorteil dieser Kom-
mandos besteht in der etwas besseren Komprimierung, der Nachteil in der etwas
langsameren Ausführung. Die Dateiendung derart komprimierter Dateien ist
.bz2
. Anstelle von gzip und bzip2 können Sie zum Komprimieren auch xz verwenden.
Damit erhalten Sie in den meisten Fällen noch kleinere Dateien. Das Komprimieren
erfordert dafür noch mehr Zeit bzw. CPU-Ressourcen.
Noch mehr Komprimierkommandos
Wenn die bestmögliche Komprimierung das vorrangige Ziel ist, können Sie auch das
Kommando
7zr aus dem Paket p7zip ausprobieren. Ganz anders ist die Zielsetzung
des Kommandos
lzop aus dem gleichnamigen Paket: Es arbeitet viel schneller als
alle bisher genannten Kommandos. Dafür sind die resultierenden Dateien vergleichs-
weise groß (ca. 50 Prozent größer als bei
gzip). Der Einsatz von lzop ist vor allem
dann empfehlenswert, wenn Sie on the fly mit möglichst geringer CPU-Belastung
komprimieren möchten, z. B . zur Übertragung einer großen Datei über eine Netzwerk-
verbindung.
141