《系统编程手册》——登陆记账篇

风流意气都作罢 提交于 2019-11-27 15:59:39

登陆记账:linux系统中存在两个文件,utmp文件和wtmp文件用于记录用户登陆与登出系统有关的信息的数据文件;

utmp文件:位于/var/run/utmp,维护着当前登陆进系统的用户信息,who(1)之类的命令就会使用utmp文件信息,当用户登陆时,会在utmp文件中维护一种结构体utmpx,用于记录用户的user_id等信息,当该用户退出时,该记录会在utmp文件中删除;

wtmp文件:位于/var/log/wtmp,包含所有用户登陆和登出行为的留痕信息以供审计之用,last(1)命令用来显示和过了wtmp文件的内容。

utmp和wtmp文件检索信息api
(1)setutxent:将utmp文件的当前位置设置到文件的起始位置。
(2)endutxent:用完文件后调用此函数关闭文件;
(3)getutxent/getutxid/getutxline 从utmp文件中读取一个记录并返回一个指针utmpx结构的指针;

lastlog:记录每个用户最近一次登陆系统的时间。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!