
Vous souhaitez renommer l'ensemble de votre VM? Il existe des solutions simples et efficaces! Pré-requis : posséder un ESXi avec l’accès SSH activé.
Cas d'usage concret
Vous devez renommer une VM ESXi de bout en bout, fichiers inclus : voici comment modifier proprement le vmx, vmxf, vmdk et nvram.
Le but de cet article est de comprendre comment renommer l’ensemble d’une VM dans ESXi.
Une machine virtuelle utilise un chemin et des fichiers de configuration présents dans un datastore.
On note la présence de 4 fichiers qui permettent le lancement de la machine virtuelle :
- un fichier .vmx qui contient l’ensemble des données de configuration avec les chemins absolus etc…
- un fichier .vmxf qui est un fichier de configuration supplémentaire.
- un fichier .vmdk qui correspond au contenu du disque dur de la machine virtuelle.
- un fichier .nvram qui représente le bios de la machine virtuelle.
Sauvegarde de la machine à renommer
Avant toute manipulation avec la machine virtuelle, celle-ci doit être hors tension et sans snapshots.
Vous pouvez effectuer un clone du « .vmdk » afin d’assurer vos arrières avec l’outil « vmkfstools » :
vmkfstools -i vm_prod.vmdk vm_prod_save.vmdk -d thin
N’oubliez pas de déplacer le clone dans un dossier différent :
mv vm_prod_save.vmdk ../vm_prod_save/
Et de copier les fichiers annexes importants dans ce répertoire :
cp vm_prod.vmx vm_prod.vmxf vm_prod.nvram ../vm_prod_save/
Une fois les étapes ci-dessous effectuées, lancez-vous dans la manipulation de la VM.
Renommer le dossier de la machine virtuelle
Ma machine est stockée dans le datastore1 :
cd /vmfs/volumes/datastore1/
Renommer le dossier « vm_prod » en « prod » :
mv vm_prod/ prod
Se déplacer dans le dossier « prod » :
cd prod/
Lister l’ensemble des fichiers disponibles :
ls
Le résultat suivant apparaît :
vm_prod-flat.vmdk vm_prod.nvram vm_prod.vmdk vm_prod.vmsd vm_prod.vmx vm_prod.vmxf vmware.log
Editer le fichier « vm_prod.vmx » :
vi vm_prod.vmx
Appuyer sur la touche « i » (mode insère) pour modifier le fichier de cette façon :
nvram = "prod.nvram"
extendedConfigFile = "prod.vmxf"
scsi0:0.fileName = "prod.vmdk"
sched.swap.derivedName = "/vmfs/volumes/"VOTRE_NUMERO_DATASTORE_ICI"/prod/prod-e6f7a239.vswp"
Une fois les modifications vérifiées, appuyer la touche »echap » de votre clavier.
Pour sauvegarder les modifications faite «
Renommer les fichiers « vm_prod.vmx » et « vm_prod.vmxf » :
mv vm_prod.vmx prod.vmx
mv vm_prod.vmxf prod.vmxf
Vous pouvez aussi le faire pour « vm_prod.nvram » et le « .vswp », mais ce n’est pas obligatoire!
Lancement de la machine virtuelle après modification
Je vous conseille de supprimer l’ancienne machine : »vm_prod » de votre inventaire.

Avec vSphere client , rendez-vous dans votre datastore1 et ajoutez « prod.vmx » à l’inventaire ESXi.
Un message apparaît lors du lancement de la machine virtuelle, faite « I copied it » :

Vous avez officiellement renommer l’ensemble de votre machine virtuelle dans VMware ESXi.
Conclusion
Cet article a expliqué comment renommer proprement une machine virtuelle sous VMware ESXi, en travaillant sur ses fichiers .vmx, .vmxf, .vmdk et .nvram : sauvegarde préalable du disque et des fichiers annexes, renommage du dossier et des fichiers, puis mise à jour des chemins dans le fichier .vmx avant de réajouter la VM à l’inventaire. Cette méthode évite de devoir recréer la machine virtuelle de zéro et permet de conserver son disque et sa configuration d’origine. Il est toutefois indispensable d’éteindre la VM et de supprimer ses snapshots avant toute manipulation.
