登录Linux需要帐号和密码,不同的帐号拥有不同的权限,在Linux中拥有用户和用户组的概念,合理利用这两个特性可以方便的实现复杂的权限控制
UID :帐号对应的数字ID号(Linux系统只认这个,帐号是方便人记忆的)
GID:用户组对应的数字ID号
帐号与UID的对应关系存在于/etc/passwd文件中,Linux的文件或目录都有拥有者和用户组的概念,它们决定能够访问这个文件或目录的帐号
Linux登录过程分析:
1.在终端或X-Windows下输入帐号和密码
2.先在/etc/passwd文件中查找是否存在这个帐号,没有则退出,若有则将该帐号的信息读出来(家目录,shell设置)
3.在/etc/shadow文件中核对密码,若密码不匹配则退出
4.Shell控制核心,登录成功
/etc/passwd ---帐号文件
/etc/shadow---帐号密码文件(帐号的其它信息如:是否允许登录、修改日期等)
/etc/passwd 文件内容解释(该文件中的每一行代表一条帐号信息):
root:x:0:0:root:/root:/bin/bash
这条记录共由7个字段组成信息之间以:分割
1.帐号名称
2.密码(X表示密码加密后在/etc/shadow中)
3.UID
4.GID
5.信息栏目(一些说明性信息)
6.家目录(登录Linux系统后的主目录)
7.所使用的shell
/etc/shadow 文件内容解释:
root:$6$rhcoygfe3mrjEk6i$MD54GfyBMvqvMmRwY3Cdu9lYlCSQflwYc.FREIwfuk1fanOPnCgkD7pMITsnF.Fz50cD2ZT4V/dgf4BeNF8Jx0:15731:0:99999:7:::
bin:*:15240:0:99999:7:::
共由9个字段组成
1.账户名称
2.密码(加密后的密文,如果密文第一个字符为*或者!则该帐号不能登录)
3.最近的一次改密码的日期
4.密码不可改日期,通俗说就是要过了多少天后才可以改密码
5.密码需要重新更改的天数,也就是在规定时间内必须更改密码
6.密码更改期限前的警告期限
7.密码过期宽限时间
8.帐号失效日期
9.保留字段以备将来使用