将 apt-get 添加到 sudoers 文件

将 apt-get 添加到 sudoers 文件

我已经厌倦了总是在 sudo 下调用 apt-get update 和 apt-get upgrade 并输入我的密码,所以我使用 visudo 在我的 /etc/sudoers 文件中添加了以下行:

<myusername> ALL=NOPASSWD: /usr/bin/apt-get

不幸的是,当我调用 apt-get 时遇到以下错误:

<myusername>@sputnik:~$ apt-get update
E: Could not open lock file /var/lib/apt/lists/lock - open (13: Permission denied)
E: Unable to lock directory /var/lib/apt/lists/
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?

我也尝试将以下(相当明显的)行添加到 /etc/sudoers,但没有效果

<myusername> ALL=NOPASSWD: /usr/bin/dpkg

我必须做什么?

答案1

即使进行了这样的配置/etc/sudoers,您仍需要使用以 root 身份sudo运行apt-get。不同之处在于,如果配置正确,您将不再需要输入密码。

答案2

您以不要求您输入密码的方式添加了 apt-get,但这并不意味着 apt-get 具有足够的权限来运行。由于您在没有 sudo 的情况下运行它,因此它无法锁定软件包系统。

尝试使用别名:

alias apt-get='sudo apt-get'

如果有效,您可以通过将其添加到.bashrc文件中来使别名永久生效

相关内容