Linux下/etc/passwd、/etc/shadow、/etc/group文件

1./etc/passwd

[root@prac ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
… … …

每个字段都用:隔开,各字段包含的信息如下:

① 登陆用户名;

② 用户密码;

③ 用户账户的UID(数字形式)

④ 用户账户的组ID(GID)(数字形式)

⑤ 用户账户的文本描述(称为备注字段)

⑥ 用户HOME目录的位置

⑦ 用户的默认shell

usermod是一个用户账户修改工具

-l  修改用户账户的登录名

-L  锁定账户,使用户无法登录

-p  修改账户的密码

-U  解除锁定,使用户能够登录。

chpasswd    从文件中读取登录名密码对,并更新密码

chage                 修改密码的过期日期

chfn       修改用户账户的备注信息

chsh        修改用户账户的默认登录shell

2./etc/shadow

[root@prac ~]# cat /etc/shadow
root:$6$LrtcGaOs$V/f8z.wKO94lEOXRXJv4QEqmM8y2YD9Z6bba0U3VtefljBUtfHjbWFQWKxXKqTI2GpYXcdm04TuBzE4w5NMdO.:17206:0:99999:7:::
bin:*:15980:0:99999:7:::
daemon:*:15980:0:99999:7:::
adm:*:15980:0:99999:7:::
lp:*:15980:0:99999:7:::
sync:*:15980:0:99999:7:::
shutdown:*:15980:0:99999:7:::
halt:*:15980:0:99999:7:::
… … …

和/etc/passwd一样,/etc/shadow的每个字段同样以:隔开,各字段信息如下  

① 与/etc/passwd文件中的登陆名字段对应的登录名

② 加密后的密码

③ 自上次修改密码后过去的天数密码(自1970年1月1日开始计算)

④ 多少天后才能更改密码

⑤ 多少天后必须更改密码

⑥ 密码过期前提前多少天提醒用户更改密码

⑦ 密码过期后多少天禁用用户账户

⑧ 用户账户被禁用的日期(用自1970年1月1日到当天的天数表示)

⑨ 预留字段给将来使用

3./etc/group

[root@prac ~]# cat /etc/group
root:x:0:
bin:x:1:bin,daemon
daemon:x:2:bin,daemon
sys:x:3:bin,adm
adm:x:4:adm,daemon
tty:x:5:
disk:x:6:
lp:x:7:daemon
mem:x:8:
… … …

/etc/group文件有4个字段:

① 组名

② 组密码

③ GID

④ 属于该组的用户列表

usermod -G 组名 用户名  #在组中添加用户,-G选项会把这个新组添加到该用户账户的组列表里

groupmod -n  新组名 旧组名    #更改组名

上一篇:Android 蓝牙4.0 BLE (onServicesDiscovered 返回 status 是 129,133时)


下一篇:[OLE DB 源 [1]] 警告: 无法从 OLE DB 访问接口检索列代码页信息。如果该组件支持“DefaultCodePage”属性,将使用来自该属性的代码页。如果当前的字符串代码页值不正确,请更改该属性的值。如果该组件不支持该属性,将使用来自该组件的区域设置 ID 的代码页。