当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > 拨开云雾:Lastlog文件不断变大的原因

Unix/Linux
实用技巧:sys 请求:内核严重错误?没问题[ZT]
LINUX 的 HOSTID
出现这个信息:neighbour table overflow,什么原因?
如果用的是SCSI硬盘,在GRUB中显示root(hd0,0)对吗?
介绍一个下载LINUX、UNIX资料的网站,很不错
大家谁知道jdk那种.bin的安装文件是怎么做的?
如何新增一块硬盘
大侠帮我看看,怎么多了条route?
不用root密码也可以執行root的程序--Sudo
访问控制大师,使用pam来支持login的访问控制
Linux知识宝库:Kylix经典十大难题解决方法
小技巧:自制c语言编制cgi实现搜索
数据库管理员的难题,选择MySQL还是SQLServer
一托N的实现GRUB引导多个操作系统
网络技术之Linux网络的IPv6应用(1)
网络技术之Linux网络的IPv6应用(2)
网络技术之Linux网络的IPv6应用(3)
MySQL的远程连接出现错误提示分析
利用Perl列出系统环境变量清单范例
系统管理员必备常识之RAID磁盘阵列

Unix/Linux 中的 拨开云雾:Lastlog文件不断变大的原因


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 118 ::
收藏到网摘: n/a

Lastlog文件是记录所有用户最后登录的相关信息,该文件的算法是这样的:

记录用户登录信息大小= UID * 256byte

如64位系统上的nfsnobody用户,其UID是4294967294 或者 2^32 - 2,这也是系统上最后一个的UID。

所以通过上面的算法就能说明该文件怎样显示1.2TB大小:

4294967294 * 256 = 1099511627264 bytes从上面的算法也可以看到,256是每一UID在lostlog文件中所占用的空间大小。所以这种文件就是所谓的sparse(稀疏)文件:稀疏文件就是在文件中留有很多空余空间,留备将来插入数据使用。这些空余空间被ASCII码的NULL字符占据,并且这些空间相当大,这个文件就被称为稀疏文件,但是并不分配相应的磁盘块。也就是没有真正占用文件系统空间。所以你就不用担心了这个文件占用了1.2TB的空间了。你可以用du -h /var/log/lastlog来查他看到真正占用磁盘的空间。