红联Linux门户
Linux帮助

Ext文件系统中,文件的“占用大小”和“使用大小”

发布时间:2016-02-18 15:33:23来源:linux网站作者:AllInCode

Ext文件系统中,采用"inode/block"结构来存储目录文件和一般文件。即目录文件有1个inode节点和1到多个block节点,block节点中存储“<子文件文件名,子文件inode节点序号>”记录;一般文件有1个inode节点和0到多个block节点,block节点中存储一般文件的具体内容。


由于采用block节点机制,关于文件的“大小”,就有两个概念:占用大小和使用大小。占用大小=文件对应的block节点个数*单个block节点大小。使用大小=block节点1使用大小(有些空间被空置)+block节点2使用大小(有些空间被空置)+...+block节点N使用大小(有些空间被空置)[假定文件对应N个block节点]。


因而,一般情况下,文件的使用大小<=文件的占用大小。


Linux中有些命令能够选择是统计文件的占用大小,还是使用大小。这些命令的实现有一个特点:对于一般文件来说,占用大小与使用大小这两个值一般情况下不相同;对于目录文件来说,占用大小与使用大小这两个值一般相同。


比如stat命令,ls命令,du命令实现都符合以上特点。


本文永久更新地址:http://www.linuxdiyf.com/linux/18180.html