用户和用户组
用户是使用操作系统的人,而拥有相同权限的人就组成了用户组。
用户
用户相关信息被存储在
/etc/passwd
中,文件的格式是:
用户名:密码占位符:用户编号:用户组编号:用户注释信息:用户家目录:shell类型
用户密码相关信息被存储在
/etc/shadow
中,文件中的每一行与passwd中的行对应,格式是:
用户名:经过加密的密码
用户组
用户组信息被存储在
/etc/group
文件中,其中文件的格式是:
组名称:组密码占位符:组编号:组中用户名列表
用户组的密码信息被存储在
/etc/gshadow
文件中,其中文件的每一行与上一个文件group一一对应,每行的格式是:
组名称:组密码:组管理者:组中用户列表
如果组密码为空,*,!表示该用户组没有组密码,组密码在特殊的场合才有作用,要用到的时候再讲。
创建用户组实例
创建用户组:groupadd [-g 组编号] 用户组名称
如果不指定组编号,则由系统自动分配。
修改用户组名称:groupmod -n 新组名称 旧组名称
修改组编号:groupmod -g 新组编号 组名称
删除用户组:groupdel 组名称
删除用户组之前,要先把用户组清空,即在该用户组中不能有用户。
为用户组添加组密码:gpasswd 用户组
向用户组中添加用户:useradd -g 用户组 用户名
在将用户移入用户组后,在不指定用户家目录的情况下,会在
/home/用户名
下创建一个属于该用户的家目录。
指定用户的家目录:useradd -d 家目录 用户名
如果这里的用户原先不存在,则会为该用户单独创建一个用户组。
修改用户的备注:usermod -c 备注 用户名
修改用户的用户名:usermod -l 新用户名 旧用户名
修改用户的所属用户组:usermod -g 新用户组 用户名
切换用户身份:su 用户名
如果直接运行
su
则表示切换到root用户。
查看用户的信息:id 用户名 和 finger 用户名
查看用户组的信息:groups 用户组名称
设置用户的资料:chfn 用户名
锁定账户:passwd -l 用户名
解锁账户:passwd -u 用户名
删除账户的登录密码:passwd -d 用户名
其余知识
用户可以同时属于多个组,但是只能有一个组是主要组,其余都是附属组。
增加用户的附属组:gpasswd -a 用户名 新用户组(,新用户组2,新用户组3)
注意,这条命令与usermod -g 新用户组 用户名 的区别,区别在于,gpasswd增加的是用户的附属组,而usermod修改的是用户的主要组!
当需要添加多个附属组时,多个附属组之间使用”,“,逗号隔开。
以附属组的身份执行命令:newgrp 命令
这个时候,你不是以自己的主要组的身份去执行命令,而是以现在自己所在的附属组的身份去执行这条命令,这个时候需要你输入组密码,如果有设定的话。