Ich möchte rsync verwenden, um Dateien von meinem Computer auf ein entferntes Linux-System zu übertragen. Unabhängig vom Gruppenbesitz der lokalen Datei möchte ich diese Werte auf der Remote-Seite festlegen.
Wenn ich mich auf dem Remote-Linux-System befände, konnte ich das Verzeichnis erstellen und den Besitz und die Berechtigungen wie folgt festlegen:
mkdir my_directory
chown :my_group my_directory
chmod 775 my_directory
Wenn ich das Verzeichnis lokal erstelle und dann rsync verwende (denken Sie daran, ich habe my_group nicht lokal), mache ich Folgendes:
rsync -ae ssh --chmod=ug+rw,Dug+rwx my_directory remoteserver:dest
Das funktioniert, aber ich kann nicht herausfinden, wie der Gruppenbesitzer über rsync festgelegt wird. Wenn ich a mache chmod g+s dest
, hat my_directory den richtigen Gruppeneigentümer, aber alle darin enthaltenen Dateien haben den falschen Gruppeneigentümer.
--groupmap=*:group-name'
.. direkt nachdem ich ha gepostet habe.
rsync -avz --delete --exclude "*.git" --chmod=ug=rwx,o=rx /cygdrive/d/projx/ john@123.123.123.123:/var/prox/
Die Dateien landen als john: john anstelle von john: projx ( wo projx der Name der Gruppe ist)