授予新用户 root 权限

授予新用户 root 权限

我创建了一个具有 sudo 权限的“普通”用户,比如 newuser。我使用 GUI 用户和组创建并以管理员身份创建。如果我想安装新程序或任何需要 root 权限的东西,我必须执行 sudo 然后输入 root 密码。例如:sudo apt install geany

我尝试编辑 visudo 文件,为该用户提供与 root 用户相同的权限。我按照以下步骤操作:https://www.liquidweb.com/kb/add-user-grant-root-privileges-ubuntu-18-04/

新用户 ALL=(ALL:ALL)ALL

但是,如果没有 sudo,我仍然无法执行 apt update 或 apt upgrade 等。这毫无意义。Ubuntu 不应要求输入 root 密码,因为新用户具有与 root 相同的权限。

我遗漏了什么吗?

提前致谢

答案1

没有普通用户拥有“与 root 相同的权限”。拥有与 root 相同的权限意味着运行 EUID(有效 UID)等于 0 的进程,并且除 root 之外没有用户的 UID 为 0。这正是目的sudo- 从使用 EUID 等于您的常规用户 UID 运行切换到使用 EUID=0 运行。这就是所谓的“权限提升”。Ubuntu 不支持直接以 root 身份登录(您可以这样配置它,以便您可以以 root 身份登录,但许多程序会拒绝以 root 身份运行),因此如果您想以 root 权限运行任何东西,您必须使用sudo(或等效的,例如pkexecGUI 程序)。

答案2

为了运行apt update或任何需要超级用户权限的命令,您需要运行

sudo <program name>

如果您希望无需输入密码即可执行此类命令,则必须编辑 sudoers 文件(使用visudo)添加以下指令:

newuser ALL=(ALL) NOPASSWD: ALL

如果你想允许整个组执行sudo而不要求输入密码,你可以添加(注意%组名前面的):

%yourgroup ALL=(ALL) NOPASSWD: ALL

相关内容