用户配置文件和密码配置文件、用户组及用户管理
一、用户配置文件和密码配置文件
1. /etc/passwd #这是用户的配置文件,一行代表一个用户,每一行用":"分隔为7段,内容如下:
第一段:用户名
第二段:表示用户的密码,所有行都是x
第三段:表示uid,
第四段:表示gid
第五段:很多都是空的,用户的注释信息
第六段:用户的家目录
第七段:用户的shell,一个用户能登陆,那么需要交互的信息 有一些是/sbin/nologin 不能登陆。
2. etc/shadow #这是用户存放密码的文件,是和用户配置文件对应的,每一行用":"分隔为9段
第一段:用户名
第二段:密码,密码都是经过加密的,两个!!表示未设置密码
第三段:最近更改密码的时间,是一个天数,17110,从1970年1月1日开始到你更改密码经过多少天
第四段:要过多少天才可以更改密码,0是没有限制
第五段:密码多少天后到期,必须要更改密码
第六段:密码到期前多少天提醒
第七段:账号的失效期限,如果密码到了失效期,那么在多少天内就被锁定
第八段:账号的生命周期,从1970年1月1日开始有多少天,账号在这个日期之前可以使用
第九段:没有实际意义。
二、用户组管理
1. /etc/group #存放用户组的配置文件
2. groupadd 可以用来增加用户组
1. [[email protected] ~]# groupadd zx1 #增加一个用户组zx1
2 .[[email protected] ~]# tail -n1 /etc/group
zx1:x:1002: #可以在用户组配置文件里面看到zx1已经存在
3. groupadd -g 增加用户组的同时指定组ID
1. [[email protected] ~]# groupadd -g 1003 zx2 #增加一个zx2组,指定组ID为1003
2. [[email protected] ~]# tail -n3 /etc/group
slocate:x:21:
zx1:x:1002:
zx2:x:1003: #可以zx2看到组ID为1003
4. groupdel 删除用户组,但是如果用户组里有用户那么就不能删除
1. [[email protected] ~]# groupdel zx2 #删除用户组zx2
2. [[email protected] ~]# tail -n3 /etc/group
lx02:x:1001:
slocate:x:21:
zx1:x:1002: #可以看到zx2已经没有了
3. [[email protected] ~]# groupdel lx02 #删除用户组lx02
groupdel:不能移除用户“lx02”的主组 #用户组lx02里面有用户lx02,不能删除
5. 每个配置文件系统都会进行备份,就是“-”结束的文件,如果不小心删除,可以使用这个文件进行恢复
三、用户管理
1. useradd 添加用户,自己添加的用户UID都是从1000开始往后排
1. [[email protected] ~]# useradd lx03 #增加一个用户lx03
2. [[email protected] ~]# tail -n4 /etc/passwd
chrony:x:998:996::/var/lib/chrony:/sbin/nologin
lx01:x:1000:1000::/home/lx01:/bin/bash
lx02:x:1001:1001::/home/lx02:/bin/bash
lx03:x:1002:1003::/home/lx03:/bin/bash #lx03的UID为1002
2.
useradd -u 增加用户的同时指定UID
1. [[email protected] ~]# useradd -u 1004 lx04 #增加一个用户lx04 ,并指定UID为1004
2. [[email protected] ~]# tail -n4 /etc/passwd
lx01:x:1000:1000::/home/lx01:/bin/bash
lx02:x:1001:1001::/home/lx02:/bin/bash
lx03:x:1002:1003::/home/lx03:/bin/bash
lx04:x:1004:1004::/home/lx04:/bin/bash #可以看到lx04的UID为1004
3. useradd -u -g
增加用户的同时指定UID和GID
1. [[email protected] ~]# useradd -u 1005 -g zx1 lx05 # 增加一个用户lx05 ,指定UID1005,属于zx1这个组
2. [[email protected] ~]# tail -n4 /etc/passwd
lx02:x:1001:1001::/home/lx02:/bin/bash
lx03:x:1002:1003::/home/lx03:/bin/bash
lx04:x:1004:1004::/home/lx04:/bin/bash
lx05:x:1005:1002::/home/lx05:/bin/bash #可以看到lx05的uid为1005,gid为1002,1002就是zx1
4.useradd -d -s -d指定用户的家目录,-s指定用户登陆的bash
1. [[email protected] ~]# useradd -u 1006 -g 1002 -d /home/lkh -s /sbin/nologin sdd #添加一个用户sdd ,指定uid1006,gid1002,家目录/home/lkh/,bash为nologin
2. [[email protected] ~]# tail -n4 /etc/passwd
lx03:x:1002:1003::/home/lx03:/bin/bash
lx04:x:1004:1004::/home/lx04:/bin/bash
lx05:x:1005:1002::/home/lx05:/bin/bash
sdd:x:1006:1002::/home/lkh:/sbin/nologin #可以看到sdd的家目录为/home/lkh bash为nologin
3. [[email protected] ~]# ls /home/
lkh lx01 lx02 lx03 lx04 lx05 #可以看到home下有lkh这个目录
5.
useradd -M 创建用户,但是不创建家目录,
1. [[email protected] ~]# useradd -M xaa # 创建一个用户xaa
2. [[email protected] ~]# ls /home/
lkh lx01 lx02 lx03 lx04 lx05 #/home/下没有xaa的家目录 ,实际上xaa是有家目录的,但是没有创建,并不是说没有。
6. userdel 删除用户
1. [[email protected] ~]# userdel lx05 #删除用户lx05
2. [[email protected] ~]# tail -n4 /etc/passwd
lx02:x:1001:1001::/home/lx02:/bin/bash
lx03:x:1002:1003::/home/lx03:/bin/bash
lx04:x:1004:1004::/home/lx04:/bin/bash
sdd:x:1006:1002::/home/lkh:/sbin/nologin #用户lx05已经不存在
7. userdel -r 删除用户的同时删除用户的家目录
1. [[email protected] ~]# userdel -r lx04 #删除用户lx04
2. [[email protected] ~]# ls /home/ #可以看到lx04 的家目录一起被删除
lkh lx01 lx02 lx03