/usr/share/man 目录
当我们使用 man command
(command 表示指令)可以获得该指令的用法,详细说明等。
那么这些详细说明是从哪里来的呢,不可能凭空而来的呀! 其实是通过读取说明文件来达到这个效果的,这些说明文件就存放在 /usr/share/man 目录下
同理还有 /usr/share/info 目录,该目录下存放的是使用 info
命令时使用的说明文件
/usr/share/doc
安装软件时,一般会同时安装一些说明文件到/usr/share/doc目录下,例如安装 mysql ,那么在 /usr/share/doc 目录下会出现 mysql-community-common-5.7.21 目录,存放一些
mysql的说明,用法等
/etc/passwd 文件
账户信息存放在位置,打开/etc/passwd文件
每一行都代表一个账号,有几行就代表有多少个账号。第一行就是root账号,另外需要注意的是,里面有很多账号上系统运行所需要的系统账号。
例如bin,deamon等
由图可以看到,每一行内容由『:』分隔,共7个字段。分别是
账号名称
密码。通常是一个*
早期的 unix 系统密码是存放在这个位置了,但现在的 linux 基本上把密码挪到 /etc/shadow 文件里了,所以这里是一个*号账户UID
这个就是账户标识符了。对于这个标识符的使用范围需要说一下UID 范围 说明 0 (系统管理员) 当 UID 是 0 时,代表这个账号是『系统管理员』! 所以当你要让其他的账号也具有 root 的权限时,将该账号的 UID 改为 0 即可。 这也就是说,一部系统上面的系统管理员不见得只有 root 喔! 不过,强烈不建议有多个账号的UID 是 0 ,有一个 root 就够了 1~499 (系统账户) 保留给系统使用的 UID ,其实除了 0 之外,其他的 UID 权限与特性并没有什么不一样。默认 500 以下的数字让给系统作为保留账号只是一个习惯。
由于系统上面启动的服务希望使用较小的权限去运行,因此不希望使用 root的身份去执行这些服务, 所以我们就得要提供这些运行中程序的拥有者账号才行。这些系统账号通常是不可登入的, 所以他们对应的shell一般都是/sbin/nologin 这个特殊的shell。
根据系统账号的又来,通常系统账号又大略被区分为两种:
1~99:由 distributions 自行建立的系统账号;
100~499:若用户有系统账号需求时,可以使用的账号 UID。500~65535 (可登入账户) 给一般使用者使用的 GID 群组ID
这个跟/etc/group有关,用户的主群组标识符账户信息说明栏
该账户的一些解释性说明账户家目录
当你用该账户登录时,所进入的目录。例如以 root 账户登录时,进入 /root 目录账户所使用的 Shell
当用户登入系统后就会取得一个 Shell 来与系统内核沟通以进行用户的操作任务。
那为什么root用户所使用的 shell 是 bash 呢?就是在这个字段指定! 这里比较需要注意的是,
有一个 shell 可以用来替代成让账号无法取得 shell 环境的登入动作!那就是/sbin/nologin 这个东西
/etc/shadow 文件
账户的密码存放位置。打开文件,大概是这样子的
同样以『:』分隔,共有9个字段
账户名
密码
当然这里是加密过的密码,不是铭文最近修改密码的日期
这个字段记录了『更改密码那一天』的日期,不过,很奇怪呀!在我的例子中怎么会是 14126呢?呵呵,这个是因为计算 Linux 日期的时间是以 1970 年 1 月 1 日作为 1 而累加癿日期,1971 年 1 月 1 日则为 366 啦! 得注意一下这个资料哦!上述的14126 指的就是 2008-09-04那一天啦密码不可被改动的天数(相对第 3 个字段)
这个字段记录了:账户的密码在最近一次被修改后,需要经过多少天才能够再次更改密码,为 0 的话表示随时可以更改密码。这个限制是为了防止某些用户频繁的修改密码,例如这个字段为5,那么在上次修改密码后,5天内是不能再次修改密码的密码需要重新变更的天数(相对第 3 个字段)
这个字段记录了:在上一次修改密码过后,多少天内需要再次更改密码。这就强制要求用户经常变更密码,如果没有按照这个要求在时限内修改密码,那么这个账户的密码就会变为『过期特性』(注意并不是无效),而如果像上面设置的99999的话,那就表示不需要强制更新密码密码需要变更期限前的警告天数(相对第 5 字段)
当账号密码有效期限快要到的时候(第 5 字段),系统会根据这个字段的设定,提前向用户发送警告信息:『再过 n 天,你的密码就要过期了』
像上面的例子,再密码到期之前的7天内,系统会向用户发送警告密码过期后的账号宽限天数
密码的有效日期为:『密码最新修改日期(第 3 字段)』+『密码需要重新变更天数(第 5 字段)』,过了该日期后,用户依旧没有更新密码,
那么账号就算过期了(不是失效),但这时账户依然能够登入系统,并取得bash,只不过这时系统会强制要求你更新密码才能继续使用,这就是
『密码过期特性』
那么这个字段就表示密码过期几天后,如果用户还没有更新密码,那么账户密码就会『失效』,就再也无法登入了账户失效日期
这个字段跟第 3 个字段一样,是以1970/01/01以来的天数来算的。表示:过了这个日期,账户就『失效』,再也无法使用了了,不管密码有没有失效,都无法再使用这个账户保留字段
这个字段是保留的,看以后有没有需要用到它
/etc/group 文件
群组信息存放位置