Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Unix 是否忽略sudoers文件NOPASSWD条目?_Unix_Sudo - Fatal编程技术网

Unix 是否忽略sudoers文件NOPASSWD条目?

Unix 是否忽略sudoers文件NOPASSWD条目?,unix,sudo,Unix,Sudo,我的sudoers文件似乎被忽略了。我通过vim(sudovisudo)附加了这两行代码: 但当我运行任一命令时,系统会提示我键入密码: $ sudo -n networksetup -setsocksfirewallproxy "Wi-Fi" localhost 3000 sudo: a password is required sudoers文件只查找您给它的命令。您试图使用sudoers文件中未定义的额外参数运行它;这就是为什么会提示您输入密码 试着这样做: theonlygusti A

我的sudoers文件似乎被忽略了。我通过vim(
sudovisudo
)附加了这两行代码:

但当我运行任一命令时,系统会提示我键入密码:

$ sudo -n networksetup -setsocksfirewallproxy "Wi-Fi" localhost 3000
sudo: a password is required

sudoers文件只查找您给它的命令。您试图使用sudoers文件中未定义的额外参数运行它;这就是为什么会提示您输入密码

试着这样做:

theonlygusti ALL = NOPASSWD : /usr/sbin/networksetup -setsocksfirewallproxy *, /usr/sbin/networksetup -setsocksfirewallproxystate *

bash不负责查看您的
sudoers
文件中的内容,而是由
sudo
二进制文件进行查找;你可以用一个不同的shell或者没有shell来复制这个bug(作为一个没有shell的例子),考虑下面的Python:<代码>子进程。调用([ Sudo','NETWorkStudio ','StSoksFieldWestPosiv','Wi-Fi’,'LoalHoal',''' 3000)] < Downvote >……当你询问时,通知的人是最后一个评论的人,不是被否决的人。也就是说,就质量而言,我个人的观点是:我确实认为这个问题有资格接近主题(因为它是关于标准UNIX工具的使用,而不是软件开发),但我不认为有任何特别的理由对它投反对票(这是因为“不清楚或没有用处,或者没有显示研究成果”;这些显然都不适用)点头OP可能会混淆,因为零参数案例有一个隐式通配符,除非显式附加了
”以禁用该行为。@CharlesDuffy yes,大致描述了发生的情况。谢谢你的编辑,我不知道sudoers和bash没有任何关系。
theonlygusti ALL = NOPASSWD : /usr/sbin/networksetup -setsocksfirewallproxy *, /usr/sbin/networksetup -setsocksfirewallproxystate *