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

Unix/Linux
Linux系统上把PHP编译进Apache静态内核
Linux操作系统下的多线程编程详细解析
高手进阶 Linux系统中内核定时器的应用
Linux内核初始化及启动之用户模式开始
Linux系统核心源程序文件组织结构介绍
Linux的内核软中断(softirq)执行分析
嵌入式 用户图形接口uC/GUI的简单分析
教你用APF和BFD来加强Linux的防火墙
铲除病毒攻击两大威胁 走近Linux防护
使用SSL 保护VNC应用程序
Linux与Unix二大操作系统编程的安全
为Linux服务器部署高效防毒软件
通过LoadRunner监控Linux的资源状况
Linux操作系统安全管理十大招数介绍
黑客高级技巧 Linux后门技术及实践
提高Linux操作系统安全性的十大招数
开发 Linux系统下的磁盘加密方法详解
用 coLinux 进行虚拟化
做好防范 Linux系统下的攻击软件全接触
Linux操作系统的口令安全问题详细解析

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


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