1、 用户信息文件

1.1  /etc/passwd :        

用户名:密码标志:uid:组id:用户说明:家目录:用户登录后的shell (man 5 passwd,可以查看passwd配置文件帮助信息,passwd不能带绝对路径)


用户名:就是登陆账号

密码标志(标识):不是密码,真正密码发在/etc/shadow(权限000,只有root能编辑)下。x代表有密码,不能省略,如果省略代表不需要密码登录,这样没密码的用户只能在本机登录,ssh协议规定的

uid:0:超级用户。 1~499:系统用户(伪用户,不能登录不能删除,系统启动服务或启动命令使用的)。500~65535:普通用户,如果普通用户uid设置为0,那这个普通用户就成为超级用户了,系统只认uid

组id:用户所属组(初始组(不能选,可以改、不推荐,一个用户只能有一个初始组)和附加组(用户可以加入其他多个组,拥有这些组的权限,用户可以拥有多个附加组))

用户说明:简要描述该用户干嘛的

家目录:初始登录位置(root家目录/root,普通用户/home/userxxx),/home/lvxiujun 、/home/user1、.....

用户登录后的shell :命令解释器(将Linux 命令传送给系统内核翻译成机器语言), /sbin/nologin为不能登录用户 、/bin/bash(linux下,现在标准shell,如果改错了,无法登录了) 、....


1.2 /etc/shadow(影子文件,是/etc/passwd的影子,保存真正加密密码字符串)

用户名:加密的密码:最后一次修改日期:两次密码的修改间隔:密码有效期:密码修改到期前的警告天数:密码到期后的宽限时间:账号失效时间:保留字端


用户名:登录的账号

加密的密码:如果是!!、*代表没密码,不允许登录(如果一个可以登录用户,将这个值开头加上!!,这个用户也无法登录了)

最后一次修改的日期:16076,代表1970年1月1号之后的第16076天

两次密码的修改间隔(与第三个字段相比较):默认0,第一次密码修改之后多久之后才可以修改,0代表随意无限制,如果是10,就代表1修改密码后10天后才能修改

密码有效期(与第三个字段相比较):90(代表90天之后必须修改)

密码修改到期前的警告天数(与第5个字端相比较):如果这里7,相对于90来说,第83天会警告

密码到期后的宽限时间(与第5个字端相比较):如果这里是5,到了第90天还可以登录,第95天就登录不了了,如果没写,就是第90天就不允许登录了(0:跟没写一样,没有宽限时间,到期密码立马失效;-1:密码永久有效)

账号失效时间:用时间戳表示,比密码有效期权重高,如果失效时间比有效期短,到了失效时间就不能用了

时间戳换算日期:date -d “1970-01-01 16076 days ”        //2014年 01月 06日 星期一 00:00:00 CST

日期换算时间戳:echo $(($(date --date="2014/01/06" +%s) / 86400+1)).           //16076

保留字端:保留字段,暂时没用


2、组信息文件

2.1 : /etc/group

组名:组密码标志:GID:附加组用户


组名:组名

组密码标志(标识):用x表示,真正密码在gshadow保存,用的不多,不推荐使用;使用场景,例如root太忙,给root组搞一个组管理员,这个管理员就拥有root给他分配的权限

GID:组id

附加组用户:此用户与该组创始人权限一样


2.2 :/etc/gshadow

组名:组加密密码:组管理员用户名:组中附加用户

组名:组名

组加密密码:组加密密码,给组管理员用的,组管理员输入密码后就会拥有跟该组创始人给他分配的权限

组管理员用户名:此用户与该组创始人给他分配的权限

组中附加用户:添加到该组的用户(这里看不到初始用户,要想看到初始用户Linux 只有一个办法:先vim /etc/passwd查看用户组id,在去vim /etc/group 查看组id对应的组名)



3、用户管理相关文件

3.1 :家目录:用户初始登录位置

3.1.1 普通用户:/home/用户名   所有者与所属组都是此用户,700权限。如果想将普通用户变为超级用户,将/etc/passwd.  uid变为0,他就成了超级用户,但是家目录不变

3.1.2 root用户:/root 所有者与所属组都是root ,550权限,给什么权限root都没限制,root始终是777


4、邮箱 :/var/spool/mail/用户名


5、用户模版目录:/etc/skel

例如,家目录下一创建就有.bashrc、.bash_profile....等这些文件、目录,总的有个模版照着模版复制内容到家目录,这个模版目录就是/etc/skel,例如我想每个用户在我服务器上创建时候都加一个shuoming.txt在家目录中,就在/etc/skel目录下加入一个shuoming.txt写入自己想告诉那些用户的内容,当创建用户的时候,它们家目录默认就有shuoming.txt