在目标计算机上使用rsync和sudo
遇到rsync未按预期设置UID和GID的问题 ,我的直觉是rsync
应该在目标计算机上以root
身份运行。
我无法通过SSH以root
身份登录,因为出于安全目的而禁用了该root
。 目标计算机上的用户可以使用sudo
。
是否可以将rsync
与sudo
一起使用?
在目标计算机上
- 找出
rsync
的路径:which rsync
- 编辑
/etc/sudoers
文件:sudo visudo
(另请参阅: 我必须使用visudo吗? ) - 添加行
,其中username是rsync用于登录的用户的登录名。 该用户必须能够使用ALL=NOPASSWD: sudo
然后,在源计算机上,指定应使用sudo rsync
:
rsync ... --rsync-path="sudo rsync" ...
在目标计算机上使用它而不使用NOPASSWD
将导致消息
sudo:没有tty存在且没有指定askpass程序