我想启用无密码sudo为sudo apt update,也有无密码sudo工作的apt update命令时,我运行它的选项,如sudo apt update -qsudo apt update -qq.

我有包含以下内容的文件/etc/sudoers.d/apt:

%sudo ALL=(root) NOPASSWD: /usr/bin/apt update

这为我提供了sudo apt update的无密码sudo,但当我使用诸如sudo apt update -q之类的选项调用命令时,无密码sudo失败.

我知道我可以通过列出/etc/sudoers.d/apt个选项中的每一个来说明选项,但我更喜欢一个可以适用于所有可用选项的选项,而不需要我预测future 可能会使用哪些选项.

推荐答案

我所能看到的最可靠的方法是:

%sudo ALL=(root) NOPASSWD: /usr/bin/apt update, /usr/bin/apt * update, /usr/bin/apt update *

/usr/bin/apt update使基本命令sudo apt update无需密码.

/usr/bin/apt * update使用户可以先添加一个选项,如sudo apt -q update,无需密码.

/usr/bin/apt update *使得添加一个选项就像sudo apt update -q一样不需要密码.

所有这些都是处理命令可能被调用的不同方式以及命令中选项可能的不同位置所必需的.

在这件事上给我指明了正确的方向,这要归功于Tobias' answer.

Linux相关问答推荐

是否可以在Bash正则表达式中排除?

如何在带模式的文件频繁更改的管道中使用grep-f带模式的文件?

为什么 liburing 写入性能低于预期?

当未在日志(log)中输入确切的时间戳时如何过滤日期范围内的值

当 skylake 有 fsgsbase 时,为什么使用 __builtin_ia32_wrfsbase64 会收到非法指令?

ENQCMD 指令的好处和微操作是什么?

当接收端未从套接字读取时,通过 Unix 套接字发送的消息会发生什么情况?

使用 awk 从文件中检索一组特定的字符串

为什么 perf 不报告缓存未命中?

在 C 中检测 64 位编译

php.ini 更改,但在 Ubuntu 上无效

bash 中的线程?

./studio.sh 之后的 Android Studio 错误

如何搜索文件并将它们压缩到一个 zip 文件中

如何知道是否有足够的内存可以在 Linux 机器上部署新应用程序?

Linux 上真的没有异步块 I/O 吗?

在linux上上几个目录

Linux 守护进程

如何将初始输入通过管道传输到随后将是交互式的进程中?

当系统说当前在进程中使用时,如何在linux中删除用户