Tar

如何讓 tar 在存檔創建過程中即時硬連結相同的內容?

  • May 10, 2015

我怎樣才能tar(或任何其他在 Linux 上通常可用的程序,例如pax)在存檔創建期間即時硬連結重複的內容?

也就是說,我想避免預先進行硬連結,而是想tar照顧它。

那可能嗎?如何?

到目前為止,這對於 GNU tar 來說是不可能的,但事情是存在的:

請注意,硬連結和重複數據刪除沒有相同的語義,需要另一種 tar 節點類型來表示“重複數據”,以便存檔提取過程正確地重新創建重複的(從而獨立存在的)文件;這將創建與大多數標準工具(GNU tar、pax 等)不兼容的 tar 檔案,這將是一個大膽的舉措。

讓我堅持:如果您能夠用硬連結文件同化受騙者,那麼您將在歸檔提取時遇到問題:* 它們真的像 Git 儲存庫中的硬連結文件嗎?那麼它們應該真正重新創建為硬連結文件,否則恢復的 Git 儲存庫將不起作用?* 或者它們是否真的是相同的文件,如果它們被恢復為硬連結,恢復的存檔可能會有重大的數據洩漏(假設您在存檔時同化了相同的 /etc/passwd 文件,將它們恢復為具有多個硬連結的單個文件:一個一個VM中的修改在另一個VM中變得可見!)

引用自:https://unix.stackexchange.com/questions/195763