web-dev-qa-db-ja.com

OVFtoolを使用してVMXをOVFに変換する

以下のようにOVFToolを使用してVMXをOVF形式に変換しようとしていますが、エラーが発生します。

C:\Program Files\VMware\VMware OVF Tool>ovftool.exe
vi://vcenter.com:port/folder/myfolder/abc.vmx abc.ovf
Error: Failed to open file: https://vcenter.com:port/folder/myfolder/abc.vmx
Completed with errors

解決策がありましたらお知らせください。

8
Aditi S

おそらくWindows上で作成された.vmxを使用しようとするVMware Fusionで同様の状況がありました。 VMを起動することはできましたが、ovftoolを使用してマシンをエクスポートしたり、次のように爆撃されたvmware-vdiskmanagerを使用したりしようとしました。

Error: Failed to open disk: source.vmdk
Completed with errors

ディスク名は完全に有効であり、パスは有効であり、権限は有効であり、唯一の手掛かりはovftoolを次のように実行することでした。

ovftool --X:logToConsole --X:logLevel=verbose source.vmx dest.ova

Opening VMX source: source.vmx
verbose -[10C2513C0] Opening source
verbose -[10C2513C0] Failed to open disk: ./source.vmdk
verbose -[10C2513C0] Exception: Failed to open disk: source.vmdk. Reason: Disk encoding error
Error: Failed to open disk: source.vmdk

他の人が示唆したように、私は.vmdkをのぞきました。その中で私は他の3つの手がかりを見つけました:

encoding="windows-1252"
createType="monolithicSparse"
# Extent description
RW 16777216 SPARSE "source.vmdk"

そのため、最初にmonolithicSparse vmdkを「2GBファイルに分割された事前割り当て仮想ディスク」に変換しました。

vmware-vdiskmanager -r source.vmdk -t3 foo.vmdk

次に、「foo.vmdk」を編集してエンコーディングを変更します。これは次のようになります。

encoding="utf-8"
createType="twoGbMaxExtentFlat"
# Extent description
RW 8323072 FLAT "foo-f001.vmdk" 0
RW 8323072 FLAT "foo-f002.vmdk" 0
RW 131072 FLAT "foo-f003.vmdk" 0

そして最後に、source.vmxを修正した後:

scsi0:0.fileName = "foo.vmdk"

利益:

ovftool source.vmx dest.ova
...
Opening VMX source: source.vmx
Opening OVA target: dest.ova
Writing OVA package: dest.ova
Transfer Completed
Completed successfully
5
Ryan Breed

OVFToolでOVF形式にエクスポートしようとすると、同様の問題が発生しました。

Export failed: Failed to open file: C:\Virtual\test\test.vmx.

まず、エディターで.VMXファイル(テキストファイル)を開き、次のような設定を確認しました。

scsi0:0.fileName = "test.vmdk"
nvram = "test.nvram"
extendedConfigFile = "test.vmxf"

適切なファイル名を記載します。それから私はこの行に気づきました:

.encoding = "windows-1251"

これはキリル文字のコードページなので、ウエスタンコードページを使用するように変更しました

.encoding = "windows-1252"

次に、OVFToolを実行すると別のエラーが発生しました

Export failed: Failed to open disk: test.vmdk.

これを修正するには、.VMDKファイルをHEXエディターで開く必要がありました(通常、これは大きなバイナリファイルであるため)。

encoding = "windows-1251"

(ファイルの先頭のどこかにあります)、「1251」を「1252」に置き換えました。

そしてそれはトリックをしました!

5
Vladimir Shutow

私の場合、「abc.vmx」を「abc.ovf」に変換する前にディスク「abc.vmdk」を修復する必要がありました。

これをLinuxに使用します。

$/usr/bin/vmware-vdiskmanager -R /home/user/VMware/abc.vmdk

このリンクを見てください https://kb.vmware.com/s/article/2019259 WindowsおよびLinuxで解決された問題

2
guilhermisaac

以下の説明に従って実行してみてください。

C:\ Program Files\VMware\VMware OVF Tool> ovftool C:\ Win-Test\Win-Test.vmx(vmxファイルの場所)C:\ Win-Test\win-test.ovf(宛先)

1
Vadim Sluzky

多分ovftoolはあなたが与えているパスを認識できません。

次のコマンドで試してください:

ovftool --eula@=[path to eula] --X:logToConsole --targetType=OVA --compress=9 vi://[username]:[ESX address] [target address]

ESXアドレスを指定すると、ESXボックスに作成したフォルダが一覧表示されます。次に、フォルダー名を追加して、上記のコマンドを再度トリガーできます。

ボックスにフォルダ階層が存在しない場合は、VM名が一覧表示されます。

[foldername]/[vmname no vmx file name required]を追加して同じコマンドを再試行します

ovftool --eula@=[path to eula] --X:logToConsole --targetType=OVA --compress=9 vi://[username]:[ESX address]/[foldername if exist]/[vmname no vmx file name required] [target address]
1
KP Rahul

私はこれと全く同じ問題を抱えていました。私の場合、VMXファイルを開き、IDEとサウンドコントローラーをファイルから削除して保存しました。その後、標準の構文のツールを使用してすべてをOVAに変換できました。

例えば落とした:

ide1:0.present = "TRUE"
ide1:0.deviceType = "cdrom-image"

そして:

sound.present = "TRUE"
sound.fileName = "-1"
sound.autodetect = "TRUE"

これにより、通常のようにファイルを変換できました。

0
Doug

私にとって.vmxを開いて次の行を削除するとうまくいきました:

sata0:1.deviceType = "cdrom-image"
0
Michail Gede

私の場合、これはうまくいきます:

ide1:0.present = "TRUE"

ide1:0.deviceType = "cdrom-image"

私はtruefalseに変更し、cdrom-imageは存在しません。この変更により、フォーマット変換が可能になります。

0
Jordan