第六章 系统数据文件和信息

1. 引言(Introduction)

本文是关于书籍《UNIX环境高级编程》(第三版)第6章关于系统数据文件和信息部分的学习。主要内容是关于UNIX系统中各个系统文件的相关信息。

2. 口令文件(Password File)

UNIX系统的口令文件也被称为用户数据库,主要用来存储关于系统用户的信息。该文件在UNIX和Linux下都是’/etc/passwd’,这里面包含了所有用户的passwd结构。而passwd结构则含有许多字段:

  • 用户名;
  • 加密口令;
  • 数值用户ID;
  • 数值组ID;
  • 注释字段;
  • 初始工作目录;
  • 初始shell;
  • 用户访问类;
  • 下次口令的更改时间;
  • 账户有效期时间。

其中加密口令仅包含了一个占位符,其是经过单向加密算法处理过的用户口令副本,无法从加密口令猜测得到原来的口令。常常使用加密的算法有MD5或SHA-1。因为将其放在一个人人可读的文件中是不安全的,所以将加密口令字段存放在另一个文件中,这种文件被称为阴影口令文件。

3. 组文件(Group File)

UNIX系统中的组文件也被称为组数据库,包含了所有用户组的信息。其包含以下字段:

  • 组名;
  • 加密口令;
  • 数值组ID;
  • 指向各用户名;
  • 指针的数组。

4. 其它文件(Other Files)

目录名称 存放内容 /boot 开机所需文件—内核、开机菜单以及所需配置文件等 /dev 以文件形式存放任何设备与接口 /etc 配置文件 /home 用户主目录 /bin 单用户模式下能够使用的命令 /lib 开机时用到的函数库,以及/bin与/sbin下面的命令要调用的函数 /sbin 开机过程中需要的命令 /media 用于挂载设备文件的目录 /opt 放置第三方的软件 /root 系统管理员的家目录 /srv 一些网络服务的数据文件目录 /tmp 任何人均可使用的“共享”临时目录 /proc 虚拟文件系统,例如系统内核、进程、外部设备及网络状态等 /usr/local 用户自行安装的软件 /usr/sbin Linux系统开机时不会使用到的软件/命令/脚本 /usr/share 帮助与说明文件,也可放置共享文件 /var 主要存放经常变化的文件,如日志 /lost+found 当文件系统发生错误时,将一些丢失的文件片段存放在这里 \begin{array}{c|c} \hline \text{目录名称} & \text{存放内容} \\ \hline \text{/boot} & \text{开机所需文件—内核、开机菜单以及所需配置文件等} \\ \hline \text{/dev} & \text{以文件形式存放任何设备与接口} \\ \hline \text{/etc} & \text{配置文件} \\ \hline \text{/home} & \text{用户主目录} \\ \hline \text{/bin} & \text{单用户模式下能够使用的命令} \\ \hline \text{/lib} & \text{开机时用到的函数库,以及/bin与/sbin下面的命令要调用的函数} \\ \hline \text{/sbin} & \text{开机过程中需要的命令} \\ \hline \text{/media} & \text{用于挂载设备文件的目录} \\ \hline \text{/opt} & \text{放置第三方的软件} \\ \hline \text{/root} & \text{系统管理员的家目录} \\ \hline \text{/srv} & \text{一些网络服务的数据文件目录} \\ \hline \text{/tmp} & \text{任何人均可使用的“共享”临时目录} \\ \hline \text{/proc} & \text{虚拟文件系统,例如系统内核、进程、外部设备及网络状态等} \\ \hline \text{/usr/local} & \text{用户自行安装的软件} \\ \hline \text{/usr/sbin} & \text{Linux系统开机时不会使用到的软件/命令/脚本} \\ \hline \text{/usr/share} & \text{帮助与说明文件,也可放置共享文件} \\ \hline \text{/var} & \text{主要存放经常变化的文件,如日志} \\ \hline \text{/lost+found} & \text{当文件系统发生错误时,将一些丢失的文件片段存放在这里} \\ \hline \end{array} 目录名称/boot/dev/etc/home/bin/lib/sbin/media/opt/root/srv/tmp/proc/usr/local/usr/sbin/usr/share/var/lost+found存放内容开机所需文件内核、开机菜单以及所需配置文件等以文件形式存放任何设备与接口配置文件用户主目录单用户模式下能够使用的命令开机时用到的函数库,以及/bin/sbin下面的命令要调用的函数开机过程中需要的命令用于挂载设备文件的目录放置第三方的软件系统管理员的家目录一些网络服务的数据文件目录任何人均可使用的共享临时目录虚拟文件系统,例如系统内核、进程、外部设备及网络状态等用户自行安装的软件Linux系统开机时不会使用到的软件/命令/脚本帮助与说明文件,也可放置共享文件主要存放经常变化的文件,如日志当文件系统发生错误时,将一些丢失的文件片段存放在这里

5. 总结(Conclusion)

每个程序运行都需要在一定的环境下运行,Unix或Linux作为一种系统程序,当然也需要一定的文件来存储配置信息。当然,为了系统的安全,有一些文件只能由超级用户访问,而别的用户只能访问特定的文件。存储用户权限的数据也是以文件的形式存在于系统中。

参考资料(Reference)

Advanced Programming in the UNIX Environment - Third Edition

第6章 存储结构与管理硬盘

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值