使用 sudo 在调用 rsync 时总是提示输入密码

使用 sudo 在调用 rsync 时总是提示输入密码

我有一个反复使用的程序rsync将数据发送到目的地,rsync该程序使用的脚本不需要密码即可发送数据,因为我使用了公钥认证机制rsync。但该程序需要运行,sudo因为它也使用了一些内核实用程序,但每当我使用它sudo运行该程序时,它总是在调用脚本时提示输入密码rsync

有没有办法缓解这个问题?

答案1

我认为您可能不是该服务器的管理员,而管理员已设置此服务器以提高安全性。如果您是管理员,您可以按照以下步骤操作,否则您可以直接要求管理员进行更改。

那么你可以做什么:

如果您要求您输入用户密码:

1-获取您的用户名和组 ID (gid):

id

2-检查 sudo 配置文件:

grep <username> /etc/sudoers
grep <gid> /etc/sudoers

如果该行以 % 开头,您必须看到该组的条目;否则您的用户名条目不带 % 符号:

%<gid>  ALL=(ALL) ALL

执行 visudo 编辑 /etc/sudoers :

visudo

现在你应该添加(无密码:)使 sudo 不询问您的用户密码:

%<gid>  ALL=(ALL) NOPASSWD: ALL

如果您要求您输入根密码: 执行 visudo 编辑 /etc/sudoers :

visudo

删除上面的行以禁用 /etc/sudoers 上的 rootpw 标志,这样就不会要求您输入 root 密码:

Defaults rootpw

相关内容