Chcę używać rsync do przesyłania plików z mojego komputera do zdalnego systemu Linux. Niezależnie od własności grupy pliku lokalnego chcę ustawić te wartości po stronie zdalnej.
Gdybym był na zdalnym systemie Linux, mógłbym utworzyć katalog i ustawić własność i uprawnienia jako:
mkdir my_directory
chown :my_group my_directory
chmod 775 my_directory
Jeśli utworzę katalog lokalnie, a następnie użyję rsync (pamiętaj, że nie mam mojej grupy lokalnie), robię:
rsync -ae ssh --chmod=ug+rw,Dug+rwx my_directory remoteserver:dest
To działa, ale nie mogę wymyślić, jak ustawić właściciela grupy za pomocą rsync. Jeśli to zrobię chmod g+s dest
, mój_katalog ma poprawnego właściciela grupy, ale wszystkie pliki w nim mają niepoprawnego właściciela grupy.
permissions
rsync
ChrisInEdmonton
źródło
źródło
rsync -avz --delete --exclude "*.git" --chmod=ug=rwx,o=rx /cygdrive/d/projx/ [email protected]:/var/prox/
Pliki lądują jako John: John zamiast John: Projx ( gdzie projx to nazwa grupy)--groupmap=*:group-name'
.. zaraz po tym, jak opublikowałem ha.Odpowiedzi:
Właśnie w tej chwili szukam sposobu, aby to zrobić w operacji rsync, a nie w kolejnej operacji. Chcę, aby niektóre pliki nie były czytelne dla całego świata i przypisywały grupy, ograniczając w ten sposób dostęp do procesów serwera zdalnego w tej grupie. Ale nie znalazłem żadnego.
Jedyne, co mogę sobie wyobrazić, to:
a następnie uruchom:
źródło
Myślę, że w twoim poleceniu brakuje flagi -p.
źródło
-p
Flaga jest domyślnie włączone jako część-a
opcji (archiwum).