visudo nopasswd 不适用于我的命令



我已经尝试了其他可用问题的大多数解决方案,所以请不要参考它们。他们都没有涵盖我的情况。

我在 Ubuntu-16.04 上,我正在尝试以下命令在没有密码提示的情况下运行:

/usr/local/bin/nanobox run python manage.py runserver 0.0.0.0:8080

我尝试了不同的变体,我能够找到 - 转义特殊字符,使用通配符,使用命令别名等:

username ALL=(ALL) NOPASSWD: /usr/local/bin/nanobox run python manage.py runserver 0.0.0.0:8080
username ALL=(username) NOPASSWD: /usr/local/bin/nanobox run python manage.py runserver 0.0.0.0:8080
username ALL=NOPASSWD: /usr/local/bin/nanobox run python manage.py runserver 0.0.0.0:8080
username ALL=(ALL) NOPASSWD: /usr/local/bin/nanobox run python manage.py runserver 0.0.0.0:8080
username ALL=(ALL) NOPASSWD: /usr/local/bin/nanobox run *

使用命令别名:

Cmnd_Alias NANOBOX_RUN=/usr/local/bin/nanobox run python manage.py runserver 0.0.0.0:8080
username ALL=(ALL) NOPASSWD: NANOBOX_RUN
username ALL=NOPASSWD: NANOBOX_RUN
username ALL=(username) NOPASSWD: NANOBOX_RUN

这些都不起作用。我要么收到语法错误,要么收到密码提示。请帮我。

显然,我不想使用

username ALL=(ALL) NOPASSWD: ALL

(即使这是很久以后...,也许它对某人有帮助(

在昨天和今天花了几个小时寻找为什么我的 sudoers 似乎没有理由不允许我在没有密码的情况下运行命令之后,解决方案非常简单:

检查您的别名!

我将 shell 配置为使用如下所示的别名

alias sudo='sudo env "PATH=/usr/local/sbin:/usr/local/bin" '

在没有配置的情况下以普通 bash 运行命令时,它运行良好。

相关内容

  • 没有找到相关文章

最新更新