我正在使用脚本运行一个特定命令的脚本( rosdep )。此命令必须作为常规用户运行,而不是root,但偶尔会提示用户获取sudo密码,以获得安装软件的root权限。

是否有任何方法可以在运行远程命令时指示ASSIBE响应这些密码提示?我不想用sudo运行整个命令,所以-k选项不适用于此目的。

有帮助吗?

解决方案

考虑修改您的 sudoers 文件,以便允许这些特定命令通过此密码提示运行sudo

最简单,但也许不是最好的方法是使用:

tessa    ALL=NOPASSWD: ALL
.

这意味着允许所有命令通过没有密码提示的sudo运行。

更好的方法是弄清楚哪些特定命令需要sudo权限,然后将它们添加到sudoers文件中。

例如:

tessa    ALL=NOPASSWD:/usr/bin/whoami
.

您可以将修改的/etc/sudoers文件/模板作为Ansible PlayBook的一部分。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top