我正在通过apache运行rsync来同步资产目录
rsync -avz -e 'ssh -l rsync -i /home/rsync/.ssh/rsync -o StrictHostKeyChecking=no' /var/www/html/site/Uploads centos@$IP:/var/www/html/site/Uploads
这可以正常工作,但所有权从apache变为centos,因为它是用户.我可以为apache用户设置密钥,但是用户无法登录,因此无法正常工作.
如何让rsync作为apache运行以保留所有权或以centos用户身份运行并将所有者维护为apache(cron对我的情况不起作用).
解决方法:
Rsync有一个选项numeric-ids,你可以在这里利用它.
但有两点:在您的服务器上确保您的apache用户具有相同的数字ID;并确保运行rsync的用户可以将apache拥有的文件写入/更新到目标.