Dan*_*nna 57 linux diskspace du
我有一个备份系统,它创建以Unix时间戳命名的目录,然后使用硬链接系统(rsync中的--link-dest)创建增量备份,因此通常第一个备份非常大,然后后续备份就像分数一样大.
这是我当前备份的输出:
root@athos:/media/awesomeness_drive# du -sh lantea_home/*
31G lantea_home/1384197192
17M lantea_home/1384205953
17M lantea_home/1384205979
17M lantea_home/1384206056
17M lantea_home/1384206195
17M lantea_home/1384207349
3.1G lantea_home/1384207678
14M lantea_home/1384208111
14M lantea_home/1384208128
16M lantea_home/1384232401
15G lantea_home/1384275601
43M lantea_home/1384318801
Run Code Online (Sandbox Code Playgroud)
一切似乎都是正确的,但是,例如最后一个目录,lantea_home/1384318801:
root@athos:/media/awesomeness_drive# du -sh lantea_home/1384318801/
28G lantea_home/1384318801/
Run Code Online (Sandbox Code Playgroud)
我一直都是这种行为,为什么第二个du命令会将目录视为28G?
注 - 输出与-P和-L标志保持一致.
Alf*_*lfe 165
硬链接是对同一文件的真实引用(由其inode表示)."原始"文件与指向它的硬链接之间没有区别.这两个文件具有相同的地位,双方都那么这个文件的引用.删除其中一个让另一个保持不变.只删除最后一个硬链接将最后删除该文件并释放磁盘空间.
因此,如果您只询问du它在一个目录中看到的内容,则不关心其他地方是否存在指向相同内容的硬链接.它只是计算所有文件的大小并总结它们.只有硬链接中所考虑的目录不计多次. du是那么聪明(并非所有程序都必须).
所以实际上,目录A的du大小可能是28G,目录B的大小可能是29G,但是它们一起只占用30G,如果你问duA和B的大小,你就会得到这个数字.

小智 13
并且通过开关"-l"du计算每个子目录中的硬链接,所以我可以看到,整个备份有多大,而不仅仅是增量增量.
| 归档时间: |
|
| 查看次数: |
23905 次 |
| 最近记录: |