<p>Heureusement, j’ai remarqué quelque chose à propos de toutes mes machines virtuelles que je n’avais pas préparées comme ces guides l’avaient décrit.</p>
<p>J’ai exécuté <code>VBoxManage showvminfo <uuid|name></code> et j’ai remarqué que la valeur <code>UUID</code> correspondait à la valeur <code>Hardware UUID</code>, ce qui m’a amené à supposer que si une définition de VM n’a pas d’attribut <code>uuid</code> dans le noeud <code>/VirtualBox/Machine/Hardware</code>, alors la VM utiliserait la valeur “Machine UUID” comme valeur “Hardware UUID”. Donc, pour ma VM modèle, elle avait bien un “Hardware UUID” que je pouvais utiliser ; je devais juste trouver comment le transférer aux clones que je ferais.</p>
<p>Pour garantir le transfert de l’UUID, vous pouvez adopter l’une des deux approches :</p>
<ul>
<li>
<p>Vous pouvez modifier directement le fichier de définition de la VM modèle. Le “Hardware UUID” ne sera transféré aux clones que si <code>/VirtualBox/Machine/Hardware</code> possède l’attribut <code>uuid</code>. Donc, copiez l’attribut <code>uuid</code> de <code>/VirtualBox/Machine</code> et ajoutez-le à l’attribut <code>uuid</code> de <code>/VirtualBox/Machine/Hardware</code>. Vous voudrez probablement réinitialiser la base de données des machines VirtualBox après cela, en fermant/tuant tout processus VirtualBox en cours d’exécution. (VBoxSVC persiste parfois sous Windows ; vous devrez peut-être le tuer depuis le Gestionnaire des tâches.)</p>
</li>
<li>
<p>Vous pouvez cloner votre modèle et créer une nouvelle VM modèle, puis utiliser <code>VBoxManage modifyvm <uuid|name> --hardwareuuid <uuid></code> pour définir le “Hardware UUID” du nouveau modèle vers le “Machine UUID”/“Hardware UUID” du modèle original. Je dis que vous devez cloner la VM pour créer une nouvelle VM modèle car si vous essayez de définir le “Hardware UUID” avec cette commande sur le modèle original, cela n’ajoutera pas l’attribut <code>uuid</code> au noeud <code>/VirtualBox/Machine/Hardware</code>, puisqu’il peut encore l’impliciter depuis le “Machine UUID”, et donc ne copiera pas cette valeur vers les clones créés.</p>
</li>
</ul>