关于/var/log/lastlog中cpts/的含义及异常显示的求助
关于/var/log/lastlog中cpts/的含义及异常显示的求助
嘿,这个问题我碰到过!首先得提醒你——/var/log/lastlog不是普通的文本文件,它是二进制格式的,专门用来存储系统用户最近一次登录的信息,所以用cat直接打开肯定会出现乱码和看不懂的字符,这很正常~
你看到的▒▒▒cpts/4192.168.1.111其实是二进制数据被错误解析后的结果:
cpts大概率是pts(伪终端,远程登录常用的终端类型)的二进制表示被cat乱码显示出来的样子;- 后面的
192.168.1.111是登录的IP地址,这部分因为是ASCII字符,所以能正确显示; - 前面的
▒▒▒是其他二进制字段(比如用户名、登录时间的二进制数据)被解析成的不可见字符。
想要正确查看lastlog的内容,别用cat,直接用系统自带的lastlog命令就行,它会自动解析这个二进制文件,输出清晰的结构化信息,比如每个用户的用户名、终端、登录IP、最后登录时间这些。
如果想手动解析的话,也可以用utmpdump工具(如果系统有的话),运行utmpdump /var/log/lastlog,不过输出格式会偏原始一点,不如直接用lastlog命令直观。
总结一下,你的问题本质是用错了工具打开二进制文件,换成专门的命令就能正常查看啦!
备注:内容来源于stack exchange,提问作者Instream
相关产品推荐
相关产品推荐

