在sudo命令中输入密码

在sudo命令中输入密码

我可以在 sudo 命令本身上输入密码吗?就像是:

sudo rm (dir) -p (password)

我使用了 sudo help 但找不到正确的语法(如果有的话)

答案1

不。您能做的就是:

  • 配置 sudo,使用户或用户组永远不需要输入 sudo 密码
  • 配置 sudo,以便用户或用户组在使用 sudo 运行特定脚本时永远不需要输入密码。

推荐实践后者。编写一个包装器脚本,该脚本完全执行 root 需要执行的操作,最好不接受任何用户输入(例如来自命令行或环境变量),仅此而已。如果您确实需要为脚本获取用户输入,请确保正确引用所有变量并使用其他防御性编程实践。

答案2

这个 StackOverflow 线程,似乎有一个标志-S告诉sudo我们从标准输入读取密码。给出的例子是

echo myPassword | sudo -S ls /tmp

然而,似乎没有任何方法可以sudo直接将密码作为参数提供。

此外,还必须考虑以这种方式使用密码的安全隐患。

相关内容