我有一个大目录(80GB),我想将其压缩到存档中。当在该目录中创建新文件并进行去皮时,会发生什么情况?新文件会包含在创建的存档中吗?
我的操作系统:Ubuntu 18.04.4。
tar --version
:(GNU 焦油)1.29
答案1
我刚刚跑过tar (GNU tar) 1.32
,strace
它显示了这种行为:
tar
在从该目录中读取第一个文件之前,先读取该目录中的整个文件列表。- 仅当之前处理的目录内容已完全写入 tar 文件后,才能读取另一个目录(子目录或附加参数)中的文件。
因此,您问题的答案取决于创建新文件的路径。如果其父级的处理已经开始,则它不会成为存档的一部分,否则会成为存档的一部分。
也许快照对于您的情况很有用。或者(如果不可能)读取所有非目录路径并将find
它们提供给tar
.这两种方法都会阻止添加在tar
.