1
我有一組文件,其中有一些硬鏈接指向某些文件。 例如:Apache Commons壓縮無法在tar中添加硬鏈接
/tmp/test/file1
/tmp/test/file1_Link
file1
的是大小爲1 MB的文件。 file1_Link
是指向file1
當我使用Unix tar
命令焦油這些兩個文件的硬鏈接,生成的存檔的大小爲1 MB(mytar.tar
)
tar -cvf ../mytar.tar .
-rw-r--r-- 1 bsarraf 189060905 1.0M Feb 11 22:06 mytar.tar
-rw-r--r-- 1 bsarraf 189060905 2.0M Feb 11 22:10 files.tar
然而,當我使用apache commons壓縮並添加tar文件中的所有文件,我得到一個大小爲2 MB的tar(files.tar
)。
這意味着在tar中同一個文件被添加了兩次。
如何將tar中的硬鏈接文件添加爲其他文件的硬鏈接?
您沒有顯示您的代碼。我相信你必須檢測硬鏈接並自己處理鏈接條目創建(在tar文件中)。 'org.apache.commons.compress.archivers.tar.TarConstants'包含soft('LF_SYMLINK')和hard('LF_LINK')鏈接的類型常量。 –
感謝@JimGarrison的迴應。我能夠通過一些實驗來解決問題。 –