如何向现有用户授予 sudo 权限?

sak*_*ket 152 sudo privileges

我想sudo在 Ubuntu 中授予新创建的用户权限。

我试过

sudo adduser hduser admin
Run Code Online (Sandbox Code Playgroud)

但它说不存在管理员组。我该怎么做?

ish*_*ish 228

您需要将用户添加hdusersudo组(这是 Ubuntu 中的“管理员”组)。

如果您已经创建了用户,则可以sudo通过在终端中运行以下命令将用户添加到组中:

sudo usermod -a -G sudo hduser
Run Code Online (Sandbox Code Playgroud)

  • 请注意,用户必须注销,然后重新登录才能使此更改生效。 (46认同)
  • 不工作 ubuntu 14 (3认同)
  • 用法:usermod [options] LOGIN 选项:-c, --comment COMMENT GECOS 字段的新值 -d, --home HOME_DIR 用户帐户的新主目录 -e, --expiredate EXPIRE_DATE 将帐户到期日期设置为 EXPIRE_DATE - f, --inactive INACTIVE 将密码过期后设置为非活动 INACTIVE -g, --gid GROUP 强制使用 GROUP 作为新的主要组 -G, --groups GROUPS 新的补充组列表 -a, --append 将用户追加到补充组 (2认同)

小智 26

相反,你可以尝试,

sudo adduser hduser sudo
Run Code Online (Sandbox Code Playgroud)

在 Ubuntu 中,您只需将用户添加到组中sudo


oct*_*bus 12

1)成为root。您可以使用sudo -i老式方式或成为 root来执行此操作su -

2)运行 visudo

3)我将sudoers文件的这一部分更改为让我选择的用户成为sudo用户,您可以类似地添加用户(空白行引入以清洁格式):

## User Aliases
## These aren't often necessary, as you can use regular groups
## (ie, from files, LDAP, NIS, etc) in this file - just use %groupname
## rather than USERALIAS
# User_Alias ADMINS = jsmith, mikem dbadmin 
ALL=(ALL) ALL
ics ALL=(ALL) ALL 
csm ALL=(ALL) ALL 
coa ALL=(ALL) ALL
Run Code Online (Sandbox Code Playgroud)

4) 按:和 x 将更改写入 sudoers 并退出 vi。

  • 这似乎不必要地复杂。当 [`adduser` 命令](http://askubuntu.com/a/7484/116961) 可以执行您想要的操作时,为什么还要运行 visudo? (3认同)
  • @dan-dascalescu - 如果“sudo”组不存在,$ sudo adduser 用户名 sudo 将不起作用。所以手动添加用户当然是一种选择。然而,创建一个 sudo 组,将它添加到 sudoers 文件(例如通过 visudo),然后将适当的用户添加到该用户组肯定更优雅。 (2认同)

Alb*_*gos 5

编辑 sudoers 文件: sudo visudo

并添加:

user    ALL=(ALL:ALL) ALL
Run Code Online (Sandbox Code Playgroud)

  • 当 [`adduser` 命令](http://askubuntu.com/a/7484/116961) 可以工作时,为什么还要编辑 `/etc/sudoers`? (10认同)