文章目录
- 用户管理
- 用户密码信息/etc/shadow详解
- ⽤户组的管理(切换到root)
- /etc/group 内容详解
- 用户组的添加
- 用户组的删除
- 用户组的查看
- 用户组的修改
- ⽤户组和⽤户的关联
用户管理
⽤户的管理(/etc/passwd)
⽤户的添加(useradd)
⽤户的删除(userdel)
⽤户的修改(usermod)
⽤户的查看(查看/etc/passwd) id
[root@redhat ~]# grep lei0 /etc/passwd
lei0:x:1000:1000::/home/lei0:/bin/bash
[root@redhat ~]# id lei0
uid=1000(lei0) gid=1000(lei0) groups=1000(lei0)
[root@redhat ~]#
创建用户时,系统自动为你创建了一个与用户名同名的用户组,这个系统创建出来的组就是私有组(private group)
每个用户都必须得属于一个组,就像我的身份一样,我属于湖北省的襄阳市的保康县里的一员,保康县就是我的所属组。
私有组的创建时系统为了保证用户必须属于一个组而创建的。
用户密码信息/etc/shadow详解
/etc/shadow存放的是密码信息,每⼀列密码信息都被冒号分割开来。
第⼀列表示存放的是哪个⽤户的密码信息(username)
第⼆列存放的就是密码,该密码并不是明⽂的,⽽是使⽤算法⽣成的,算法在/etc/login.defs中有指定。
第三列存放的是上次修改密码的时间
第四列存放的是密码最⼩有效期
如果是0,就可以⽆限次的不考虑间隔的修改密码
如果是1,就表示,修改完密码之后,必须使⽤该密码⼀天才能再次修改
第五列存放的是密码的最⼤有效期默认是99999,表示密码99999天就会失效。
如果该数字是3,就表示,3天后密码会过期,如果你想继续使⽤,必须要在
密码到期之前修改。
第六列存放的是密码到期前提前多少天警告的时间信息
如果该数字为7,就表示密码到期之前的7天就会发出警告,告诉你密码即将过期。
第七列表示⽤户密码到期后宽限⽇期
如果该数字是2,就表示密码到期后,你还能使⽤该密码2天,如果2天到了,
你还没修改或更新密码,密码就失效了。
第⼋列表示账号失效⽇期
第⼋列的⽇期就是账号的失效⽇期。如果到了第⼋列的时间,账号直接失效。不可登录。
第九列保留
⽤户组的管理(切换到root)
①⽤户组的添加(groupadd)
②⽤户组的删除(groupdel)
③⽤户组的查看(grep 组名)
④⽤户组的修改(groupmod)
primary group(主要组),private group(私有组),attached group(附加组)
/etc/group存放着⽤户组的信息
[lei0@redhat root]$ su -
Password:
[root@redhat ~]#
/etc/group 内容详解
[root@redhat ~]# grep kcz /etc/group
kcz:x:1001:
每⼀个冒号分割了⼀个内容
第⼀列表示组名
第⼆列表示组密码,x表示密码存放在/etc/gshadows⽂件⾥
第三列表示组ID
第四列表示"组成员"
用户组的添加
创建用户组
/etc/group存放着⽤户组的信息
[root@redhat ~]# groupadd kcz
[root@redhat ~]# grep kcz /etc/group
kcz:x:1001:
[root@redhat ~]#
用户组的删除
[root@redhat ~]# groupadd lsj
[root@redhat ~]# grep lsj /etc/group
lsj:x:1002:
[root@redhat ~]# groupdel lsj
[root@redhat ~]# grep lsj /etc/group
[root@redhat ~]#
用户组的查看
[root@redhat ~]# grep kcz /etc/group
kcz:x:1001:
[root@redhat ~]#
用户组的修改
用户是有UID的,那么对于用户组来说也有GID(Group ID),GID也是唯一的。
为什么要有ID,因为系统是根据Id来识别用户和用户组的。
添加用户组的同时可以指定GID
[root@redhat ~]# groupadd -g 10086 kcq
[root@redhat ~]# grep kcq /etc/group
kcq:x:10086:
[root@redhat ~]# groupmod -g 68001 kcq
[root@redhat ~]# grep kcq /etc/group
kcq:x:68001:
[root@redhat ~]#
⽤户组和⽤户的关联
创建⽤户的时候指定⽤户组
由于任何⽤户都必须依赖于⽤户组才能存在,所以如果创建⽤户没有指定⽤户组(primary group),
那么系统会为该⽤户创建⼀个同名的组。这个组叫做该⽤户的private group(私有组),
私有组默认⾥⾯只有⼀个和该私有组同名的⽤户。
耿彦祖的经验之谈:私有组的意义就在于让⽤户有了⼀个⽤户组。
添加一个leilei的用户,将他添加到kcz组中
[root@redhat ~]# useradd leilei -g kcz
[root@redhat ~]# id leilei
uid=1000(leilei) gid=1001(kcz) groups=1001(kcz)
[root@redhat ~]# grep kcz /etc/group
kcz:x:1001:
如果你创建了⼀个⽤户,指定了该⽤户的所属组,那么该⽤户就没有私有组。