Tar
當我在使用 tar 歸檔的目錄中創建文件時會發生什麼?
我有一個大目錄(80GB),我想壓縮到存檔中。當在該目錄中創建一個新文件時會發生什麼?新文件會包含在創建的存檔中嗎?
我的作業系統:Ubuntu 18.04.4。
tar --version
: (GNU 焦油) 1.29
我剛剛跑過
tar (GNU tar) 1.32
,strace
它顯示了這種行為:
tar
在從該目錄讀取第一個文件之前讀取目錄中的整個文件列表。- 來自另一個目錄(子目錄或附加參數)的文件只有在之前處理的目錄內容已完全寫入 tar 文件後才能讀取。
因此,您的問題的答案取決於創建新文件的路徑。如果其父級的處理已經開始,則它不會成為存檔的一部分,否則會。
也許快照在您的情況下很有用。或者(如果不可能的話)讀取所有非目錄路徑
find
並將它們提供給tar
. 這兩種方法都會阻止添加在tar
.