如何赋予用户root权限?

如何赋予用户root权限?

我刚刚安装了 Arch。效果很好。我创建了一个新用户,用它登录,现在我尝试使用pacman.但我不断收到错误:error: you cannot perform this operation unless you are root.我可以pacman很好地使用 root,但有没有办法允许我的新用户执行这些操作?

我尝试登录 root 并使用 gpasswd:

gpasswd -a jack root

但这没有任何作用。

答案1

您应该阅读 Arch Wiki 页面须藤

sudo(“替代用户执行”)允许系统管理员委派权限,赋予某些用户(或用户组)以 root 或其他用户身份运行某些(或全部)命令的能力,同时提供命令及其操作的审计跟踪论据。

您可以sudo从存储库安装,然后将其配置为允许您的用户 ,jack通过编辑 来访问特权命令/etc/sudoers。确保使用该visudo命令执行此操作。

要授予用户jack完全 root 权限,您可以添加以下行:

jack ALL=(ALL) ALL

答案2

我通常做的是为特定组启用 root 权限。这样你就可以将你想要 root 权限的用户添加到该组中。

编辑/etc/sudoersvisudo添加(或注释掉):

%wheel      ALL=(ALL) ALL

然后将您的用户添加到该组:

gpasswd -a jack wheel

答案3

我可以在 root 下使用 pacman ,但是有办法让我的新用户执行这些操作吗?

您可以创建您的$USER,将它们wheel单独添加到组中:

useradd -Ng wheel --create-home --no-log-init $USER

然后更新/etc/sudoers 按照建议作者:埃里克·伦纳特森。但如果您正在寻找一种编程方法,您可以创建一个文件,如下/etc/sudoers.d所示:

echo "$USER ALL=(ALL:ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/dont-prompt-$USER-for-password

上面的方法被建议visudo由 Boris 在 Ask Ubuntu 中提出,它根本不需要使用。当与 pacman 一起使用时,请在命令前加上 sudo ,例如:

sudo pacman -S docker docker-compose

相关内容