繁体   English   中英

在sudoers文件中命令?

[英]Command in sudoers file?

我在sudoers文件中添加了以下命令,但这给了我语法错误,不允许在命令前使用“ foo = bar”。

user   ALL=(runas) SETENV:NOPASSWD:foo=bar /path/to/command /path/to/script

如果我使用/ bin / bash前缀添加,则可以正常工作

user   ALL=(runas) SETENV:NOPASSWD:/bin/bash -c "foo=bar /path/to/command /path/to/script"

但是当我从用户运行sudo ,它要求我输入密码。 有人可以让我知道这应该如何工作吗?

您的命令列表必须是文件系统中指示其完整路径的文件。 我不太确定您的foo=bar "command"应指什么。 如果设置了变量,那么您是否不缺少分号( foo=bar; )? 但是无论如何,sudo并不是以任何方式设置变量,而是关于运行命令。 您应该完全摆脱foo = bar并保持

user   ALL=(runas) SETENV:NOPASSWD: /path/to/command /path/to/script

您不会使用sudo来阻止用户设置变量(如果这首先就是您的意思)。

从手册页:

Cmnd_List是一个或多个命令名称,目录和其他别名的列表。 命令名是完全限定的文件名,其中可能包含外壳式通配符(请参阅下面的“通配符”部分)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM