Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati

Versione 8 del 28/03/2010 20.52.34

Nascondi questo messaggio

Indice(depth=2) Informazioni(forum="http://forum.ubuntu-it.org/index.php/topic,371617.0.html")

KVM/DomandeFrequenti

Domande frequenti

Prevenzione dei conflitti tra KVM e Virtualbox

Durante l'installazione kvm carica alcuni moduli che impediscono l'esecuzione di altri software per la virtualizazione, come ad esempio virtualbox.

Ovviamente è possibile disabilitare KVM e scaricare i suoi moduli:

1. Assicurarsi di avere completamente spento tutte le macchine virtuali KVM (utilizzando ad esempio virt-manager).

2. Scaricare tutti i suoi moduli:

$ sudo invoke-rc.d kvm stop

In Karmic usare:

$ sudo invoke-rc.d qemu-kvm stop

Avvio di una ISO di Dapper, Edgy, Feisty e Gutsy

  • Qui il problema è rapppresentato dal hardware Intel, che limita le estensioni per la virtualizzazione, impedendo così una perfetta interazione con gfxboot. La parte difficile in questa procedura, è la modifica dell'immagine ISO, in modo da disabilitare gfxboot. Le conseguenze posso essere spiacevoli. Siete avvisati!

$ sed -e 's/GFXBOOT bootlogo/#FXBOOT bootlogo/g' < ubuntu-7.10-server-amd64.iso > ubuntu-7.10-server-amd64-nogfxboot.iso

/!\ Non modificare il comando di cui sopra! La lunghezza della stringa non può cambiare, in caso contrario si avrà lo svuotamento del filesystem sul CD.

Un metodo più sicuro è quello di utilizzare gfxboot-disable scaricabile da [http://hg.codemonkey.ws/gfxboot-disable] e quindi eseguire:

$ gfxboot-disable ubuntu-7.10-server-amd64.iso

Avvio di una VM in modalità singola

Una VM ha un BIOS completo e può anche eseguire GRUB. La nota dolente sta nel fatto che sparisce dopo alcuni secondi, la maggior parte delle volte non si avrà nemmeno il tempo di eseguire una connessione usando virt-viewer. La soluzione è: spegnere la VM, eseguire virt-viewer con l'argomento --wait ( in questo modo virt-viewer attenderà l'avvio di KVM e popperà immediatamente dopo) quindi avviare la VM; così si avranno circa due secondi per garantire l'accesso al bios o a grub.

Se si sta eseguendo una VM creata con ubuntu-vm-builder, è probabile incontrare un piccolo bug che impedirà l'autenticazione. In questo caso, nel menù di grub selezionare la linea per il ripristino (recovery) e premere e; selezionare la linea che inizia con kernel e premere ancora e. Alla fine della linea aggiungere init=/bin/sh. Confermare con invio e premere b per avviare il kernel con queste impostazioni.

Conversione di macchine VMWare a virt-manager

Per gestire la macchina VMWare da virt-manager, il file .vmx deve essere convertito nel file .xmldi libvirt. vmware2libvirt è stata creata per facilitare questo compito. È stata inserita nel pacchetto 'virt-goodies' installabile dai repositories. Una volta installato digitare:

$ vmware2libvirt -f ./file.vmx > file.xml
$ virsh -c qemu:///system define file.xml

Il primo comando converte il 'file.vmx' di VMWare in un 'file.xml' compatibile con libvirt. Vedere  man vmware2libvirt  per maggiori dettagli. Il secondo comando importa il file.xml in libvirt. Il file .xml importato viene memorizzato in /etc/libvirt/qemu.

Minacce

Sebbene vmware2libvirt funzioni bene su macchine virtuali semplici, sussistono limitazioni dovute sia al fatto che i file .wmx non contengono tutte le informazioni necessarie, sia al fatto che vmware2libvirt non analizza a fondo tutte quelle che trova. Alcuni errori possono essere:

  1. Sebbene vmware2libvirt rilevi un ospite a 64-bit,verificare che la corretta architettura sia stata riportata nel suo file .xml:
  • <os>
     <type arch='x86_64' machine='pc'>hvm</type>
     ...
    </os>
    1. vmware2libvirt rileva ed usa solamente la prima interfaccia ethernet interface trovata. ulteriori interfaccie devono essere aggiunte tramite virt-manager.
    2. Attualmente utilizza il primo disco scsi se trovato, altrimenti il primo disco ide. ulteriori dischi possono essere aggiunti tramite virt-manager.
    3. La macchina virtuale convertita è impostata all'uso di 1 sola CPU. Per modificare:

      <vcpu>2</vcpu>
    4. vmware2libvirt non converte tutto ciò che è specifico di VMWare all'interno dell'ospite.

Uso e conversione di file su disco virtuale VMWare

KVM riesce ad usare direttamente i file .vmdk di VMWare presenti su disco, sempreche il disco sia interamente contunuto in un singolo file .vmdk.

Ma siccome VMWare permette anche di suddividere il disco in parti più piccole, solitamente 2GB, in questo caso KVM non potrà usare i file .vmdk. È necessario quindi convertirli in un unico file su disco virtuale, utilizzando vmware-vdiskmanager, incluso in VMWare Server (distribuito gratuitamente).

$ vmware-vdiskmanager -r <Nome del file .vmdk suddiviso> -t 0 <Nome del nuovo file vmdk riunificato>

Modificare il file .xml della macchina virtuale in /etc/libvirt/qemu:

 ...
 <disk type='file' device='disk'>
      <source file='/var/lib/libvirt/images/diskname.vmdk'/>
      <target dev='hda' bus='ide'/>
 </disk>
 ...

quindi ridefinirla:

$ virsh -c qemu:///system define Nome dellamacchina.xml

IMPORTANTE: Ricordare che fino a quando il file .vmx è convertito in .xml, i dischi saranno usati in questo modo. Si consiglia di fare dei backup, specialmente se si prevede un utilizzo successivo della macchina virtuale in VMWare.

In questa modalità KVM non può catturare schermate. Per fare ciò si deve convertire il file su disco virtuale nel formato di qemu qcow2, dato che il pacchetto qemu contiene l'utility qemu-img che consente la cattura delle schermate:

qemu-img convert nomedisco.vmdk -O qcow2 nomedisco.qcow2

Cambiare il file .xml della macchina e ridefinirla (vedi sopra).

Recupero degli strumenti di VMWare dopo la conversione

Convertendo da vmware a libvirt, assicurarsi di rimuovere vmware-tools, se installato (in caso contrario al riavvio sovrascriverà il file xorg.conf).

Conversione di macchine fisiche a virt-manager

Per convertire la macchina fisica Windows (XP) physical machine bisogna innanzitutto abilitare IDE nei registri. Avviare la macchina ed eseguire [http://www.proxmox.com/cms_proxmox/cms/upload/misc/mergeide.reg mergeide.reg]. Vedere [http://support.microsoft.com/kb/314082/en-us Microsoft KB Article 314082].

Utilizzo di VMWare Converter

VMWare Converter è uno strumento libero per migrare una macchina fisica a VMWare. Il primo passo consite nel convertire la macchina fisica in una immagine VMWare. Quindi seguire questa guida al punto "Convertire macchine VMWare a virt-manager" (vedi sopra).

Utilizzo di strumenti Linux

Vedere il libro tedesco su qemu [http://qemu-buch.de/de/index.php/QEMU-KVM-Buch/_Speichermedien/_Physical-to-Virtual physical to virtual]. C'è un link per la traduzione in inglese.

Utilizzo di ntp per la sincronizzazione dell'ora

I sistemi ospiti non possono usare ntp per sincronizzare l'orologio, assicurarsi di rimuovere o disabilitare ntpd

Driver utilizzabili da Xorg

Video

I sistemi ospitati Linux che usano Xorg possono usare i driver video 'cirrus'. Editare /etc/X11/xorg.conf per avere:

Section "Device"
        Identifier      "Configured Video Device"
        Driver          "cirrus"
EndSection

Assicurarsi che nella sezione screen compaia 'Configured Video Device' per il relativo dispositivo.

Mouse

I sistemi ospitati Linux che usano Xorg possono usare i driver 'vmmouse' (non disponibili per Ubuntu Dapper). Per usarli, digitare nel terminale dell'ospite:

aptitude install xserver-xorg-input-vmmouse

quindi editare /etc/X11/xorg.conf per avere (la linea Identifier non dovrebbe cambiare, e si potrebbero avere solamente le linee Identifier e Driver):

Section "InputDevice"
        Identifier      "Configured Mouse"
        Driver          "vmmouse"
EndSection

Impostazione della risoluzione dell'ospite in Xorg

Nei sistemi ospitati Linux che usano Xorg bisogna impostare la risoluzione per Xorg in /etc/X11/xorg.conf. Nel file Xorg.conf, cercare la sezione screen ed assicurarsi che ognuna delle linee Modes riporti una risoluzione ragionevole per il sistema in uso (ciò è dovuto al [https://bugs.launchpad.net/ubuntu/+source/libvirt/+bug/193456 bug #193456]. La risoluzione nei sistemi ospitati deve essere inferiore a quella del host. Esempio:

Section "Screen"
        ...
        SubSection "Display"
                Depth           16
                Modes           "800x600" "640x480"
        EndSubSection
        SubSection "Display"
                Depth           24
                Modes           "800x600" "640x480"
        EndSubSection
EndSection

Impostazioni raccomandate per specifici sistemi

Windows (<Vista)

Nelle macchine virtuali Windows (diversi da Vista) sostituire nel file .xml:

<features>
  <acpi/>
</features>

con:

<features/>

Windows Vista

Nelle macchine virtuali Windows Vista aggiungere nel file .xml:

<domain type='kvm'>
...
  <features>
    <acpi/>
  </features>
</domain>

Debian Sarge

Debian Sarge (oldstable) potrebbe scrivere /boot/grub/menu.lst in modo sbagliato, con le seguenti conseguenze al boot:

pivot_root: no such file or directory
/sbin/init: 432: cannot open dev/console: no such file
Kernel panic: Attempted to kill init!

È possibile risolvere dal menù di Grub, premere e per modificare root=/dev/hdb1 che diventa root=/dev/hda1. Dopo l'avvio, aggiornare il file /boot/grub/menu.lst per avere:

# kopt=root=/dev/hda1 ro

ed eseguire:

# update-grub

OpenBSD 4.1 (e altri?)

OpenBSD 4.1 (e probabilmente altri) durante l'uso del driver di rete rtl8139 è possibile avere scarse prestazioni della rete ed avere questo messaggio sulla console:

re0: watchdog timeout

Per risolvere questo problema usare un NIC diverso (e1000 sembra funzionare meglio)The fix is to use another NIC (e1000 appears to work well). Vedere 'Changing the Network Card Model' above.

OpenBSD 4.5 e successivi

Una modifica nel kernel di OpenBSD causa il blocco durante il boot al "setting tty flags". Seguire le istruzioni su http://scie.nti.st/2009/10/4/running-openbsd-4-5-in-kvm-on-ubuntu-linux-9-04

Ulteriori risorse

[https://help.ubuntu.com/community/KVM/FAQ Documento originale]


CategoryHomepage CategoryInTraduzione