目录
1.3查看用户的 用户id(uid)、组id(gid)以及附加组
一、用户管理
1.1 用cat命令查看用户的配置文件
cat /etc/passwd
用户配置文件形式:
用户名:密码:用户uid号:gid:备注:用户的家目录:和根交互使用的shell用户:
其中用户配置文件里有超级用户root的配置信息、系统用户的配置信息以及一般用户的配置信息
具体说明如下:
用户名 | 作用 |
超级用户(root) | root用户作为管理员,拥有系统和普通用户没有的权限 其配置文件中的uid=0 |
系统用户 | 用来管理和运行服务,系统用户的shell为/sbin/nologin,不让该用户登录,uid为201-999 |
一般用户 | uid为1000-60000,添加一般用户时,系统默认为该用户创建主目录(/home/用户名)和邮箱(/var/mail/用户名) |
1.2添加用户
<1>添加普通用户命令格式:
1.不用选项:useradd 用户名
2.添加用户并用选项指定参数:useradd 用户名 -u uid号 -g gid号/组名 -G 附加组/组名 -c 备注 -s 指定shell -d 指定家目录
注:-u:指添加uid(用户ID)
-g:添加组ID
-G:添加附加组
-c:添加用户的别名
-s:添加与系统交互的shell
-d:指定用户的家目录
<2>添加系统用户
useradd -r 用户名 注:添加系统用户,不创建主目录和邮箱
注:所有用户的建立 shell参数默认都是 /bin/bash 若添加系统用户,需手动更改系统用户的配置文件:命令格式:
vim /etc/passwd
将添加系统用户的shell部分更改为:/sbin/nologin
1.3查看用户的 用户id(uid)、组id(gid)以及附加组
id 用户名
1.4删除用户
userdel -r 用户名
注:加-r与不加r的区别:加r会把用户的家目录和邮箱文件一并删除,所以删除系统用户时可不加-r
1.5修改用户信息
命令格式:usermod 选项 用户名
选项:-c 改变用户的全名或者说描述名称
-d 改变用户的家目录
-e 设置用户账号的过期时间
-f 密码的过期宽限时间
-g 改变用户的gid
-G 将用户添加入一个新组
-s 改变用户的默认shell
-l 改变用户用户名
-u 改变用户的uid
-L 锁住密码,使账号不能用
-U 为用户密码解锁
1.6管理用户密码
查看用户的密码配置文件 : cat /etc/shadow
root:$6$On6p9hwAKi2B.ID7$uToTvlWMductNPQaCSESNtbP3M3wiIQnANewoYl1Jr5.0VBmSuCh2csYN.2FG9kgUWbx7RDFGBFb1dshmXX1o/::0:99999:7:::
配置文件的格式:
用户名:密码:最后一次修改密码的时间:密码最短使用期限:密码最长使用期限:密码过期警告时间:过期宽限时间:账号有效使用时间:保留字段
密码配置文件解读:
密码($id$salt$encrypted,1为md5,2a为Blowfish,5为SHA-256,6为SHA-512。salt是一个最多16字符的随机生成的字符串,用来增加破解难度。encrypted是经过加密算法和salt算出来的密文。!!表示锁定状态)。
最后一次修改密码的时间,从1970年1月1日到最后一次修改密码所经过的天数。
密码最短使用期限,为0表示不限制。
密码最长使用期限,密码使用多长时间之后必须要改密码,99999表示密码永久有效。
密码过期警告时间,密码过期前多少天进行警告,提示用户改密码,但是不锁定用户。
密码过期宽限期限,密码过期后必须改密码的时间,如果还没改,锁定用户,就只能找网管了。
账号过期精确时间,如果为99999,意味着永不过期。是从1970年1月1日之后的天数。
保留字段
1.7修改用户密码
命令格式;passwd 用户名
-n 指定密码的最短使用期限
-x 指定密码的最长使用期限
-w 设置密码过期警告时间
-l 锁定用户账号密码
-u 解锁用户账号
-d 删除用户密码,在redhat中,空密码用户禁止登陆
注:修改密码也可以用echo命令对密码进行修改:
echo 密码 | passwd --stdin 用户名
二、用户组管理
2.1 查看组配置文件
cat /etc/group 进行查看 或者 用vim /etc/group 进行编辑
配置文件格式:组名:组密码:组id:用户列表
如普通用户:adminuser:x:3333:xiaoming,xiaohong
组的相关概念:
私有组:当组里只有它一个成员时,它的基本组也叫做私有组
基本组:用户的默认组(家庭成员)
附加组:默认组以外的组(其他社会身份)
2.2 创建组
groupadd -g gid 组名
2.3修改组信息
groupmod -n 新组名 -g gid 原组名
2.4删除组(无法删除组的基本组)
groupdel 组名
2.4管理组密码
组密码的相关信息:/etc/gshadow
修改组密码:
gpasswd 选项 组名
相应选项: -a 添加用户到组
-d 将指定用户移出本组(从附加组移除)
-M设置组成员列表
-A 指定组管理员为哪个用户
-r 删除组密码
三、查询以redhat作为基本组的用户
1.查询redhat组的相关信息:grep redhat /etc/group ------>redhat:x:1000:
2. 由查询结果得 组id为1000,在用户的配置文件中查询为1000作为基本组的用户:
命令:grep 1000 /etc/passwd
3.最终由查询结果便得有哪些用户以redhat组作为基本组
练习例题:
ps: 例题解析在我另一篇博客,大家可以练完后核实答案哦