如何以其他用户身份 sudo,而不指定用户名

Ped*_*dro 3 sudo

所以我目前正在尝试创建一个 sudoers 文件,但我遇到了一些我无法弄清楚的事情。

我正在寻找的最终结果是我希望用户能够执行以下操作:

sudo /usr/sbin/script.pl
Run Code Online (Sandbox Code Playgroud)

但是,我希望脚本以“other_user”身份运行,而不是以 root 身份运行。

我查看了 sudoers 文件,并尝试添加如下一行:

pedro      ALL = (other_user) /usr/sbin/script.pl
Run Code Online (Sandbox Code Playgroud)

但这仅在我通过执行sudo -u other_user /usr/sbin/script.

是否有一种(简单的)方法可以让脚本以特定用户身份运行,而无需在命令行中指定它?

use*_*517 11

我认为没有配置参数可以做到这一点。您可以破解源代码并重新编译它。您也可以使用别名,例如

alias sudo='sudo -u pedro'
Run Code Online (Sandbox Code Playgroud)

但是你必须记住在\sudo 面前为其他任何事情

\sudo somecommand 
Run Code Online (Sandbox Code Playgroud)


Qui*_*phy 5

这是可能有用的东西:

alias sudop='sudo -u pedro'
alias sudoa='sudo -u alice'
Run Code Online (Sandbox Code Playgroud)

除了 sudo 之外,您仍然需要指定一些东西,但它是深度连接的,并且很容易输入。对于需要运行的常见 sudo 命令,我使用了这个变体。