Der tar-Befehl ist nützlich, um mehrere Dateien und/oder Verzeichnisse zu bündeln. In gewisser Weise ähnelt es dem Befehl zip. ZIP-Dateien sind jedoch per Definition komprimiert; tar-Dateien können komprimiert werden, müssen es aber nicht.
Erstellen einer tar-Datei
In den folgenden Beispielen wird die folgende Dateistruktur verwendet:ein Top-Level-Verzeichnis namens /var/tmp/test, das die Dateien file1, file2 und file3 enthält.
# ls -lR /var/tmp/test /var/tmp/test: total 12 -rw-r--r-- 1 root root 2277 Jan 4 09:57 file1 -rw-r--r-- 1 root root 1611 Jan 4 09:58 file2 -rw-r--r-- 1 root root 1456 Jan 4 09:58 file3
1. Angenommen, Sie befinden sich bereits im Verzeichnis /var/tmp/test, um eine tar-Datei aller Dateien im Verzeichnis test zu erstellen, führen Sie den folgenden Befehl aus.
# tar cvf test.tar . ./ tar: ./test.tar: file is the archive; not dumped ./file1 ./file3 ./file2
Hier,
c – (ein Archiv) erstellen
v – wortreich (nur weil)
f – Dateiname (der Name unserer TAR-Datei)
. – aktuelles Verzeichnis
Den Inhalt einer TAR-Datei anzeigen
Das aktuelle Verzeichnis enthält nun eine Datei namens test.tar . Um den Inhalt der tar-Datei anzuzeigen, könnten wir diesen Befehl ausführen:
# tar tvf test.tar drwxr-xr-x root/root 0 2018-01-04 10:01 ./ -rw-r--r-- root/root 2277 2018-01-04 09:57 ./file1 -rw-r--r-- root/root 1456 2018-01-04 09:58 ./file3 -rw-r--r-- root/root 1611 2018-01-04 09:58 ./file2
Hier
t – Inhaltsverzeichnis (Liste)
v – verbose (alle Informationen anzeigen)
f – Dateiname (test.tar)
Komplette tar-Datei extrahieren
Um den gesamten Inhalt der tar-Datei in das aktuelle Verzeichnis zu extrahieren, können wir Folgendes eingeben:
# tar xvf test.tar ./ ./file1 ./file3 ./file2
Hier
x – extrahieren
v – ausführlich
f – Dateiname (test.tar)
Extrahieren bestimmter Dateien aus der tar-Datei
Sie können auch eine bestimmte Datei aus der tar-Datei extrahieren, anstatt die gesamte tar-Datei zu extrahieren. Um nur die Datei file1 aus dem Archiv zu extrahieren, geben Sie den folgenden Befehl ein:
tar xvf test.tar file1
Komprimierung mit tar verwenden
Wenn Sie Ihre tar-Dateien auch komprimieren möchten, können Sie das gzip kombinieren Dienstprogramm mit tar in der Befehlszeile durch Hinzufügen des z Wechseln Sie zum Befehl. Wenn dies erledigt ist, ändern wir normalerweise das Suffix unseres TAR-Dateinamens von .tar entweder in .tgz oder .tar.gz. Dadurch wird jeder, der die Datei sieht, wissen, dass es sich um eine gzip-tar-Datei handelt.
# tar zcvf test.tgz . ./ ./file1 ./file3 ./file2 tar: .: file changed as we read it
# ls -lrt total 16 -rw-r--r-- 1 root root 2277 Jan 4 09:57 file1 -rw-r--r-- 1 root root 1611 Jan 4 09:58 file2 -rw-r--r-- 1 root root 1456 Jan 4 09:58 file3 -rw-r--r-- 1 root root 1639 Jan 4 11:27 test.tgz
Hier
z – gzip-Komprimierung
c – Erstellen Sie
v – ausführlich
f – Dateiname (test.tgz)
. – aktuelles Verzeichnis
Der tar-Befehl kennt einen anderen Komprimierungsalgorithmus namens bzip2 . Um bzip2 anstelle von gzip zu verwenden, ersetzen Sie die Datei „z ‘ im obigen Befehl mit einem ‘j ‘ Zum Beispiel:
# tar jcvf test.bz2 .
Fügen Sie zum Extrahieren der komprimierten Dateien die Optionen „z“ und „j“ hinzu. Zum Beispiel
# tar xzvf test.tgz # tar xjvf test.bz2
Berechtigungen mit tar beibehalten
Wenn Sie die Berechtigungen der von Ihnen gesicherten Dateien beibehalten möchten, verwenden Sie das p Option mit dem tar-Befehl. Dies speichert die uid, gid sowie die spezifischen Berechtigungsattribute der Dateien (Lesen, Schreiben, Ausführen usw.)
# tar pcvf test.tar .
Beim Extrahieren der obigen tar-Datei müssten Sie die Datei p verwenden Option erneut, wenn Sie die Dateien mit den beibehaltenen Dateiberechtigungen extrahieren möchten. Zum Beispiel:
# tar pxvf test.tar .