在Linux系统中,使用usermod命令管理用户的主组(primary group)与附加组(supplementary group)是系统运维中的基础操作。本文将逐步拆解完整流程,结合终端截图进行演示,帮助你快速掌握。
第一步:启动Ubuntu系统,打开终端窗口。


第二步:执行id命令,即可查看当前用户的主组和附加组信息。输出结果中,第一个GID代表主组,其后列出的组均为附加组。

第三步:查看/etc/passwd文件,每行记录包含用户ID(第三个字段)和主组ID(第四个字段)。例如,第二个数字1000即为主组编号。

第四步:检查study用户的附加组权限。在/etc/group文件中,可以清晰看到该用户所属的所有附加组。

第五步:注意关键点——用户chris缺少附加组中的sudo权限,因此尝试创建新用户时会失败。



第六步:解决办法是使用-G参数(大写)为chris添加附加组。执行命令sudo usermod -G sudo chris即可。

第七步:再次查看/etc/group文件,sudo组中已包含两个用户:原有的study和新加入的chris。

第八步:需要注意的是,当前shell会话的权限并未立即更新。必须退出终端并重新登录,新添加的附加组权限才会生效。



第九步:重新连接后,chris已获得sudo权限,可以正常执行创建用户的操作。

第十步:小写-g参数用于更改用户的主组。例如,sudo usermod -g newgroup chris会将chris的主组切换为newgroup。

以上便是使用usermod命令设置主组与附加组的完整流程。核心在于正确区分-g(主组)与-G(附加组),并牢记重新登录以使权限变更生效。掌握这些要点后,Linux用户组权限管理将变得得心应手。
