tarを使用してアーカイブされたディレクトリにファイルを作成するとどうなりますか?

tarを使用してアーカイブされたディレクトリにファイルを作成するとどうなりますか?

アーカイブに圧縮したい大容量ディレクトリ(80GB)があります。そのディレクトリに新しいファイルが作成され、重量を測定するとどうなりますか?生成されたアーカイブに新しいファイルが含まれていますか?

私のオペレーティングシステム:Ubuntu 18.04.4。

tar --version:(GNU タール) 1.29

答え1

これを実行したところ、次tar (GNU tar) 1.32straceような動作が表示されます。

  1. tarディレクトリーから最初のファイルを読み取る前に、ディレクトリー内のファイルの完全なリストを読んでください。
  2. 他のディレクトリ(サブディレクトリまたは追加パラメータを含む)のファイルは、以前に処理されたディレクトリの内容がtarファイルに完全に書き込まれた後にのみ読み取ることができます。

したがって、あなたの質問に対する答えは、新しいファイルが作成されるパスに依存します。親処理がすでに開始されている場合はアーカイブの一部になり、そうでない場合はアーカイブの一部になります。

あなたの場合、スナップショットが役に立つかもしれません。または(可能でない場合)ディレクトリではなく、すべてのパスをfind読み込みますtartar

関連情報