Есть проблемка с назначением прав на каталоги и файлы на удаленной машине при синхронизации с помощью rsync.
Сейчас запускаю так:
Код: Выделить всё
/usr/local/bin/rsync -avz --delete-after --chmod=o=rx /dir1 remote.example.com:/data/dir2
Пробовал также:
Код: Выделить всё
/usr/local/bin/rsync -avz --delete-after --no-p /dir1 remote.example.com:/data/dir2
Код: Выделить всё
sudo -u rsync_user mkdir dir
Конечно можно написать скрипт в три строчки, где с помощью find и chmod делать, то, что мне нужно . Но, во-первых, в этих каталогах очень много маленьких файлов, во-вторых не люблю использовать скрипты, там где их можно заменить одной программой, а в-третьих, просто любопытство разбирает.
ЗЫ. Пока писал это сообщение, понял, что пока не знаю, как запускать chmod на удаленной машине, после того, как отработает rsync на локальной. Это если все-таки придется использовать скрипт.