Questo tutorial ti insegnerà come rinominare la macchina virtuale guest KVM dalla riga di comando in Linux. Ho alcune macchine virtuali in esecuzione con diverse versioni di Linux nel mio server KVM . Per facilità di riferimento, nomino sempre ogni VM con la versione del sistema operativo o l'applicazione attualmente in esecuzione su quella VM. Ad esempio, se una macchina virtuale è in esecuzione con l'edizione minima CentOS 8, la chiamerò "centos8". Se il server Web Apache è installato su CentOS 8 VM, quindi il nome del guest KVM sarebbe "apache_centos8" e così via. Oggi vorrei testare Nginx su CentOS 8 VM, quindi l'ho rinominato in "nginx_centos8" come descritto di seguito.
Rinomina macchina virtuale guest KVM in Linux
Possiamo cambiare il nome di una VM su KVM usando virsh utilità della riga di comando in due modi:
- Utilizzo del comando "domrename",
- Modifica manuale del file di configurazione XML della VM.
Per prima cosa, vedremo come rinominare una VM KVM usando il comando "virsh domrename".
1. Rinomina la macchina virtuale KVM usando "virsh domrename"
Il "virsh domrename" comando viene utilizzato per rinominare un dominio. Questo comando cambia il nome di dominio corrente nel nuovo nome senza apportare modifiche ai file di configurazione.
L'uso tipico del comando "virsh domrename" è:
virsh domrename <old-name> <new-name>
Tieni presente che il dominio deve essere inattivo e senza snapshot o checkpoint.
Innanzitutto, assicurati che la macchina virtuale guest KVM sia disattivata.
$ virsh list --all
Risultato di esempio:
Id Name State ------------------------------- - centos8 shut off - centos8-uefi shut off
Come puoi vedere, ho due guest KVM ed entrambi sono spenti.
Se la VM è in esecuzione, disattivala semplicemente usando il comando:
$ virsh shutdown centos8
Ora, rinominerò la macchina guest "centos8" in "nginx_centos8" usando il comando "domrename" come di seguito:
$ virsh domrename centos8 nginx_centos8
Dopo aver rinominato correttamente, dovresti vedere un output come di seguito:
Domain successfully renamed
Ora verifica se il nome della VM è stato davvero modificato o meno:
$ virsh list --all
Risultato di esempio:
Id Name State -------------------------------- - centos8-uefi shut off - nginx_centos8 shut off
Puoi anche verificarlo da Virt-manager anche l'applicazione.
Apri Virt-manager e fai doppio clic sulla VM, quindi fai clic su "Mostra dettagli hardware virtuali" icona nella barra dei menu. Vedrai il nome della VM nella Panoramica sezione.
Questo è tutto. Abbiamo rinominato con successo una VM denominata "centos8" in ""nginx_centos8". È solo un comando one-liner ed è molto facile da ricordare.
Successivamente, vedremo il modo manuale che richiede alcune modifiche nel file di configurazione XML della VM.
2. Rinominare la macchina virtuale KVM modificandone il file XML
Assicurati che la VM che stai per rinominare sia disattivata.
$ virsh list --all
Se la VM è attualmente in esecuzione, disattivala semplicemente usando il comando:
$ virsh shutdown centos8
Ora esporta i dettagli di configurazione del vecchio dominio (VM) in un nuovo dominio usando il comando:
$ virsh dumpxml centos8 > nginx_centos8.xml
Il comando precedente copierà la vecchia configurazione in un nuovo file di configurazione denominato "nginx_centos8.xml" e lo salverà nella directory corrente.
Annulla la definizione del vecchio dominio, ovvero elimina la configurazione del vecchio dominio esistente:
$ virsh undefine centos8
Risultato di esempio:
Domain centos8 has been undefined
Modifica il nuovo file di configurazione utilizzando il tuo editor di testo preferito:
$ nano nginx_centos8.xml
Vai a
domain type='kvm'> <name>nginx_centos8</name> <uuid>270437c4-8dfb-40d1-a2d1-c497015c0f22</uuid> <metadata> [...]
Definisci la nuova macchina guest virtuale KVM con il nuovo file di configurazione XML:
$ virsh define nginx_centos8.xml
Risultato di esempio:
Domain nginx_centos8 defined from nginx_centos8.xml
Infine, avvia la nuova macchina guest con la nuova configurazione XML:
$ virsh start nginx_centos8
Risultato di esempio:
Domain nginx_centos8 started
Verifica se la nuova macchina virtuale KVM è in esecuzione:
$ virsh list --all
Risultato di esempio:
Id Name State -------------------------------- 2 nginx_centos8 running - centos8-uefi shut off
Puoi anche verificarlo dall'interfaccia grafica di Virt-manager come descritto nella sezione precedente.
Spero che aiuti.