Linux 下目录的大小和里面文件大小的总和为何不一样?

2017-07-20 10:22:32 +08:00
 guyeuro

如下

du -h --max-depth=1

0 ./conf 8.0K ./config 20M ./lib 2.7T ./logs 4.0K ./update 3.4T .

目录大小是 3.4T 但是子目录之和才 2.8T 不到

4682 次点击
所在节点    问与答
16 条回复
qianguozheng
2017-07-20 10:36:04 +08:00
目录也占用空间的
guyeuro
2017-07-20 10:39:08 +08:00
@qianguozheng 目录占用 7T 空间?
BOYPT
2017-07-20 10:40:23 +08:00
已经删除的文件,但是仍然被程序打开句柄的文件,会继续占用空间
guyeuro
2017-07-20 10:41:39 +08:00
重发一下

0 ./conf

8.0K ./config

20M ./lib

2.7T ./logs

4.0K ./update

3.4T .

目录大小是 3.4T 但是子目录之和才 2.8T 不到
guyeuro
2017-07-20 10:42:09 +08:00
@BOYPT 如何释放这些空间?
BOYPT
2017-07-20 10:44:18 +08:00
@guyeuro 重启一下
lcdtyph
2017-07-20 10:51:28 +08:00
隐藏文件夹?
haisayu
2017-07-20 11:00:30 +08:00
我想问下,有隐藏文件吗?!
guyeuro
2017-07-20 11:11:03 +08:00
@haisayu du -h --max-depth=1 * 不能显示隐藏文件(夹)?
hcymk2
2017-07-20 11:16:14 +08:00
用 ncdu 试下
msg7086
2017-07-20 11:33:45 +08:00
可能性很多。
比如目录本身可以占用空间。目录的占用空间是跟着目录里最大文件数走的。
你在一个目录里放几十万个文件再删掉,然后看看目录是不是变大了。
还有可能性是隐藏文件或者隐藏文件夹,所以可以看看有没有 .* 在目录里。
af463419014
2017-07-20 11:58:23 +08:00
用 du -ah --max-depth=1 试试
pq
2017-07-20 12:03:38 +08:00
du 是真实的,ls 出来的文件大小,可能是文件创建时申明的预期大小,貌似虚拟硬盘文件就是这样的。。。
sciooga
2017-07-20 12:41:30 +08:00
你这里最大的是 log 文件夹,可能文件空洞

以前也有过讨论 /t/327192
jy01264313
2017-07-20 12:44:57 +08:00
不知道楼主在纠结什么?
haisayu
2017-07-20 13:08:19 +08:00
@guyeuro 不能,12L 的 cmd,你试试

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/376598

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX