Was behält die -p
Flagge beim Erstellen und Extrahieren eines Tarballs tatsächlich bei? Sind es die rwx
Berechtigungen, die es beibehält?
Wenn ich einen htdocs/
Tarball im Besitz von root erstellt habe, hat das Extrahieren auf meinen lokalen Computer den Besitz von root auf meinen Benutzer geändert.
command-line
permissions
tar
nicoX
quelle
quelle
tar
nicht möglich ist. Bitte sag mir, ob das funktioniert hat.Red Hat Enterprise Linux Server release 6.5 (Santiago)
Ziel:Ubuntu 13.10
Beide verwendenGPT
tar
Erhält Berechtigungen.-p
und--same-owner
/--no-same-owner
(wie in den Antworten) sind Extraktionsflags. Sie haben keine Auswirkungen auf die ArchivierungAntworten:
Eigentum und Berechtigungen sind zwei verschiedene Dinge. Das
-p
Flag behält Berechtigungen bei . Auf * nix-Systemen können normale Benutzer den Dateibesitz nicht in einen Benutzer ändern, der nicht sie selbst ist.Wie hier erklärt :
Die Gründe dafür wurden von @Gilles in dieser Unix- und Linux-Antwort gut erklärt :
Selbst wenn Sie das tar-
--same-owner
Flag verwenden, müssen Sie die Dateien trotzdem extrahierenroot
, um den Besitz zu bewahren. Dieses Flag ist standardmäßig für aktiviert.root
Sie möchten also Folgendes:quelle
Es gibt 2 weitere Optionen für Teer, die interessant sind:
Die zweite ist die Standardeinstellung, damit Sie sie hinzufügen können
--same-owner
, um Ihren Benutzer zu speichern. Du wirst das wahrscheinlich damit zu tun habensudo
.Außerdem: Dies funktioniert nur auf Systemen, die POSIX unterstützen. Und andere Betriebssysteme als Ubuntu haben möglicherweise nicht diese 2 Optionen (sie sind nicht Standard).
quelle
--same-owner
funktioniert nicht für Nicht-Root-Benutzer, sie haben nicht das Recht, das Eigentum an irgendjemand anderem als an sich selbst zu vergeben. Das definiert POSIX .Um den Eigentümer beizubehalten, führen Sie ihn als root aus oder verwenden Sie beim Extrahieren das Flag --same-owner neben dem Flag -p.
quelle