在Linux系统中,每个用户都具有一个唯一的身份标识,称作用户ID(简称UID)。
Linux用户可以分为3类:超级用户(root 用户标识号是0)、管理用户和普通用户。
/etc/passwd 是存放用户的地方,语法格式:
name:password:uid:gid:comment:home:shell
/etc/passwd 文件是一个纯文本文件,每行采用了相同的格式:
含义如下
etc/passwd文件中常见的伪用户
伪用户 含义
bin 拥有可执行的用户命令文件
sys 拥有系统文件
Adm 拥有帐户文件
uucp UUCP使用
lp lp或lpd 子系统使用
nobody NFS使用
passwd文件各个字段的意义
1 name 登陆名
2 passwd 用户口令。加密的
3 uid 指定用户的uid 。
4 gid 组id
5 comment 用来保存用户的真实姓名和个人细节
6 home指定用户的主目录的绝对路径
7 默认使用的shell
Eg:
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
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
用户名: 密码 : uid : gid :用户描述:主目录:登陆shell
UID : 每个用户必须被分配一个userid,”0”为root保留ID.
1-99为系统保留,
系统中有一类用户称为伪用户(psuedo users),这些用户在/etc/passwd文件中也占有一条记录,但是不能登录,因为它们的登录Shell为空。它们的存在主要是方便系统管理,满足相应的系统进程对文件属主的要求。常见的伪用户如表8-1所示。
与Linux /etc/passwd文件不同,Linux /etc/shadow文件是只有系统管理员才有权利进行查看和修改的文件,系统管理员应该弄明白Linux /etc/shadow文件中每个字符段的相应的意义,清楚管理时的具体意义。
Linux /etc/shadow文件中的记录行与/etc/passwd中的一一对应,它由pwconv命令根据/etc/passwd中的数据自动产生。它的文件格式与/etc/passwd类似,由若干个字段组成,字段之间用“:”隔开,文件的每行是8个冒号分割的9个域,格式如下:
username: passwd: lastchg: min: max: warn: inactive: expire: flag
登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
1)“登录名”是与/etc/passwd文件中的登录名相一致的用户账号
2)“口令”字段存放的是加密后的用户口令字,长度为13个字符。如果为空,则对应用户没有口令,登录时不需要口令;如果含有不属于集合{./0-9A-Za-z}中的字符,则对应的用户不能登录。
3)“最后一次修改时间”表示的是从某个时刻起,到用户最后一次修改口令时的天数。时间起点对不同的系统可能不一样。例如在SCOLinux中,这个时间起点是1970年1月1日。
4)“最小时间间隔”指的是两次修改口令之间所需的最小天数。(0代表任何时候可以修改)
5)“最大时间间隔”指的是口令保持有效的最大天数。(1代表永远不能修改)
6)“警告时间”字段表示的是从系统开始警告用户到用户密码正式失效之间的天数。(-1代表没有警告)
7)“不活动时间”表示的是用户没有登录活动但账号仍能保持有效的最大天数。(-1永远不会禁止)
8)“失效时间”字段给出的是一个绝对的天数,如果使用了这个字段,那么就给出相应账号的生存期。期满后,该账号就不再是一个合法的账号,也就不能再用来登录了。(-1搞这个账户被)
9) 保留供以后使用