为什么在安装 sudo 软件包之前将用户添加到 sudo 组不起作用?

为什么在安装 sudo 软件包之前将用户添加到 sudo 组不起作用?

我刚刚犯了这个“错误”,我花了一段时间才弄清楚!谁能解释一下这个“bug”的幕后发生了什么?提前致谢 :)

答案1

这实际上就是您的发行版打包 sudo 的方式。

sudo 组没有什么特别的,它只是一个普通的 Linux 组。

sudo 组的力量来自于在 /etc/sudoers(.d) 中列出,允许提升到 root 执行任何命令。

sudo 工作需要满足以下几个条件:

  1. sudo 可执行文件需要设置gid
  2. 您的用户或用户所在的组必须在 /etc/sudoers.d 中列出
  3. 运行 sudo 时您的用户必须登录到该组

如果其中任何一个不正确,例如,如果您的发行版重新创建了 sudo 组,例如因为它希望 sudo 组具有特定的 gid,那么在第一次安装 sudo 时,您的 sudo 可能无法工作。

另一个常见的错误是,将用户添加到组后,现有进程不会立即获得新权限,您需要使用 grp 或重新启动登录 shell 来获取新组的权限。

相关内容