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.
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
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!
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)
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.
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]
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.
Pour moi, ouvrir le fichier .vmx et supprimer la ligne suivante a fonctionné:
sata0:1.deviceType = "cdrom-image"