Co tak -p
naprawdę zachowuje flaga podczas tworzenia i rozpakowywania tarballa? Czy to rwx
uprawnienia, które zachowuje?
Kiedy utworzyłem plik htdocs/
archiwalny należący do roota, rozpakowanie go na mój komputer lokalny zmieniło własność z root na mojego użytkownika.
command-line
permissions
tar
nicoX
źródło
źródło
tar
nie będzie w stanie tego zrobić. Powiedz mi, czy to zadziałało.Red Hat Enterprise Linux Server release 6.5 (Santiago)
Cel:Ubuntu 13.10
Oba używająGPT
tar
zachowuje uprawnienia.-p
i--same-owner
/--no-same-owner
(jak w odpowiedziach) to flagi ekstrakcyjne. Nie mają wpływu podczas archiwizacjiOdpowiedzi:
Własność i uprawnienia to dwie różne rzeczy.
-p
Flaga zachowuje uprawnienia . W systemach * nix zwykli użytkownicy nie mogą zmienić właściciela pliku na użytkownika, który nie jest sobą.Jak wyjaśniono tutaj :
Uzasadnienie tego zostało dobrze wyjaśnione przez @Gilles w tej odpowiedzi na Unixa i Linuksa:
Tak więc, nawet jeśli użyjesz
--same-owner
flagi tar , nadal będziesz musiał wyodrębnić pliki,root
aby zachować własność. Ta flaga jest domyślnie włączonaroot
, więc chcesz:źródło
Ciekawe są jeszcze 2 opcje smoły:
Drugi jest domyślny, więc możesz dodać,
--same-owner
aby zapisać użytkownika. Prawdopodobnie będziesz musiał to zrobićsudo
.Poza tym: to będzie działać tylko na systemach obsługujących POSIX. A systemy operacyjne inne niż Ubuntu mogą nie mieć tych 2 opcji (nie są standardowe).
źródło
--same-owner
będą działać dla użytkowników innych niż root, nie będą mieli prawa do ustawiania własności nikomu oprócz siebie. To jest zdefiniowane przez POSIX .Aby zachować właściciela, uruchom go jako root lub użyj flagi --same-owner obok flagi -p podczas wypakowywania.
źródło