So tarieren Sie ein Verzeichnis, das nicht nur Berechtigungen, sondern auch die Eigentümerschaft beibehält

37

Ich muss ein Verzeichnis mit tar.gz komprimieren, wobei nicht nur Berechtigungen, sondern auch Eigentumsrechte / Gruppen erhalten bleiben.

In diesem Verzeichnis befinden sich viele Dateien, die vielen Benutzern gehören.

Paulo Coghi - Setzen Sie Monica wieder ein
quelle

Antworten:

39

Wenn Sie nach dem -pFlag suchen, ist dies ein Beispiel. tar -cvpf file.tar folderToCompressGehen Sie mit dem tarBefehl vorsichtig um, da es einfach ist, Dateien zu überschreiben, wenn Ihre Syntax für den Befehl nicht korrekt ist.

Die Eigentümer der Datei bleiben normalerweise erhalten, wenn Sie mit --same-ownerflag extrahieren . tar --same-owner -xvf file.tarZum Beispiel, obwohl das Flag nur für Superuser empfohlen wird.

Überprüfen Sie die Manpage tar .

SupaJord
quelle
9
Es muss sein tar -cvpf file.tar(oder besser noch in Bezug auf Klarheit -cvp -f file.tar). Ansonsten ist das -fpist Teil als interpretiert --file p, und tarwird auf die Datei mit dem Namen zu schreiben pstatt file.tar.
KT.
4
Angesichts der Tatsache, dass in der Antwort die Komprimierung genannt wird und die Leute dazu neigen, Antworten aus Posts zu kopieren und einzufügen, ohne darüber nachzudenken, sei angemerkt, dass die beliebte Archivierungssprache mit Komprimierung folgendermaßen lauten würde: tar -czvpf file.tar.gz folderToCompressoder tar -cjvpf file.tar.bz2 folderToCompress.
KT.
@KT - Sie haben Recht, also korrigiere ich das -fFlag - obwohl ich das Komprimierungsflag nicht korrigiert habe -z. Für die Komprimierung würde ich empfehlen -Ipigz(das ist ein Kapital i) anstelle von -z; auf mehrkernsystemen kann pigz erheblich schneller sein.
NVRAM
13
Diese Antwort ist falsch. pIst ein Extraktionsflag , hat es keine Auswirkung auf die Archiverstellung. Es wirkt sich auch auf Dateiberechtigungen aus, nicht auf den Besitz. Das entsprechende Flag für den Besitz ist --same-owner, das beim Extrahieren als standardmäßig aktiviert ist root.
Vladimir Panteleev
1
@NVRAM SnowRep hat Ihre Änderungen rückgängig gemacht (!!!). SnowRep, ich stimme gegen dich und stelle die NVRAM-Bearbeitung wieder her, was korrekt ist . Bitte stellen Sie absichtlich keine falschen Informationen auf die Seite!
Kyle Strand
23

Ich muss ein Verzeichnis mit tar.gz komprimieren, wobei nicht nur Berechtigungen, sondern auch Eigentumsrechte / Gruppen erhalten bleiben.

Standardmäßig tarbleiben die Dateiberechtigungen und der Besitz beim Erstellen des Archivs erhalten.

Um Dateiberechtigungen und -eigentum zu extrahieren, müssen Sie tarbeim Extrahieren als Root ausgeführt werden, da das Ändern des Dateieigentums normalerweise Superuser-Berechtigungen erfordert. Weitere Informationen finden Sie in dieser Frage .

Vladimir Panteleev
quelle
1
Wenn Sie sagen, dass der Besitz erhalten bleibt, bedeutet dies, dass sowohl der Benutzer als auch die Gruppe beteiligt sind?
CMCDragonkai
1
Das ist richtig. Sowohl der Eigentümer als auch die Gruppe werden standardmäßig aufgezeichnet (zumindest in GNU tar).
Vladimir Panteleev