## page was renamed from Emulatori/Kvm/Installazione ## page was renamed from FabioMarconi/Prove7 ## last update 20/05/2011 #format wiki #language it <> <> <
> = Introduzione = In questa pagina verrà spiegato come installare '''KVM''', un programma di virtualizzazione del kernel Linux. = Preparativi = == Come stabilire se la CPU supporta la virtualizzazione dell' hardware == Per eseguire '''KVM''' è necessario che il processore supporti la virtualizzazione; Intel e AMD hanno sviluppato estensioni per i loro processori, rispettivamente '''INTEL-VT-x''' (nome in codice Vanderpool) e '''AMD-V''' (nome in codice Pacifica). Per sapere se il processore supporta la virtualizzazione digitare il seguente comando in una finestra di terminale:{{{ egrep -c '(vmx|svm)' /proc/cpuinfo }}} Se la risposta fornita è '''0''' significa che la CPU non supporta la virtualizzazione dell'hardware. Se la risposta fornita è '''1''' la virtualizzazione è supportata, ma è necessario verificare che nel BIOS sia abilitata l'opzione per la virtualizzazione. Se si utilizza un kernel XEN per visualizzare i flag vmx e svm utilizzare il comando: {{{ cat /sys/hypervisor/properties/capabilities }}} Oppure in alternativa: {{{ kvm-ok }}} Che restituira una risposta simile a: {{{ INFO: Your CPU supports KVM extensions INFO: /dev/kvm exists KVM acceleration can be used }}} Se invece il messaggio sarà: {{{ INFO: Your CPU does not support KVM extensions KVM acceleration can NOT be used }}} sarà comunque possibile eseguire macchine virtuali che però, senza estensioni KVM, risulteranno lente. == Se possibile usare un kernel a 64 bit == L'esecuzione di un kernel a 64 bit sul sistema ospite è raccomandata ma non indispensabile. Per offrire più di 2047 MB di ram alla macchina virtuale, si deve usare un [[http://wiki.ubuntu-it.org//Architettura64Bit/DomandeFrequenti|kernel a 64 bit]]. Installando un kernel a 32 bit si avrà la limitazione a 2 GB di RAM per macchina. Un sistema a 64 bit può ospitare sia virtualizzazioni a 64 bit che a 32 bit. Mentre un sistema a 32 bit può ospitare solo virtualizzazioni a 32 bit. * Per verificare che il processore sia a 64 bit digitare il seguente comando in una finestra di terminale:{{{ grep ' lm ' /proc/cpuinfo }}} dove «lm» sta per '''long Mode''', per cui la CPU è a 64 bit, se non viene fornita alcuna risposta significa che la CPU non è a 64 bit. * Per verificare che sia in esecuzione un kernel a 64 bit digitare il seguente comando in una finestra di terminale:{{{ uname -m }}} il risultato sarà simile ai seguenti: * '''x86_64''' indica che è in uso un kernel a 64-bit. * '''i386''', '''i486''', '''i586''' o '''i686''', indicano che è in uso un kernel a 32 bit. = Installazione = Per le seguenti impostazioni, si presume la predisposizione di '''KVM''' su un server, e quindi non ci sarà nessun server X sulla macchina. [[AmministrazioneSistema/InstallareProgrammi|Installare]] i seguenti pacchetti: '''Lucid (10.04) o successive''' {{{ $ sudo apt-get install qemu-kvm libvirt-bin ubuntu-vm-builder bridge-utils }}} '''Karmic (9.10) o precedenti''' {{{ $ sudo aptitude install kvm libvirt-bin ubuntu-vm-builder bridge-utils }}} Se si ha la necessità di visualizzare le istanze installare anche il pacchetto: [[apt://virt-viewer | virt-viewer]]. Descrizione dei pacchetti: * ''qemu-kvm o kvm'': è il backend. * ''libvirt-bin'': fornisce '''libvirtd''' necessario per amministrare le istanze di '''qemu''' e '''kvm''' usando '''libvirt'''. * ''ubuntu-vm-builder'': potentissimo strumento a riga di comando per la creazione di macchine virtuali. * ''bridge-utils'': fornisce un bridge tra una rete e la macchinea virtuale. === Ubuntu 10.04 === Il pacchetto '''kvm''' è stato sostituito da '''qemu-kvm'''. Il pacchetto '''kvm''' è stato etichettato come ''transitional'' di modo che ne sia ancora possibile l'installazione. == Aggiunta di utenti ai gruppi == '''Karmic (9.10) e successive''' Il pacchetto ''libvirtd-bin'' aggiungerà automaticamente il vostro nome utente al gruppo libvirtd, non è necessario fare parte del gruppo kvm. Dopo l'installazione '''sarà necessario riautenticarsi''' di modo che il vostro nome utente sia effettivamente aggiunto al gruppo libvirtd. I membri di questo gruppo possono eseguire macchine virtuali. È anche possibile lanciare 'newgrp kvm' da terminale, ma ciò sarà effettivo solo sul terminale in questione. '''Rilasci precedenti a Karmic (9.10)''' Verificare che il vostro nome utente sia aggiunto ai gruppi kvm e libvirtd con il comando: {{{ $ groups adm dialout cdrom floppy audio dip video plugdev fuse lpadmin admin sambashare kvm libvirtd }}} Per aggiungere il vostro nomeutente ai gruppi: {{{ $ sudo adduser `id -un` kvm Adding user '' to group 'kvm' ... $ sudo adduser `id -un` libvirtd Adding user '' to group 'libvirtd' ... }}} Dopo l'installazione '''sarà necessario riautenticarsi''' di modo che il vostro nome utente sia effettivamente aggiunto al gruppo libvirtd. I membri di questo gruppo possono eseguire macchine virtuali. == Verifica dell'installazione == Per verificare se l'installazione è avvenuta con successo: {{{ $ virsh -c qemu:///system list Id Name State ---------------------------------- $ }}} altrimenti la risposta sarà: {{{ $ virsh -c qemu:///system list libvir: Remote error : Permission denied error: failed to connect to the hypervisor $ }}} che può voler dire che non ci si è riautenticati oppure non si hanno i permessi di scrittura sul file ''/var/run/libvirt/libvirt-sock. '' I permessi devono essere simili a. {{{ $ sudo ls -la /var/run/libvirt/libvirt-sock srwxrwx--- 1 root libvirtd 0 2010-08-24 14:54 /var/run/libvirt/libvirt-sock }}} == Opzionale: installazione di virt-manager (interfaccia grafica) == Se si desidera utilizzare un interfaccia grafica per gestire le macchine virtuali: {{{ $ sudo apt-get install virt-manager }}} Il gestore della macchina virtuale sarà in Applicazioni - Strumenti di sistema, innanzitutto occorre creare una nuova connessione all'istanza locale QEMU dal menu ''File - Aggiungi connessione'' . Nella lista delle macchine virtuali apparirà Localhost (QEMU). = Ulteriori risorse = * [[https://help.ubuntu.com/community/KVM/Installation|Documento originale]] ---- CategoryVirtualizzazione CategoryDaRevisionare