gpt4 book ai didi

linux - sudoers 文件中的命令?

转载 作者:太空宇宙 更新时间:2023-11-04 12:13:43 26 4
gpt4 key购买 nike

我在 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 来阻止用户设置变量(如果这就是您最初的意思)。

来自手册页:

A Cmnd_List is a list of one or more command names, directories, and other aliases. A command name is a fully qualified file name which may include shell-style wildcards (see the Wildcards section below).

关于linux - sudoers 文件中的命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48016136/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com