Linux目录本身的大小-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Linux目录本身的大小

一般默认安装好linux以后,目录大小是4096。但是我看到有些含有许多文件的目录,显示大小很大,但肯定是4096的整数倍。
所以问题就是:Linux目录本身的大小是如何计算的?

展开
收起
a123456678 2016-06-24 17:28:55 1828 0
1 条回答
写回答
取消 提交回答
  • 对于 ext2/3/4 的文件系统,默认的 data block 大小是 4096 byte,当你需要新建文件或者目录的时候,最小的分配单位就是data block,也就是 4k 大小,比如一个文件内容是 4M,就要分配1000个 data block来存放这个文件的内容,而文件或者目录的属性、权限、data block编号是存在对应的inode中。

    当你新建一个目录的时候,会默认的分配一个block,就是你看到的4096 byte,目录中文件的文件名和inode信息要存放到这个block中。目录里面文件增长,要存储的元信息也会增多,一个block不够,会再申请block,但是最小的单位就是block,所以大小总会是4096的整数倍。

    当你新建了一个小文件,也会分配 4096 byte的大小,只不过显示的时候会显示文件的实际大小。所以如果你的系统里面有很多小文件的话,存储空间是存在浪费的。

    2019-07-17 19:47:12
    赞同 展开评论 打赏
问答排行榜
最热
最新
相关电子书
更多
Decian GNU/Linux安全合规之路
立即下载
从 Linux 系统内核层面来解决实际问题的实战经验
立即下载
冬季实战营第二期:Linux操作系统实战入门
立即下载