CentOS—用户和组的相关介绍
用户和组
用户 ----> 人
组 ----> 标签
用户和组的作用
系统登录
文件归属 - 每个文件都属于一个特定的用户和组
进程权限 - 每个进程都由一个特定的用户来运行
用户和组的关系
每个用户有且仅有一个基本组,一个基本组可以作为多个用户的基本组
每个用户都可以有任意多个附加组
默认的配置文件
/etc/login.defs
/etc/default/useradd
记录用户和组信息的文件
/etc/passwd # 记录用户的信息,每行记录一个用户信息,使用":"分隔为7列
root : x : 0 : 0 : root : /root : /bin/bash
用户名 : 密码标志 : UID : GID : 描述信息 : 家目录 : 登录Shell
/etc/shadow # 存放用户的密码信息
/etc/group # 记录组信息
/etc/gshadow # 记录组密码信息
创建用户时,默认情况下,最小UID 1000 ,最大UID 60000
用户的管理
创建用户
useradd [选项] 用户名
选项 :
- g 指定用户的基本组,接组名或gid . 默认情况下会创建一个和用户名相同的组名为该用户的基本组
- s 制定用户的 shell
- u 指定用户的uid.
- G 指定用户的附加组
- d 指定家目录
eg : 创建新用户 mei useradd mei
创建用户 li ,并且指定uid为6666 useradd - u 66666 li
删除用户
userdel - r 用户名 #不保留用户数据---家目录、邮箱
修改用户
修改密码 :
passwd #设置自己的密码
passwd 用户名 #root用户可修改普通用户密码
选项 --stdin 没有交互,直接改用户密码----(从标准输入获取用户密码)
eg :echo 123 | passed --stdin zhang 将用户zhang密码修改为 123
usermod [选项] 用户名 #与useradd 相同
选项 : - g 指定用户的基本组,接组名或gid . 默认情况下会创建一个和用户名相同的组名为该用户的基本组
- s 制定用户的 shell
- u 指定用户的uid.
- G 指定用户的附加组
##### 切换用户
su - 用户名 #root用户可直接切换普通用户,输入 exit 退回root
查看用户基本信息
id [选项] 用户名
选项 - u 仅打印用户的uid
- g 仅打印用户的gid
- G 打印用户所有组的gid
- n 和-u,-g,-G结合使用,使用*名称* 代替id
eg : 查看用户root的用户信息 id root
组的管理
创建组 groupadd 组名
删除组 groupdel 组名
修改组成员 gpasswd [选项] 组名
-a USER # 向组中添加成员
-d USER # 从组中删除成员
-M USER1,USER2,... # 设定组成员,会覆盖原来的组成员
eg : gpasswd - a zhang it # 将zhang从it 组中删除
注意 - a zhang 是一个选项,这是对组 it 操作
修改组 groupmod [选项] 组名
-g ID # 修改组ID
-n NEW_NAME # 修改组名
讨论:默认情况下,创建一个用户做了哪些事情呢?
1.在/etc/group文件中增加一行内容
2.在/etc/gshadow文件中增加一行内容
3.在/etc/passwd文件中增加一行内容
4.在/etc/shadow文件中增加一行内容
5.创建家目录
6.创建邮箱