utmp文件,它记录当前登录进系统的各个用户;
包含下列结构的一个二进制记录写入这两个文件中:
struct utmp {
char ut_line[8]; /* tty line: "ttyh0", "ttyd0", "ttyp0", ... */
char ut_name[8]; /* login name */
long ut_time; /* seconds since Epoch */
};
登录时,login程序填写这样一个结构,然后将其写入到utmp文件中,同时也将其添写到wtmp
文件中。注销时, init进程将utmp文件中相应的记录擦除(每个字节都填以0 ),并将一个新记录
添写到wtmp文件中。读wtmp文件中的该注销记录,其ut_name字段清除为0。在系统再启动时,
以及更改系统时间和日期的前后,都在wtmp文件中添写特殊的记录项。who( 1 )程序读utmp文
件,并以可读格式打印其内容。后来的UNIX版本提供last( 1 )命令,它读wtmp文件并打印所选
择的记录。wtmp文件,它跟踪各个登录和注销事件。
last,who 用来查看内容。
man wtmp
man utmp