zachowaj pozwolenie z scp


25

SCP nie zachowuje znaczków własności, nawet jeśli jest używany z opcją -p.

scp -p /mysql/serv/data_summary.* some_server:/mysql/test/

Pliki są własnością mysql i chcę, aby ta sama własność została przypisana na serwerze docelowym. Muszę skopiować pliki jako root na obu serwerach z powodu niektórych problemów administracyjnych. Nie mogę zmienić na mysql @

Odpowiedzi:


37

Spróbuj użyć rsync, ma on o wiele więcej zalet niż utrzymanie własności, uprawnień i przyrostowych kopii:

rsync -av source 192.0.2.1:/dest/ination

Poza tym, ponieważ rsync używa ssh, powinien działać tam, gdzie działa scp.


ssh obsługuje -i myfile.pem, a rsync nie wydaje się mieć opcji -i
shantanuo

5
@shantanuo: Użyjrsync -e 'ssh -i myfile.pem' -insert_other_rsync_options_here
Janne Pikkarainen

14

To jest poprawne. „-p” tego nie robi. Zobacz stronę manuala:

     -p Zachowuje czasy modyfikacji, czasy dostępu i tryby z
             oryginalny plik.

Zauważ, że podaje czasy i tryby, a NIE własność użytkownika / grupy. Będziesz mieć więcej szczęścia z „rsync”, ponieważ ma różne możliwości zachowania uprawnień podczas kopiowania między różnymi systemami. Na przykład „-p” w rsync.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.