7

特定の順序でファイルを tar する方法。最初は奇妙に聞こえるかもしれませんが、聞いてください。OVA ファイルは基本的に tar ファイルですが、特定の順序があります。ファイルの作成には一般に tar が使用されますが、OVA が VMware などの HyperVisors によって認識されるようにするには、OVA 内のファイルを特定の方法で順序付けする必要があります。.ovf ファイルは OVA の最初にある必要があり、他のファイルは .ovf 内にリストされている順序で表示される必要があります

説明に役立つ簡単なツリーを次に示します。

VM.ova--
       |
       |--VM.ovf
       |--VM.mf
       |--VM.vmdk
       |--VM.iso

それが正しい順番です。tar で ova を作成しようとすると機能しますが、順序が間違っています。これが私がやっている方法です。それは実際には非常に基本的なことです。

tar -cvf VM.ova *

OVA に追加する必要があるすべてのコンテンツを含むフォルダーに移動し、tar コマンドを実行するだけです。これらのファイルを正しく注文するのを手伝ってください。これを理解できない場合、VM はどの HyperVisor でも動作しません。ありがとうございました!

* アップデート *

現在、tar がデフォルトで実行する順序は、vmdk、iso、mf、ovf です。

4

1 に答える 1

11

*問題は、ファイルをリストするためにグロブを使用しているだけです。グロブは、それtarを見る前にすぐに展開するので、tar が実際に見ているのは次のとおりです。

tar -cvf VM.ova VM.iso VM.mf VM.ovf VM.vmdk

C通常の*状況では、グロブは照合ロケールで語彙的に展開されるためです。順序が重要な場合は、ファイルを手動でリストできます。

tar -cvf VM.ova VM.ovf VM.mf VM.vmdk VM.iso

またはブレース展開を使用して入力を節約します

tar -cvf VM.ova VM.{ovf,mf,vmdk,iso}

*LC_*変数をいじると、グロブが別の順序で展開される可能性がありますが、ここではいくつかの仮定を立てています。

于 2014-01-14T16:19:34.187 に答える