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

本文深入解析Linux系统中utmp和wtmp文件的作用,utmp文件记录当前登录用户信息,而wtmp文件则保存所有登录登出历史,为系统审计提供依据。文章还介绍了与这两个文件交互的API,如setutxent、endutxent和getutxent等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

登陆记账: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:记录每个用户最近一次登陆系统的时间。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值