9

以下のように 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

何か解決策があれば教えてください。

4

8 に答える 8

8

おそらく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
于 2017-01-11T02:30:07.030 に答える
7

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」に置き換えました。

そして、それはうまくいきました!

于 2016-03-18T20:45:06.713 に答える
1

たぶん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]
于 2015-09-20T17:41:00.327 に答える
0

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

たとえば、私は落としました:

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

と:

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

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

于 2018-02-16T02:06:08.393 に答える