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

Unix/Linux
Linux 指令篇:文件传输--ftpshut
Linux 指令篇:文件传输--ftpwho
Linux 指令篇:文件传输--ncftp
Linux 指令篇:文件传输--tftp
Linux 指令篇:文件传输--uucico
Linux 指令篇:文件传输--uucp
Linux 指令篇:文件传输--uupick
Linux 指令篇:文件传输--uuto
Linux 指令篇:文档编辑--col
Linux 指令篇:文档编辑--colrm
Linux 指令篇:文档编辑--comm
Linux 指令篇:文档编辑--csplit
Linux 指令篇:文档编辑--ed
Linux 指令篇:文档编辑--egrep
Linux 指令篇:文档编辑--ex
Linux 指令篇:文档编辑--fgrep
Linux 指令篇:文档编辑--fmt
Linux 指令篇:文档编辑--fold
Linux 指令篇:文档编辑--grep
Linux 指令篇:文档编辑--ispell

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 63 ::
收藏到网摘: 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来查他看到真正占用磁盘的空间。