概念介绍
主体组:
也称为初始组,是用户登录系统时所在的组,规则如下:
创建新用户时,如果未明确指定用户所属的主体组,则默认情况下将创建与用户名相同的组作为用户的主体组
当用户创建文件时,文件的所有权组将成为当前用户的主体组
如果useradd命令可以使用-g参数指定主体组,则缺省情况下不会创建同名的主体组
用户只能属于一个主体组
无法删除用户的主体组
您不能直接将用户移出主体组,但可以更换主体组
如果删除用户时该主体组中没有其他所属用户,则该主体组将自动删除
附加组
其他可以在登录后切换的组。 规则如下。
使用useradd命令时,可以使用-G参数指定其他组
用户可以属于0个以上的附加组
添加用户的组和主体组可以相同
您可以直接删除附加组,而不必在意用户是否所属
添加组可以添加和删除任何所属用户
删除用户不会影响其所属的子组
命令演示
/etc/passwd文件
每个用户一个记录,七个字段是用户名、密码(隐藏x )、用户ID、用户主ID、用户描述、用户主目录、用户默认外壳
cat /etc/passwd
user 1: x :10023360100233600233600233603360/home/user 1: /畅快的大神/bash
/etc/group文件
每个组都有一个记录,四个字段分别是名称、密码、组ID和组中的用户列表。 仅显示将此组作为附加组的用户
cat /etc/group
user1:x:1002:
更改用户的主体组
用户模块- g组1用户1
cat /etc/passwd
user 1: x :10023360100:0:/home/user 1: /畅快的大神/bash
将用户添加到子组
建议使用gpasswd命令而不是usermod,因为如果usermod -G命令不写所有用户的子组,则所有以前的子组都将为空
组添加组2
gpasswd-a用户1组2
添加用户用户1 to group group 2
cat /etc/group
group 2: x :10043360用户1
无法删除用户的主体组
groupdel user1
groupdel : cannotremovetheprimarygroupofuser ' user1'
直接删除子组
cat /etc/group
group 2: x :10043360用户1
组组2
cat /etc/group
/etc/group中没有记录
创建用户时,指定用户所属的主体组和附加组
-g :用户所属的主体组
-G :用户所属的附加组
-M :不创建用户的主目录
useradd-g组1-g组2-m user 3
cat /etc/passwd
user : x :100:100:100:100:3360/home/user 3: /畅快的大神/bash
cat /etc/group
group 2: x :10043360用户3