Ich beobachte das folgende Verhalten mit Teer 1.26 und 1.27.1:
$ mkdir a b a/diffowner
$ sudo mkdir b/diffowner
$ sudo chmod a+w b/diffowner
$ echo foo > a/diffowner/foo
$ tar -C a -cvf test.tar diffowner
diffowner/
diffowner/foo
$ tar -C b -xvf test.tar diffowner
diffowner/
diffowner/foo
tar: diffowner: Cannot utime: Operation not permitted
tar: diffowner: Cannot change mode to rwxr-xr-x: Operation not permitted
tar: Exiting with failure status due to previous errors
Ich versuche hier also, eine TAR-Datei in eine vorhandene Verzeichnisstruktur zu extrahieren, in der ich nicht der Eigentümer aller beteiligten Verzeichnisse bin, aber für alle Schreibrechte habe. Tatsächlich werden sie unter einer Gruppe geteilt.
Zeitstempel interessieren mich nicht und ich vertraue darauf, dass die Berechtigungen bereits korrekt sind. Ich führe dies als normaler Benutzer aus, es sollte also nicht versucht werden, es --preserve-permissions
sei denn, ich habe es so erklärt, was ich nicht tat. Was mich wirklich beunruhigt, ist der Beendigungsstatus: Ich beabsichtige, dies in einem Skript zu verwenden und möchte wissen, ob die eigentliche Extraktion gut funktioniert hat.
Gibt es eine Option , um Teer , die es sagt nicht zu Satz Verzeichnisberechtigungen, weder unmittelbar noch verzögert? Andernfalls, welche anderen Lösungen würden Sie vorschlagen. Im Moment denke ich darüber nach, in ein temporäres Verzeichnis zu extrahieren und rsync
Dinge in den vorhandenen Baum zu verschieben. Aber vielleicht kennen Sie einen weniger hackigen Ansatz.
Antworten:
Diese
tar
Option könnte das sein, wonach Sie suchen:Ich habe wie folgt getestet:
quelle