Ce didacticiel vous apprendra à renommer la machine virtuelle invitée KVM à partir de la ligne de commande sous Linux. J'ai quelques machines virtuelles fonctionnant avec différentes versions de Linux sur mon serveur KVM . Par souci de facilité de référence, je nomme toujours chaque machine virtuelle avec la version du système d'exploitation ou l'application en cours d'exécution sur cette machine virtuelle. Par exemple, si une machine virtuelle fonctionne avec l'édition minimale de CentOS 8, je la nommerais "centos8". Si le serveur Web Apache est installé sur CentOS 8 VM, alors le nom de l'invité KVM serait "apache_centos8" et ainsi de suite. Aujourd'hui, j'aimerais tester Nginx sur CentOS 8 VM, donc renommé "nginx_centos8" comme décrit ci-dessous.
Renommer la machine virtuelle invitée KVM sous Linux
Nous pouvons changer le nom d'une VM sur KVM en utilisant virsh utilitaire de ligne de commande de deux manières :
- En utilisant la commande "domrename",
- Modifier manuellement le fichier de configuration XML de la VM.
Tout d'abord, nous verrons comment renommer une VM KVM à l'aide de la commande "virsh domrename".
1. Renommer la machine virtuelle KVM en utilisant "virsh domrename"
Le "virsh domrename" La commande est utilisée pour renommer un domaine. Cette commande remplace le nom de domaine actuel par le nouveau nom sans apporter de modifications aux fichiers de configuration.
L'utilisation typique de la commande "virsh domrename" est :
virsh domrename <old-name> <new-name>
Veuillez noter que le domaine doit être inactif et sans instantanés ni points de contrôle.
Tout d'abord, assurez-vous que la machine virtuelle invitée KVM est désactivée.
$ virsh list --all
Exemple de résultat :
Id Name State ------------------------------- - centos8 shut off - centos8-uefi shut off
Comme vous pouvez le voir, j'ai deux invités KVM et les deux sont éteints.
Si la VM est en cours d'exécution, désactivez-la simplement à l'aide de la commande :
$ virsh shutdown centos8
Maintenant, je vais renommer la machine invitée "centos8" en "nginx_centos8" en utilisant la commande "domrename" comme ci-dessous :
$ virsh domrename centos8 nginx_centos8
Une fois le changement de nom réussi, vous devriez voir une sortie comme ci-dessous :
Domain successfully renamed
Maintenant, vérifiez si le nom de la VM a vraiment été modifié ou non :
$ virsh list --all
Exemple de résultat :
Id Name State -------------------------------- - centos8-uefi shut off - nginx_centos8 shut off
Vous pouvez également le vérifier depuis Virt-manager application également.
Ouvrez Virt-manager et double-cliquez sur la VM puis cliquez sur "Afficher les détails du matériel virtuel" icône dans la barre de menus. Vous verrez le nom de la VM sous la Présentation rubrique.
C'est ça. Nous avons réussi à renommer une machine virtuelle nommée "centos8" en ""nginx_centos8". Il s'agit simplement d'une commande d'une seule ligne et très facile à retenir.
Ensuite, nous verrons la manière manuelle qui nécessite quelques modifications dans le fichier de configuration XML de la VM.
2. Renommer la machine virtuelle KVM en modifiant son fichier XML
Assurez-vous que la machine virtuelle que vous êtes sur le point de renommer est désactivée.
$ virsh list --all
Si la VM est en cours d'exécution, désactivez-la simplement à l'aide de la commande :
$ virsh shutdown centos8
Exportez maintenant les détails de configuration de l'ancien domaine (VM) vers un nouveau domaine à l'aide de la commande :
$ virsh dumpxml centos8 > nginx_centos8.xml
La commande ci-dessus copiera l'ancienne configuration dans un nouveau fichier de configuration nommé "nginx_centos8.xml" et l'enregistrera dans le répertoire actuel.
Annuler la définition de l'ancien domaine, c'est-à-dire supprimer l'ancienne configuration de domaine existante :
$ virsh undefine centos8
Exemple de résultat :
Domain centos8 has been undefined
Modifiez le nouveau fichier de configuration à l'aide de votre éditeur de texte préféré :
$ nano nginx_centos8.xml
Accédez au
domain type='kvm'> <name>nginx_centos8</name> <uuid>270437c4-8dfb-40d1-a2d1-c497015c0f22</uuid> <metadata> [...]
Définissez la nouvelle machine virtuelle invitée KVM avec le nouveau fichier de configuration XML :
$ virsh define nginx_centos8.xml
Exemple de résultat :
Domain nginx_centos8 defined from nginx_centos8.xml
Enfin, démarrez la nouvelle machine invitée avec la nouvelle configuration XML :
$ virsh start nginx_centos8
Exemple de résultat :
Domain nginx_centos8 started
Vérifiez si la nouvelle machine virtuelle KVM est en cours d'exécution :
$ virsh list --all
Exemple de résultat :
Id Name State -------------------------------- 2 nginx_centos8 running - centos8-uefi shut off
Vous pouvez également vérifier si à partir de l'interface graphique Virt-manager comme décrit dans la section précédente.
J'espère que ça aide.