在 Linux 中将用户添加到新组很容易——您只需要以下命令:
# adduser user group
但是,除非您注销然后重新登录,否则这不会真正执行任何操作。当您有 GUI 会话时,例如 Xserver,您必须完全关闭它。
我知道有newgrp
“登录到新组”的命令,但问题是为什么必须重新启动用户会话才能应用新组设置?
答案1
这里解释得很好什么是进程 GID 以及它的用途是什么?
当您更改用户组时,GUI 会话的根进程保持不变,并且所有新运行的程序仍继承旧的用户和组 ID。
这可以通过运行来解决su - username
- 新的 shell 将应用新的组 ID。