rsync: --groupmap = *: www-data: unknown option
Я пытаюсь добавить параметр в свою строку rsync, чтобы установить группу переданных файлов, чтобы в качестве их группы были www-data.
Когда я добавляю опцию, я получаю указанное выше сообщение.
Вот строка rsync, которую я пытаюсь:
rsync -avz --delete --chmod=ug=rwX,o=rX --groupmap=*:www-data ' -e "ssh -p 48" /cygdrive/e/test john@my.domain.com:/var/vhost/locals/test
Без флага -groupmap файлы попадают как john: john вместо желаемого jonh: www-data.
Это от windows до ubuntu.
У кого-нибудь есть идеи?
то же самое, когда я пытаюсь использовать --chown:
rsync: --chown=john:www-data: unknown option
Варианты, на которые вы ссылаетесь, были включены в Версия 3.1.0 rsync, но похоже, что вы используете cygwin в Windows, у которого, возможно, не было этой версии до Июнь-2014.
Учитывая близость вашего вопроса, вы, вероятно, используете старую версию rsync. Возможно, вам просто нужно перейти на последнюю версию cygwin / rsync?
rsync --version
Самый быстрый способ решить эту проблему - вернуться в Windows. Если вы используете rsync в Ubuntu из Windows, вы сможете установить там разрешения.
Я сдался. Обходом был запуск apache как john: www-data. Rsync копирует новые файлы в место назначения как john, но apache может нормально их читать, как и john: www-data.
[...]
<IfModule mpm_itk_module>
AssignUserId john www-data
</IfModule>
[...]
Я в основном использую окна локально, поэтому это командная строка, которую я использую для синхронизации файлов с сервером (debian):
user@user-PC /cygdrive/c/wamp64/www/projects
$ rsync -rptgoDvhP --chown=www-data:www-data --exclude=.env --exclude=vendor --exclude=node_modules --exclude=.git --exclude=tests --exclude=.phpintel --exclude=storage ./website/ username@hostname:/var/www/html/website
Надеюсь, это будет вам полезно