首页 > 代码库 > linux用户管理与用户组的重要文件
linux用户管理与用户组的重要文件
用户管理的2个重要文件:/etc/passwd和/etc/shadow.
/etc/passwd文件里存放的是用户的信息,其中不包含密码:passwd文件中每一行代表一个用户,且每一行分为7个字段使用“:”符合隔开。
使用cat命令可以查看passwd文件的内容
以第一行:root:x:0:0:root:/root:/bin/bashw为例
7个字段分别代表的含意:
1. 账号名称,用来对应UID。
2. 密码:使用X代替,真正的密码是放在/etc/shadow的文件中的。
3. UID就是用户标识符。
UID的限制如下:
Id范围 |
说明 |
0 |
UID为0的就是系统管理员。所以说系统管理员可以有多个,但不建议存在多个系统管理员。 |
1~499 |
系统账号,保留给系统使用的账号ID。请不要跟我们创建的普通用户混淆,系统账号的作用是:在系统上启动一些服务使用。系统账号代替了root超级权限账号,也就是说系统账号权限很小,只是维持一些服务启动的权限。 系统账号有分为2中: 1~99:由distributions创建的账号。 100~499:在我们自己使用中需要系统账号的UID。 |
500~42949627295(2的32次方减去1) |
给一般用户使用的UID。 |
4. GID使用对应用户组的ID,对应的文件是/etc/group只是用了确定是那个用户组。
5. 用户信息说明列,用处不大,只是说明作用。
6. 主文件夹,用户的主文件夹,用户登陆后首先到达的文件夹位置。Root默认/root,其它普通用户都在/home/username文件夹下。
7. Shell,用户登陆后取得的一个shell文件与系统内核通信,执行用户的操作。也可以使用/sbin/nologin代替是用户无法取得shell文件,主要用来制作pop邮箱。
。
/etc/shadow文件:存放的是用户的密码信息,密码是加密的。共9个字段。
以root用户为例:
root:$6$V/e4l9oBq1AXY7i1$eVO6wW2lVlRlb3atoGFfDoJD/a2PFFmoZSFsWEOq87xOeOpKLEA28m.PjDct4ylkDrpy/u0dxiKKJhLHnvQNJ.:17309:0:99999:7:::
1. 账号名称
2. 密码,密码是经过加密的。
3. 最近改动密码的日期。日期为数字,计算方式为从1970年1月1日开始1代表1天的意思。
4. 密码不可以被改动的天数。
5. 密码需要更新的天数。
6. 密码需要更新前的提示天数。
7. 密码过期后的宽限时间。
8. 账号的失效日期。
9. 保留字。
用户组相关的2个重要文件:/etc/group,/etc/gshadow
查看/etc/group
4个字段:
1. 用户组的名字。
2. 用户组的密码。通常是不设置的。因为真的密码在/etc/gshadow文件中所以都是“X”。
3. GID,用户组的ID。
4. 用户组内包含的用户,使用,隔开。
讨论下有效用户组(effective group)和(initial group)初始用户组
什么是有效用户组那,其实就是,我们创建用户时指定的用户组或系统给默认的用户组,在/etc/passwd中查看也就是第四个字段里的GID对应的用户组。被称为有效用户组。
什么是初始用户组,就是在我们登陆的时候,linux系统去查看我们的/etc/passwd文件中的第四字段GID,并获取改GID拥有的权限。被称为初始用户组。
其他用户组,因为一个用户可能有多个用户组,剩下的也就是其他用户组了。
查看当前用户都存在哪些用户组的命令:groups
Guoyanan账号的有效用户组为guoyanan,其他为root。
用户组密码/etc/gshadow文件内容:
共4个字段:
1. 用户组名。
2. 密码列,如果开头是!表示密码失效。
3. 用户组管理员的账号。
4. 该用户组所属账号。
什么是用户组管理员:当账号过多的情况,root忙不过来,给一个用户组指定一个管理账号。让这个账号管理自己用户组下面的用户。
linux用户管理与用户组的重要文件