如何在 Linux 上刷新并重新加载组成员身份,而无需重新启动或再次登录
您是否想在 Linux 上刷新并重新加载组成员身份,而无需重新启动 Linux 计算机或重新登录?尝试使用 newgrp 命令登录到新组,而无需再次登录或重新启动系统。
教程详细信息 | |
---|---|
难度等级 | 简单的 |
Root 权限 | 是的 |
要求 | Linux 终端 |
类别 | 用户环境 |
操作系统兼容性 | Alma • Alpine • Amazon Linux • Arch • CentOS • Debian • Fedora • Linux • Mint • openSUSE • Pop!_OS • RHEL • Rocky • Stream • SUSE • Ubuntu • WSL |
预计阅读时间 | 3 分钟 |
无需重启或重新登录即可在 Linux 上刷新并重新加载组成员身份
- 在 Linux 上打开终端应用程序。
- 如果所需的组未添加到系统,请使用以下 groupadd 命令添加:
$ sudo groupadd {groupname}
$ sudo groupadd sales - 通过运行 grep {groupname} /etc/group 命令来验证新组是否已创建:
$ grep -w '^sales' /etc/group
- 现在您已成功向 Linux 系统添加了新组。现在是时候将该组添加到当前用户或任何其他用户了。例如,将用户 vivek 添加到销售组:
$ sudo adduser {UserNameHere} {GroupName}
$ sudo adduser vivek sales - 使用grep 命令或id 命令验证新的组成员身份:
$ grep '^sales' /etc/group
$ id vivek - 现在,使用以下 newgrp 命令即可刷新并重新加载 Linux 上的组成员身份,而无需重新启动或再次登录/注销:
$ newgrp {groupname}
$ newgrp sales - 使用id 命令验证组成员身份:
$ id vivek
- 请注意,您需要 root 级权限才能添加和切换群组。因此,您需要输入密码来确认更改。
上述 Linux 命令允许您将当前组成员更改为名为“sales”的指定组。该命令将使用新组成员身份创建一个新的 shell 进程,您无需注销或重新启动系统即可继续工作。
用于Linux用户和组管理的重要文件
- /etc/passwd – Linux 用户帐户信息。
- /etc/shadow – 保护用户帐户信息,包括散列的 Linux 密码。
- /etc/group – Linux 组帐户信息。
- /etc/gshadow – 保护组帐户信息。
关于 sg 命令的说明
sg 命令的工作方式与 newgrp 类似,但接受命令。语法为:使用名为“lxd”的组
运行pwd 命令:
以 lxd 组身份运行 lxc list 命令:
$ sg {group-name} {command}
$ sg {group-name} -c {command}
$ sg lxd pwd
$ sg lxd -c 'lxc list'
总结
就这样。您已成功将新组添加到 Linux 系统,并刷新和重新加载了组成员身份,而无需重新启动系统或再次登录。有关更多信息,请通过键入以下 man 命令或 help 命令在线或离线查看 newgrp 手册页:
$ man newgrp
$ man adduser
$ man groupadd
$ man sg