Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


lpi2:tar

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
lpi2:tar [2017/10/02 08:26]
127.0.0.1 Externe Bearbeitung
lpi2:tar [2025/03/27 12:23] (aktuell)
Zeile 1: Zeile 1:
 ====== tar ====== ====== tar ======
-Wichtige Optionen für tar:+^ Hauptoptionen ^^^
 | ''​c''​ | ''​%%--create%%'' ​ | tar Archiv erstellen | | ''​c''​ | ''​%%--create%%'' ​ | tar Archiv erstellen |
 | ''​x''​ | ''​%%--extract%%''​ | tar Archiv auspacken | | ''​x''​ | ''​%%--extract%%''​ | tar Archiv auspacken |
 | ''​t''​ | ''​%%--list%%'' ​   | tar Archiv anzeigen ​ | | ''​t''​ | ''​%%--list%%'' ​   | tar Archiv anzeigen ​ |
 | ''​d''​ | ''​%%--diff%%'' ​   | tar Archiv vergleichen | | ''​d''​ | ''​%%--diff%%'' ​   | tar Archiv vergleichen |
 +^ weitere Optionen ^^^
 | ''​f''​ | ''​%%--file%%'' ​   | tar Archiv in angegebene Datei schreiben bzw. aus angegebener Datei lesen | | ''​f''​ | ''​%%--file%%'' ​   | tar Archiv in angegebene Datei schreiben bzw. aus angegebener Datei lesen |
 | ''​l''​ | ''​%%--one-file-system%%''​ | keine Mountpoints sichern, bleibe auf dem Start-Dateisytem | | ''​l''​ | ''​%%--one-file-system%%''​ | keine Mountpoints sichern, bleibe auf dem Start-Dateisytem |
Zeile 10: Zeile 11:
 | ''​j''​ | ''​%%--bzip2%%'' ​          | bzip2 Komprimierung:​ höhere Komprimierung,​ größere Datensicherheit,​ mehr Rechenaufwand im Vergleich zu gzip | | ''​j''​ | ''​%%--bzip2%%'' ​          | bzip2 Komprimierung:​ höhere Komprimierung,​ größere Datensicherheit,​ mehr Rechenaufwand im Vergleich zu gzip |
 | ''​J''​ | ''​%%--xz%%'' ​             | xz Komprimierung:​ noch höhere Komprimierung,​ noch mehr Rechenaufwand | | ''​J''​ | ''​%%--xz%%'' ​             | xz Komprimierung:​ noch höhere Komprimierung,​ noch mehr Rechenaufwand |
 +|       | ''​%%--zstd%%'' ​             | zstd Komprimierung:​ noch höhere Komprimierung,​ weniger Rechenaufwand,​ threaded |
 |       | ''​%%--numeric-owner%%'' ​  | Nicht die Namen, sondern die Nummern der Benutzer sollen gesichert werden. Notwendig bei der Sicherung des kompletten Systems | |       | ''​%%--numeric-owner%%'' ​  | Nicht die Namen, sondern die Nummern der Benutzer sollen gesichert werden. Notwendig bei der Sicherung des kompletten Systems |
 |       | ''​%%--acl%%'' ​            | ACLs mitsichern bzw. wiederherstellen | |       | ''​%%--acl%%'' ​            | ACLs mitsichern bzw. wiederherstellen |
 |       | ''​%%--xattrs%%'' ​         | erweiterte Attribute (für SELinux, Capabilities,​ o.ä.) mitsichern | |       | ''​%%--xattrs%%'' ​         | erweiterte Attribute (für SELinux, Capabilities,​ o.ä.) mitsichern |
 +| ''​C''​ | ''​%%--directory%%''​ | ins Verzeichnis wechseln |
  
-===== tar und gzip ===== +===== Verzeichnis in lokales Archiv sichern ​===== 
-(( wird man in der Praxis so selten verwenden, nur um zu zeigen das //tar// und //gzip// zwei verschiedene Aufgaben erfüllen. )) +Verzeichnis ''​/usr/share''​ archivieren ​und komprimieren:​ 
- +  tar -caf share.tar.gz ​-C /usr share
-Verzeichnis archivieren:​ +
-  tar cf directory.tar directory/​ +
-Archiv ​komprimieren:​ +
-  ​gzip directory.tar +
-Archiv entpacken:​ +
-  gunzip directory.tar.gz +
-Archiv ansehen: +
-  tar tf directory.tar +
-Archiv auspacken:​ +
-  tar xf directory.tar +
- +
-===== tar ===== +
-Verzeichnis archivieren und komprimieren:​ +
-  tar czf directory.tgz directory/+
 komprimiertes Archiv ansehen: komprimiertes Archiv ansehen:
-  tar tzf directory.tgz+  tar -tf share.tar.gz
 komprimiertes Archiv auspacken: komprimiertes Archiv auspacken:
-  tar xzf directory.tgz +  tar -xf share.tar.gz
- +
-====== Sicherung des root-Dateisystems auf Band ====== +
-Sicherung:  +
- +
-  tar cf /dev/st0 --directory / --one-file-system --numeric-owner . +
- +
-Überprüfung der Sicherung: (im tar-Archiv fehlende Dateien werden nicht angezeigt (( +
-Auch die kann man sich raussuchen, aber mir fällt dazu nur eine etwas mühevolle Lösung ein: +
-  tar tf /dev/md0 | sort > /​run/​tar.list +
-  (cd / && find . -xdev \( -type d -printf "​%p/​\n"​ , ! \( -type d -o -type s \) -print \)) | sort  | comm --total -2 -3 - /​run/​tar.list +
-)) ) +
-  tar df /dev/st0 --directory / --one-file-system --numeric-owner . +
- +
-====== Sicherung in Datei auf entfernten Rechner mit ssh ===== +
-tar-Archiv auf Rechner notebook02 anlegen: +
-  tar cj --directory /usr/share doc | ssh notebook02 'cat > /tmp/doc.tar.bz2' +
- +
-Wiederherstellung:​ +
-  ssh notebook02 'cat /​tmp/​doc.tar.bz2'​ | tar xj --directory /​usr/​share +
- +
-====== Dateien kopieren mit sudo, tar und ssh ====== +
-Datei incl. Berechtigungen von notebook01 auf notebook02 kopieren: (( überschreibt ohne zu Fragen! )) +
-  ssh notebook01 'sudo tar cP /​etc/​ssl/​certs/​service.linuxhotel.de.cert.pem /​etc/​ssl/​private/​service.linuxhotel.de.key.pem'​ | ssh notebook02 'sudo tar xP' +
-((alternativ,​ incl. Anzeige der Übertragung:​ +
-  ssh notebook01 'sudo tar cP /​etc/​ssl/​certs/​service.linuxhotel.de.cert.pem /​etc/​ssl/​private/​service.linuxhotel.de.key.pem'​ | ssh notebook02 'pv -b -r | sudo tar xP' +
-)) +
-====== Verzeichnisse kopieren mit sudo, tar und netcat ====== +
-Unter Debian (6) getestet, unter CentOS wahrscheinlich andere Schalter. +
-===== Empfänger ===== +
-  netcat -l -s 172.16.240.155 -p 6666 | sudo tar xz --directory /​mnt/​kopie +
- +
-((alternativ,​ incl. Anzeige der Übertragung:​ +
-  netcat -l -s 172.16.240.155 -p 6666 | pv -b -r | sudo tar xz --directory /​mnt/​kopie +
-)) +
-===== Sender ===== +
-  tar cz --numeric-owner --directory /​mnt/​original . | nc -q0 -T reliability 172.16.240.155 6666 +
- +
-====== erweiterte Attribute, ACLs, Capabilities ====== +
-//testen, klappt evtl nur mit RH-Version und tar ab Version 1.27// +
- +
-//Todo: unter CentOS 7 getestet. Was ist mit debian und tar Version 1.27?// +
- +
-The default ACL values have incorrectly been filled in, using the values of the directory'​s access permissions. Dieser Bug ist unter CentOS bekannt: https://​bugs.centos.org/​view.php?​id=7696  +
-Diesen Bug gibt es aber auch unter Debian, in tar aus den Backports. Wahrscheinlich auch unter jessie. ​+
  
-  tar ---numeric-owner --xattrs --acls --one-file-system --directory ​/ . | ssh nutzer06@notebook06 sudo tar x --xattrs ​--acls --xattrs-include='*' --directory /mnt/backup/tar +===== Datensicherung über ssh ===== 
-((https://bugzilla.redhat.com/show_bug.cgi?​id=771927))+==== Pull-Backup ==== 
 +user@server.lxht.de:/​usr/​share/ ​-> ./​share.tar.gz 
 +  ssh user@server.lxht.de tar -czC /usr share > share.tar.gz 
 +++++ Alternativ mit zstd| 
 +  ssh user@server.lxht.de tar -cC /usr --zst share > share.tar.zst 
 +++++ 
 +=== Restore dazu === 
 +./​share.tar.gz ​-> user@server.lxht.de:​/home/​user/​share 
 +  ssh user@server.lxht.de tar -xz < share.tar.gz 
 +++++ Alternativ mit zstd| 
 +  ​ssh user@server.lxht.de ​tar -x --zst < share.tar.zst 
 +++++ 
 +==== Push-Backup ==== 
 +/​usr/​share/ ​-> user@server.lxht.de:/​home/​user/​share.tar.gz 
 +  tar -czC /usr share | ssh user@server.lxht.de ​'cat > share.tar.gz' 
 +++++ Alternativ mit zstd| 
 +  tar -cC /usr share --zst | ssh user@server.lxht.de 'cat > share.tar.zst' 
 +++++ 
 +=== Restore dazu === 
 +user@server.lxht.de:/home/user/share.tar.gz -> ./share 
 +  ssh user@server.lxht.de cat share.tar.gz | tar -xz 
 +++++ Alternativ mit zstd| 
 +  ssh user@server.lxht.de cat share.tar.zst | tar -x --zst 
 +++++
  
 +===== Komplettsicherung eines Linux-Systems =====
 +Systemverzeichnisse ermitteln:
 +  df -hT -x tmpfs -x deftmpfs
  
 +Alle Systemverzeichnise auf Server sichern:
 +  sudo tar c  --xattrs --acls --xattrs-include='​*'​ --numeric-owner --one-file-system / /boot /boot/efi | zstd | ssh nutzer45@notebook45 'cat > /​mnt/​backup.tar.zst'​
 +  ​
 +===== Grenzen von tar =====
 +  * https://​www.cyphar.com/​blog/​post/​20190121-ociv2-images-i-tar
lpi2/tar.1506932770.txt.gz · Zuletzt geändert: 2017/10/02 08:26 von 127.0.0.1