1.passwd解读:这个档案是这样构造的,每一行代表一个账号,有几行就代表有几个账号,里面有好多账号是系统正常运行所必须的,如bin,daemon,adm等,路径/etc/passwd
eg:root:x:0:0:root:/bin/bash
每一行用:分开,共七段,分别是:
1)账号名称,用来对应UID
2)密码:早起Unix系统直接在这里存放密码,但因为这个档案所有程序都能够读取,这样一来容易造成密码数据被窃取,因此这个字段的密码数据的被放到/etc/shadow中了
3)UID:使用者的标识符,不同的权限对应不同的ID段,具体如下:
0:当UID是0时,代表这个账号是系统账号,所以当你要让其他账号名称也具有root权限时,将该账号的UID改成0即可。
1~499:保留给系统使用的ID,其实除了0之外,其他的UID权限与特性并没有不一样。默认500以下的数字让给系统作为保留账号只是一个习惯。
由于系统上面启动的服务希望使用较小的权限去运作,因此不希望使用root身份去运作,所以我们就得要提供这些运作中程序的拥有者账号才行,这些账号是不可登陆的。
根据系统账号的由来,通常系统账号又约略被区分为两种:
1~99:有distributions自行建立的系统账号
100~499:若用户有系统账号需求时,可以使用的账号UID
500~65535:给一般使用者用。不过linux核心2.6.x版可以支持到2^32-1=4294967295这么大的UID账号
4)GID:与/etc/group有关
5)用户信息说明栏:解释系统这个账号的意义,可以通过finger指令查阅到该信息
6)家目录:root,/root;其他,/home/用户名
8)Shell:用户使用的bash指令库
2.shadow解读:存放用户密码,路径,/etc/shadow。eg:
root:$1$/30QqE5e$y9N/D0bh6rAACBEz.hqo00:14126:0:99999:7:::
shadow同样以:作为分割符,共分为九个字段,这九个字段代表:
1)账号名称
2)密码:该档案只有root才有权限读写,现在一般都使用md5加密后的密文,由于固定的编码系统产生的密码长度必须一致,因此当你让这个字段的长度改变后,该密码就会失效。
3)最近改动密码的日期:时间戳的形式显示
4)密码不可被改动的天数:这个账号的密码在最近一次被修改后,需要经过几天才可以被更改。0,表示可以随时被修改
5)密码需要重新被修改的天数:即指定在最近一次更改密码后,在多少天之内需要再次修改密码,如果不修改密码,则改密码将过期。
6)密码需要变更期限前的警告天数:当用户的密码有效期言论给这个快要到的时候,系统会依据这个字段的设定发出警告言论给这个账号,提醒他再过多少天密码就过期了,请尽快修改密码哟。
7)密码过期后的账号宽限的时间:密码过期后,用户在该期限内仍然可以登陆系统,不过登陆后,系统会强制用户修改密码,然后重新登录系统
8)账号失效日:到达该日期后,该账号将被禁用不管其密码是否过期。
9)保留:最后一个是保留字段,看以后有没有新功能加入
3.group解读:这个档案每一行代表一个群组,以:作为分隔符,共分为4栏,代表的意义为:
1)组名
2)群组密码:通常不设定,这个设定通常是给群组管理员使用的,目前很少有这个机会设定群组管理员,同样,密码已经移动到/etc/gshadow,因此这个字段只会存在一个x而已。
3)GID:群组ID
4)该群组支持的账号名称:用逗号隔开,要让用户加入该群组,只需将用户面加到这里即可
4.groups:显示当前用户所属的群组,其中第一个是有效群组,即用户新建档案时,所在组名为该组名
5.newgrp 有效群组名:在所支持(所属)的群组中切换有效群组,另外该指令执行之后,系统会启用新的shell,重新读取GID,因此,要想切换到原先的环境需要exit退出登录
6.gshadow解读:存放组密码,路径,/etc/gshadow,分隔符“:”
eg:root:::root,各段的含义,
1)组名
2)密码栏,开头若为!则表示无合法密码,即无群组管理员
3)群组管理员账号
4)该群组的所有账号