長い名前(100文字以上)でtarを解凍するときのtarサポートはどのくらい一般的ですか?

長い名前(100文字以上)でtarを解凍するときのtarサポートはどのくらい一般的ですか?

今日、私はファイル名の1つが100文字を超えるため、WindowsでCommons-compressを使用してJavaを使用してファイルを圧縮できないという問題に直面しました。私は解決策を探していて、次のことを見つけました。

~によるとhttps://commons.apache.org/proper/commons-compress/tar.html

TAR形式にはさまざまな方言があり、TAR形式も異なる場合があります。 tarパッケージには、既存の多くの方言を読むための特別なケースが含まれており、デフォルトでは元の形式(しばしば「ustar」と呼ばれる)でアーカイブを生成しようとします。このネイティブ形式は100文字を超えるファイル名または8GiBを超えるファイル名をサポートしません。これらの制限を超えるエントリを書き込もうとすると、デフォルトでtarballは失敗します。 「ustar」はすべての既存のtar方言に共通であり、ほとんどの既存のツールで理解されています。

LONGFILE_POSIX: POSIX 1003.1 で定義した PAX 拡張ヘッダーを使用します。ほとんどの最新のtar実装では、これらのアーカイブを抽出できます。 Commonsは1.4を圧縮するので

ドキュメントには、「最も近代的なtarの実装」が記載されています。 PAXヘッダーで100文字を超えるファイル名をサポートしない一般的なtar実装は何ですか? PAX 拡張ヘッダーをサポートしていない tar 実装はまだ一般的に使用されていますか? Linux および Unix で一般的な tar 実装を使用して、Windows で Commons-Compress で生成された .tar.gz ファイルを開くことができる必要があります。

ベストアンサー1

次の内容を含むtarアーカイブを正常にパックして解凍しました。

touch $(for i in {1..222}; do echo -n a; done)

file test.tar 
test.tar: POSIX tar archive (GNU)

したがって、Linuxでは問題がないはずです。少なくとも、Fedora 32.7z/WinRARは同じ圧縮パッケージを開き、ファイルの圧縮を正常に解決できます。

Commons-Compressの拡張/フォーマットについてはわかりません。http://www.gnu.org/software/tar/manualそんなことはありません。

私がテストできるように、このようなアーカイブを共有できますか?

おすすめ記事