web-dev-qa-db-ja.com

Solaris 11でtarアーカイブに保存できるファイルの最大数はいくつですか?

Tarアーカイブに多数のファイル(> 100,000)を保存する必要があり、エラーが発生しました:/ bin/sh:/ bin/tar:[Arg list too long]を実行できません。

UNIX Solaris tarまたはGNU tar)に制限はありますか?または、これはZFSの問題ですか?ZFSでSolaris 11.3を実行しています。

2
Matt Holliday

これはタールの制限ではありません。プログラムに渡すことができる引数の最大サイズを超えています。ファイル名のリストがファイルで利用できる場合は、GNU tar's -Tオプションを使用できます。

tar -c -f output.tar -T filelist.txt

Tarは、ファイル名として-を使用して、標準入力からファイルリストを受け取ることもできます。たとえば、mydirのすべてのファイルとサブディレクトリを含むアーカイブを作成する場合は、findの出力をtarに渡すことができます。

find mydir | tar -c -f output.tar -T -
5
Johan Myréen