web-dev-qa-db-fra.com

convertir VMX en OVF avec OVFtool

J'essaye de convertir VMX au format OVF en utilisant OVFTool comme ci-dessous, mais cela donne une erreur:

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

S'il vous plaît laissez-moi savoir si vous avez une solution.

6
Aditi S

J'ai eu une situation similaire dans vmware fusion en essayant d'utiliser un fichier .vmx probablement créé sous Windows. Je pourrais démarrer la machine virtuelle, mais toute tentative d'exportation de la machine avec ovftool ou d'utilisation de vmware-vdiskmanager a été bombardée avec: 

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

le nom de disque était totalement valide, le chemin d'accès était valide, les autorisations étaient valides et le seul indice qui exécutait ovftool avec:

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

comme d'autres l'ont suggéré, j'ai jeté un coup d'œil dans le fichier .vmdk. là j'ai trouvé 3 autres indices:

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

donc d’abord, j’ai converti le monolithicSparse vmdk en "disque virtuel préalloué divisé en fichiers de 2 Go":

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

alors je pourrais éditer le "foo.vmdk" pour changer l'encodage, qui ressemble maintenant à:

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

et enfin, après avoir corrigé le fichier source.vmx:

scsi0:0.fileName = "foo.vmdk"

profit:

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

J'ai eu un problème similaire avec OVFTool qui tentait d'exporter au format OVF. 

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

D'abord, j'ai ouvert le fichier .VMX dans l'éditeur (c'est un fichier texte) et je me suis assuré que les paramètres tels que

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

mentionner les noms de fichiers appropriés. Ensuite, j'ai remarqué cette ligne:

.encoding = "windows-1251"

C'est la page de code cyrillique, je l'ai donc modifiée pour utiliser la page de code occidentale

.encoding = "windows-1252"

Ensuite, exécuter OVFTool a donné une erreur différente

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

Pour résoudre ce problème, j'ai dû ouvrir le fichier .VMDK dans l'éditeur HEX (car il s'agit généralement d'un gros fichier binaire), qui figure dans la chaîne

encoding = "windows-1251"

(c'est quelque part au début du fichier), et remplacé "1251" par "1252".

Et ça a fait l'affaire!

5
Vladimir Shutow

Essayez de courir comme décrit ci-dessous.

Outil C:\Program Files\VMware\VMware OVF> ovftool C:\Win-Test\Win-Test.vmx (emplacement de votre fichier vmx) C:\Win-Test\win-test.ovf (destination)

1
Vadim Sluzky

Dans mon cas, il fallait réparer le disque "abc.vmdk" avant de convertir "abc.vmx" en "abc.ovf".

Utilisez ceci pour Linux:

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

Recherchez ce lien https://kb.vmware.com/s/article/2019259 pour résoudre le problème sous Windows et Linux.

1
guilhermisaac

Peut-être que ovftool est incapable de reconnaître le chemin que vous donnez.

Essayez avec la commande suivante: 

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

Une fois que vous avez fourni l'adresse ESX, il répertorie les dossiers que vous avez créés dans votre boîte ESX. Ensuite, vous pouvez déclencher la commande ci-dessus mentionnée à nouveau avec un nom de dossier ajouté.

S'il n'y a pas de hiérarchie de dossiers dans votre boîte, il listera simplement les noms de vm.

Réessayez la même commande en ajoutant [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

J'ai eu exactement le même problème. Dans mon cas, j'ai ouvert le fichier VMX et laissé tomber les contrôleurs IDE et son du fichier et les ai sauvegardés. J'ai ensuite pu tout convertir en OVA en utilisant l'outil avec la syntaxe standard.

par exemple. J'ai abandonné:

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

et:

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

Cela m'a permis de convertir le fichier comme d'habitude.

0
Doug

Pour moi, ouvrir le fichier .vmx et supprimer la ligne suivante a fonctionné:

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