
--files-from <LISTFILE>
このオプションを使用して<LISTFILE>
先行スペースが含まれている場合、Tarは100%CPU負荷で中断されます。なぜそんなことですか?
再生するには:任意のコンテンツを含む2つのファイルと、次のものをfile1
含むファイルがありますfile2
。list
file1
file2
実行すると、tar czf test.tar.gz --files-from list
コマンドは完了せず、システムの負荷は約1になります。
list
勉強に変えたら
file1
file2
上記のtar
コマンドが正常に完了しました。
これは、Ubuntu 14.04.2 LTSサーバーのバージョンとUbuntu 14.10デスクトップの両方で発生します。どちらもGNU tar 1.27.1を使用します。
答え1
この動作を再現しました。バグのようです。
ここでtar v1.26にダウングレードして問題を解決しました。https://packages.debian.org/wheezy/amd64/tar/download(Debian / Ubuntuを使用している場合は、対応する.debバージョンをダウンロードしてdpkg -iを使用してインストールしてください。)
答え2
説明した操作を実行すると、tarでエラーが発生する可能性がありますが、得られた結果を再現することはできません。
これを無視し、ファイル名の前にスペースを含むリストを提供するのは正しくありません。 Unixでは空白は重要ではありません。 tarがファイル名が「file2」であると言うと、tarは「file2」というファイルを見つけて見つからないとエラーを発生させます。
file2の名前を変更する場合:
mv file2 ' file2'
その後、tarを実行すると終了です。
いずれにしても、tarはシステムで発生したようにクラッシュするのではなく、エラーが発生するはずです。