GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Der Linux-tar-Befehl erklärt

Der Linux-Tar-Befehl ist das Schweizer Taschenmesser des Linux-Admins, wenn es um das Archivieren oder Verteilen von Dateien geht. Gnu Tar-Archive können mehrere Dateien und Verzeichnisse enthalten, Dateiberechtigungen können beibehalten werden und es unterstützt mehrere Komprimierungsformate. Der Name tar steht für „T Affe Ar chiver", das Format ist ein offizieller POSIX-Standard.

TAR-Dateiformate

Eine kurze Einführung in die Komprimierungsstufen von tar.

  • Keine Komprimierung Unkomprimierte Dateien haben die Dateiendung .tar.
  • Gzip-Komprimierung Das Gzip-Format ist das am weitesten verbreitete Komprimierungsformat für tar, es ist schnell zum Erstellen und Extrahieren von Dateien. Dateien mit gz-Komprimierung haben normalerweise die Dateiendung .tar.gz oder .tgz. Unten finden Sie einige Beispiele zum Erstellen und Extrahieren einer tar.gz-Datei.
  • Bzip2-Komprimierung Das Bzip2-Format bietet eine bessere Komprimierung als das Gzip-Format. Das Erstellen von Dateien ist langsamer, die Dateiendung ist normalerweise .tar.bz2.
  • Lzip (LZMA)-Komprimierung Die Lzip-Komprimierung kombiniert die Geschwindigkeit von Gzip mit einer Komprimierungsstufe, die Bzip2 ähnlich (oder sogar besser) ist. Unabhängig von diesen guten Eigenschaften ist dieses Format nicht weit verbreitet.
  • Lzop-Komprimierung Diese Komprimierungsoption ist wahrscheinlich das schnellste Komprimierungsformat für tar, es hat eine ähnliche Komprimierungsstufe wie gzip und ist nicht weit verbreitet.

Die gängigen Formate sind tar.gz und tar.bz2. Wenn Ihr Ziel eine schnelle Komprimierung ist, verwenden Sie gzip. Wenn die Größe der Archivdatei kritisch ist, verwenden Sie tar.bz2.

Wofür wird der tar-Befehl verwendet?

Hier einige häufige Anwendungsfälle des tar-Befehls.

  • Backup von Servern und Desktops.
  • Dokumentenarchivierung.
  • Softwareverteilung.

tar wird installiert

Der Befehl wird standardmäßig auf den meisten Linux-Systemen installiert. Hier sind die Anweisungen zur Installation von tar, falls der Befehl fehlt.

CentOS

Führen Sie den folgenden Befehl als Root-Benutzer auf der Shell aus, um tar auf CentOS zu installieren.

yum install tar

Ubuntu

Dieser Befehl installiert tar auf Ubuntu. Der „sudo“-Befehl stellt sicher, dass der apt-Befehl mit Root-Rechten ausgeführt wird.

sudo apt-get install tar

Debian

Der folgende apt-Befehl installiert tar unter Debian.

apt-get install tar

Windows

Der tar-Befehl ist auch für Windows verfügbar, Sie können ihn vom Gunwin-Projekt herunterladen. http://gnuwin32.sourceforge.net/packages/gtar.htm

tar.gz-Dateien erstellen

Hier ist der tar-Befehl, der auf der Shell ausgeführt werden muss. Ich werde die Befehlszeilenoptionen unten erläutern.

tar pczf myarchive.tar.gz /home/till/mydocuments

Dieser Befehl erstellt das Archiv myarchive.tar.gz die die Dateien und Ordner aus dem Pfad /home/till/ enthält meine Dokumente. Die Befehlszeilenoptionen erklärt:

  • [p] Diese Option steht für "preserve", sie weist tar an, Details zu Dateieigentümern und Dateiberechtigungen im Archiv zu speichern.
  • [c] Steht für erstellen . Diese Option ist obligatorisch, wenn eine Datei erstellt wird.
  • [z] Die Option z aktiviert die gzip-Komprimierung.
  • [f] Die Option file weist tar an, eine Archivdatei zu erstellen. Tar sendet die Ausgabe an stdout, wenn diese Option weggelassen wird.

Tar-Befehlsbeispiele

Beispiel 1:Sichern Sie das /etc-Verzeichnis Erstellen Sie eine Sicherungskopie des Verzeichnisses /etc config. Die Sicherung wird im Stammordner gespeichert.

tar pczvf /root/etc.tar.gz /etc

Der Befehl sollte als root ausgeführt werden, um sicherzustellen, dass alle Dateien in /etc in der Sicherung enthalten sind. Dieses Mal habe ich die Option [v] im Befehl hinzugefügt. Diese Option steht für verbose, sie weist tar an, alle Dateinamen anzuzeigen, die dem Archiv hinzugefügt werden. Beispiel 2:Sichern Sie Ihr /home-Verzeichnis Erstellen Sie ein Backup Ihres Home-Verzeichnisses. Das Backup wird in einem Verzeichnis /backup.

gespeichert
tar czf /backup/myuser.tar.gz /home/myuser

Ersetzen Sie myuser mit Ihrem Benutzernamen. In diesem Befehl habe ich den Schalter [p] weggelassen, sodass die Berechtigungen nicht erhalten bleiben. Beispiel 3:Eine dateibasierte Sicherung von MySQL-Datenbanken Die MySQL-Datenbanken werden bei den meisten Linux-Distributionen in /var/lib/mysql gespeichert. Sie können das mit dem Befehl überprüfen:

ls /var/lib/mysql

Stoppen Sie den Datenbankserver, um eine konsistente MySQL-Dateisicherung mit tar zu erhalten. Die Sicherung wird in den Ordner /backup geschrieben. 1) Erstellen Sie den Sicherungsordner

mkdir /backup
chmod 600 /backup

2) Beenden Sie MySQL, führen Sie die Sicherung mit tar aus und starten Sie den Datenbankserver erneut.

service mysql stop
tar pczf /backup/mysql.tar.gz /var/lib/mysql
service mysql start
ls -lah /backup

tar.gz-Dateien extrahieren

Der Befehl zum Extrahieren von tar.gz-Dateien lautet:

tar xzf myarchive.tar.gz

Die tar-Befehlsoptionen erklärt

  • [x] Das x steht für extrahieren, es ist zwingend erforderlich, wenn eine tar-Datei extrahiert werden soll.
  • [z] Die Option z teilt tar mit, dass das zu entpackende Archiv im gzip-Format vorliegt.
  • [f] Diese Option weist tar an, den Archivinhalt aus einer Datei zu lesen, in diesem Fall aus der Datei myarchive.tar.gz.

Der obige tar-Befehl wird diese tar.gz-Datei stillschweigend extrahieren, es werden nur Fehlermeldungen angezeigt. Wenn Sie sehen möchten, welche Dateien extrahiert werden, fügen Sie die Option "v" hinzu.

tar xzvf myarchive.tar.gz

Das [v] Option steht für verbose, zeigt die Dateinamen an, während sie entpackt werden.


Linux
  1. Meistern Sie den Linux-ls-Befehl

  2. So verwenden Sie den Tar-Befehl unter Linux

  3. Verlaufsbefehl in Linux ausführlich erklärt

  4. Einführung in den Alternativen-Befehl in Linux

  5. Der Befehl locate unter Linux

Der Linux-Curl-Befehl

Quellbefehl unter Linux erklärt

Arping-Befehl unter Linux erklärt

Der Linux-CP-Befehl – ​​erklärt und leicht gemacht

Der Linux-Move-Befehl:Erklärt &leicht gemacht!

Der Linux-Befehl zum Suchen des Verzeichnisses:Erklärt