Opzioni per la Macchina Virtuale
Avviare ed installare sidux in una macchina virtuale KVM
KVM è la soluzione per la virtualizzazione completa per Linux su hardware x86 che comprenda le estensioni per la virtualizzazione (Intel VT o AMD-V).
Prerequisiti
Per accertarsi se l'hardware supporta KVM, assicurarsi che KVM sia abilitato nel BIOS (in alcuni casi su di un sistema Intel VT o AMD-V potrebbe non essere evidente dove è l'interruttore, perciò si assume che sia alla voce stato KVM). Per controllare in una console eseguire:
cat /proc/cpuinfo | egrep --color=always 'vmx|smx'
Se si vede smx o vmx alla voce cpu flag, il sistema supporta KVM. (Altrimenti tornare indietro al BIOS se si crede che sia supportato e controllare di nuovo, oppure cercare su internet dove abilitare KVM nei menù del BIOS).
Se il BIOS non supporta KVM fare riferimento a Virtualbox o QEMU
Per installare ed avviare KVM per prima cosa assicurarsi che i moduli di Virtualbox non sono caricati, (la migliore opzione è utilizzare --purge), quindi a seconda del chipset:
Per vmx:
apt-get install qemu-kvm modprobe kvm_intel
Per smx:
apt-get install qemu-kvm modprobe kvm_amd
Un'altra opzione è riavviare così che gli script di init di qemu-kvm si prenderanno cura di caricare i moduli.
Se si utilizza KVM per avviare una sidux-*.iso
Come utente:
$ kvm -net nic,model=virtio -net user -soundhw ac97 -m 512 -monitor stdio -cdrom <sidux.iso>
Installare una sidux-*.iso in una immagine KVM
Per prima cosa creare una immagine hard disk, (questa immagine sarà minima ed aumenterà solo se richiesto con rapporto di compressione qcow2):
$ qemu-img create -f qcow2 sidux-2010-*-.img 12G
Avviare sidux-*.iso con i seguenti parametri per abilitare KVM a riconoscere la presenza di una immagine hard disk QEMU disponibile:
$ kvm -net nic,model=virtio -net user -soundhw ac97 -m 512 -monitor stdio -cdrom </path/to/sidux.iso> -boot d </path/to/sidux-20xx-*-.img>
Dopo che si è avviato il cdrom cliccare l'icona del sidux installer per fare avviare il programma di installazione, (oppure utilizzare il menu), cliccare sulla scheda Partizionamento e si dovrebbe vedere sulla sinistra un rettangolo con un disco pronto per il partizionamento e la formattazione, molto probabilmente chiamato /dev/sda. Al di sotto di questo ci sono le opzioni per il partizionamento, scegliere gparted.

Nel menu di Gparted si può avere conferma che Gparted vede l'immagine con View>Device Information che dovrebbe mostrare come ATA QEMU Harddisk e molto probabilmente si chiama /dev/sda, (in questo esempio), dal momento che questa informazione sarà cruciale quando si torna al programma di installazione e si sceglie dove mettere Grub, dato che esso va in /dev/sda.
Quindi, nel menu Partizionamento scegliere Device>Create Partiton Table e creare la tabella delle partizioni.
A seguire formattare la tabella delle partizioni con ext4 e includere anche una partizione di swap di 2 Gb. La formattazione richiede un po' di tempo quindi si deve essere pazienti.
Al termine della formattazione cliccare OK per tornare al programma di installazione e procedere come se si stesse facendo una installazione standard, (di nuovo, portare pazienza). Nota: installare Grub in /dev/sda.
Adesso si ha una sidux-*-VM pronta per l'uso:
$ kvm -net nic,model=virtio -net user -soundhw ac97 -m 512 -monitor stdio -drive if=virtio,boot=on,file=<absolute/path/to/sidux-20xx-*.img>
Se il guest non ha il supporto per virtio, oppure se non si specifica un percorso assoluto, usare:
$ kvm -net nic,model=virtio -net user -soundhw ac97 -m 512 -monitor stdio -hda </path/to/sidux-20xx-*.img>
Vedere anche:
$ man kvm
Gestire le installazioni della macchina virtuale KVM
apt-get install aqemu
Quando si utilizza AQEMU assicurarsi di aver scelto la modalità KVM dal menu a tendina di "Emulator Type" nella scheda "General". (Documentazione per AQEMU praticamente non esiste perciò alcuni "tentativi ed errori" sono necessari per scoprire come utilizzare la GUI, tuttavia un buon inizio è quello di utilizzare il menu "VM" seguito dalla scheda "General".
Avviare ed installare sidux in una macchina virtuale VirtualBox
Passi da fare:
- 1. creare una immagine disco fisso per VirtualBox
- 2. avviare la iso con VirtualBox
- 3. installare l'immagine
Esigenze
RAM raccomandata: 1 giga : Idealmente 512 MB per il guest e 512 MB per l'host. (può essere avviato o no, ma non ci si deve aspettare grandi prestazioni).
Spazio sul disco fisso: mentre VirtualBox in sé è piuttosto "magro" (una tipica installazione necessiterà soltanto di ~30 MB), le macchine virtuali richiedono invece dei file grandi sul disco per emulare i propri dischi emulati. Così per installare MS Windows XP (TM), ad esempio, servirà un file che può crescere facilmente fino a parecchi GB. Per sidux sarà necessario allocare in VirtualBox una immagine di 5 giga oltre ad una partizione di swap.
Installazione:
apt-get update apt-get install virtualbox-ose-qt virtualbox-ose-source dmakms module-assistant
Quindi preparare il modulo:
m-a prepare m-a a-i virtualbox-ose-source
Poi attivare il Dynamic Module-Assistant Kernel Module Support per virtualbox, così la prossima volta che il kernel Linux viene aggiornato verrà preparato anche un modulo virtualbox per esso, senza intervento manuale. Per fare ciò, aggiungere virtualbox-ose-source al file di configurazione /etc/default/dmakms.
mcedit /etc/default/dmakms virtualbox-ose-source
Infine riavviare il computer.
Questa è una lettura essenziale sul funzionamento di dmakms
Installare sidux nella macchina virtuale
Usare il wizard di virtualbox per creare una nuova macchina virtuale per sidux. Poi seguire le istruzioni per una normale installazione di sidux.
VirtualBox ha un aiuto esaustivo in formato PDF che si può scaricare dal loro sito: www.virtualbox.com
Booting and installing sidux to a QEMU Virtual Machine
- 1. creare una immagine di disco fisso per QEMU
- 2. avviare la iso con QEMU
- 3. installare l'immagine
È disponibile uno strumento con interfaccia grafica QT come aiuto per configurare QEMU:
apt-get install qtemu
Creare l'immagine del disco fisso
Per avviare qemu probabilmente servirà una immagine di disco fisso. Questo è un file che immagazzina il contenuto del disco fisso emulato.
Usare il comando seguente per creare il file immagine denominato "sidux.qcow":
qemu-img create -f qcow sidux.qcow 3G
Il parametro "3G" specifica la dimensione del disco; in questo caso appunto 3 GB. Si può usare il suffisso M per megabyte (per esempio "256M"). Non ci si deve preoccupare troppo riguardo alla dimensione del disco - il formato qcow comprime l'immagine cosicché lo spazio vuoto non si aggiunge alla dimensione di questo file.
Installare il sistema operativo
Questa è la prima volta che serve l'avvio dell'emulatore. Tenere presente che quando si clicca dentro la finestra di qemu, il puntatore del mouse viene catturato. Per rilasciarlo premere:
Ctrl+Alt
Se serve un floppy avviabile, avviare Qemu con:
qemu -floppy sidux.iso -net nic -net user -m 512 -boot d sidux.qcow
Se il CD-ROM è avviabile, avviare Qemu con:
qemu -cdrom sidux.iso -net nic -net user -m 512 -boot d sidux.qcow
Ora si può installare sidux come su un disco fisso reale.
Avviare il sistema
Per avviare il sistema, digitare:
qemu [hd_image]
Una buona idea è utilizzare immagini overlay. In questo modo si possono creare le immagini del disco fisso una volta e poi dire a Qemu di salvare i cambiamenti in un file esterno. Ci si può sbarazzare del tutto dell'instabilità dato che è facile ritornare ad uno stato precedente del sistema.
Per creare una immagine overlay, digitare:
qemu-img create -b [[base''image]] -f qcow [[overlay''image]]
Sostituire l'immagine del disco fisso a base_image (nel nostro caso sidux.qcow), dopodiché si può avviare qemu con:
qemu [overlay_image]
L'immagine originale non verrà toccata. NOTARE: l'immagine di base non può essere rinominata o spostata in quanto l'overlay si ricorda il percorso completo dell'immagine di base.
Usare qualsiasi partizione reale come partizione primaria singola di una immagine del disco
Talvolta si potrebbe voler usare una delle partizioni del sistema dall'interno di qemu (per esempio se si vuole avviare sia la macchina reale che qemu usando una certa partizione come root). È possibile farlo usando il software RAID in modalità lineare (serve il driver del kernel "linear.ko") e un dispositivo loopback: il trucco è mettere dinamicamente un master boot record (MBR) all'inizio della partizione reale che si vuole inglobare in una immagine del disco grezza di qemu.
Supponiamo di avere una partizione pulita e non montata /dev/sdaN con qualche filesystem su di essa che si vuole sia parte di una immagine disco di qemu. Prima salvare in un piccolo file l'MBR:
dd if=/dev/zero of=/percorso/verso/mbr count=32
Verrà creato un file di 16 KB (32 * 512 byte). È importante non crearlo troppo piccolo (anche se a MBR serve solo un singolo blocco di 512 byte), poiché più piccolo sarà e più piccola dovrà essere la parte più grossa del dispositivo del software RAID, e ciò potrebbe influire sulle prestazioni. Poi impostare un dispositivo di loopback al file MBR:
losetup -f /percorso/verso/mbr
Supponiamo che il dispositivo risultante sia /dev/loop0, in quanto potremmo non avere ancora usato altri loopback. Il prossimo passo sarà quello di creare il "combinato" MBR e /dev/sdaN (immagine disco che usa il software RAID):
modprobe linear mdadm --build --verbose /dev/md0 --chunk=16 --level=linear --raid-devices=2 /dev/loop0 /dev/sdaN
Il risultante /dev/md0 sarà quello che useremo come immagine del disco grezza qemu (non dimenticare di impostare i permessi in modo che l'emulatore vi possa accedere). L'ultimo (e un po' scaltro) passo è impostare la configurazione del disco (geometria del disco e tabella della partizioni) in modo che il punto di inizio della partizione primaria nell'MBR si abbini a quello di /dev/sdaN dentro /dev/md0 (un offset di esattamente 16 * 512 = 16384 byte in questo esempio). Si può fare usando fdisk sulla macchina host, non nell'emulatore: la routine predefinita di rilevamento di dischi grezzi produce un "non kilobyte-roundable offsets" (es. 31.5 KB, come nella sezione precedente) che non può essere gestita dal codice del software RAID. Quindi, dall'host:
fdisk /dev/md0
Creare una partizione primaria singola corrispondente a /dev/sdaN, e giocare con il comando "s"ector dal menu "x"pert finché il primo cilindro (dove inizia la prima partizione) si abbina con la dimensione dell'MBR. Alla fine scrivere ("w"rite) il risultato nel file. Finito. Ora si ha una partizione che si può montare direttamente dall'host, come se fosse una parte di una immagine disco qemu:
qemu -hdc /dev/md0 [...]
Si può naturalmente impostare in sicurezza qualsiasi bootloader di questa immagine disco che usa qemu, purché la partizione originale /boot/sdaN contenga gli strumenti necessari.
Usare il modulo acceleratore di QEMU
Gli sviluppatori di qemu hanno creato un modulo opzionale per il kernel per accelerare qemu quasi fino ai livelli di prestazioni native del sistema. Questo dovrebbe essere caricato con l'opzione:
major=0
per automatizzare la creazione del necessario dispositivo /dev/kqemu. Il seguente comando:
echo "options kqemu major=0" >> /etc/modprobe.conf
imposterà modprobe.conf perché l'opzione venga aggiunta ad ogni caricamento del modulo.
qemu [...] -kernel-kqemu
Il comando qui sopra abilita la virtualizzazione completa migliorando notevolmente la velocità.
Per attivare qemu:
qemu -cdrom /tmp/pkg/sidux-debug.iso -net nic -net user -m 512

Ricerca Online Offline