Tar
Was ist das?
Mit tar ist es möglich, mehrere Dateien oder ganze Verzeichnisse in einem Archiv abzulegen bzw. diese wieder aus einem Archiv zu extrahieren.
tar [Kommando][Optionen] Datei(en)
Kommandos
- -c : Erzeugen eines neuen Archives
- -t : Anzeigen des Inhalts eines Archives
- -x : Extrahieren aus einem Archiv
Optionen
- -v : ausführliche Ausgabe
- -f dat1 verwendet dat1 als Archiv
- -z komprimiert im gzip Verfahren (Dateiformat .tar.gz)
- -j komprimiert im bzip2 Verfahren (Dateiformat .bz2)
- -C ver1/ wechselt vor der Ausführung nach ver1/
- -J komprimiert im xzip Verfahren (Dateiformat .xz
Anmerkung:
Für gewöhnlich können Optionen von Linuxbefehlen in einer beliebigen Reihenfolge angegeben werden. Jedoch erwartet die Option -f direkt den Dateinamen und sollte daher als letzte Option oder getrennt stehen.
Beispiele
Erstellen eines Tar-Gzip-Archivs mit den Dateien in /etc
- tar -czf /tmp/zero_etc_dateien.tar.gz *
Anzeigen der Dateien im Archiv zero_etc_dateien.tar.gz
- tar -tf /tmp/zero_etc_dateien.tar.gz
oder:
- tar -t -f /tmp/zero_etc_dateien.tar.gz
Erstellen eines Bzip2-Archivs mit ausgewählten Dateien (telefonbuch, name)
root@zero:~# tar -cjf kontakte.bz2 telefonbuch name
Ausführliches Entpacken eines Bzip2-Archivs in das aktuelle Verzeichnis
- tar -xvjf kontakte.bz2
telefonbuch name
Entpacken einer Datei aus einem Bzip2-Archiv in das aktuelle Verzeichnis
- tar -xjvf kontakte.bz2 telefonbuch
telefonbuch
Entpacken eines Bzip2-Archivs in das Verzeichnis /tmp
- tar -xjf kontakte.bz2 -C /tmp/
Spezielles
tar schreibt auf STDOUT und liest über die PIPE von STDIN
- tar -C /bin -z -c -f - . | tar -C /tmp -x -v -z -f
tar schreibt auf STDOUT über nc zu Rechner chris
- tar -C /bin -z -c -f - . | nc chris 666
tar liest von nc Port 666 über die PIPE von STDIN
- nc -l -p 666 | tar -C /tmp -x -v -z -f -
Vom Tararchive zum Binary
Am Beispiel von Squid
- Squid Sourcecode besorgen
- cp /share/squid-2.7.STABLE1.tar.gz .
- Paket entpacken
- tar -xvzf squid-2.7.STABLE1.tar.gz .
.....
zstd
- tar -c /usr/share | zstd > share.tar.zst