1、有时我们会需要系统数据文件和信息,例如口令文件(/etc/passwd)、组文件(/etc/group)等。

会用getpwnam()等函数获取口令文件信息。

对应口令文件去理解组文件。

2、阴影口令文件

用户的口令通常所用的加密算法是单向的,给出一个密码口令很难反推到普通文本口令。但可以猜测,将猜测的口令经过单向密码算法加密,然后再与用户的加密口令进行比较。为了使企图这样做的人难以获得原始资料(加密口令),我们提出了阴影口令文件的概念。阴影口令文件中存放了加密口令,而阴影口令文件不是一般用户可以读取的。

3、添加组ID

添加组ID可以使一个用户属于多个组,因为一个用户经常会参加多个项目,那他就需要同时属于多个组。

4、其它系统数据文件

/etc/services:记录网络服务器提供的服务的数据文件;

/etc/networks:记录网络信息的数据文件;

/etc/protocols:记录协议信息的数据文件。

一般情况下,每个数据文件都有三个函数:

get函数:读取一个记录,如果需要还要打开相应的数据文件。

set函数:打开相应的数据文件,并反绕该文件。

end函数:关闭相应的数据文件。

4、登录会计

utmp文件记录当前登录系统的用户;

wtmp文件跟踪各个登录和注销时间。

5、系统标示

uname函数返回主机和操作系统有关的信息。

另外还有gethostname函数,返回主机名。

6、时间和日期

内核返回的时间是日历时间,自1970年1月1日00::00:00以来的秒数。

捕获

localtime能把日历时间返回公历时间。

strftime函数可以得到自己想要的时间日期输出格式