venerdì 26 febbraio 2010

VirtualBox su Debian

Benissimo, dopo aver trattato il repository Debian backports ed aver parlato dei sistemi di virtualizzazione siamo ora pronti a procedere all'installazione del software necessario per poter creare una virtual farm.
In base alle precedenti informazioni, utilizzeremo la distribuzione Debian, con repository backports, da cui andremo a prendere Virtual Box OSE (è la versione realmente libera di VirtualBox, senza supporto all'USB e senza la gestione nativa tramite il protocollo remote desktop, entrambe tecnologie con problemi di brevetti); questo perchè la versione più recente di VirtualBox nei repository stable è la 1.6.6, troppo vecchia in assoluto... sicuramente meglio optare per la 3.x disponibile nei backports.
Prima di tutto partiamo configurando i repository:
  • vi /etc/apt/sources.list
ed andiamo ad aggiungere le seguenti linee:
  • # Backported packages for Debian Lenny
  • deb http://www.backports.org/debian lenny-backports main
Siccome backports di default è disabilitato, ed inizialmente senza chiavi, dobbiamo specificare le chiavi da installare specificando il repository nel seguente modo:

  • aptitude update aptitude -t lenny-backports install debian-backports-keyring
A questo punto, se non utilizziamo il kernel presente in backports (cosa molto probabile se l'abbiamo configurato solamente per VirtualBox), dobbiamo scaricare i kernel header di quello attualmente in funzione al fine di poter compilare i moduli di VirtualBox... la procedura quindi è la seguente:
  • aptitude update
  • aptitude install linux-headers-$(uname -r)
A questo punto siamo pronti ad installare VirtualBox:
  • aptitude -t lenny-backports install virtualbox-ose
Al termine dell'installazione, DKMS si occuperà della creazione dei moduli per il sistema e questi verranno caricati automaticamente ad ogni avvio del sistema se non diversamente specificato in /etc/default/virtualbox-ose (LOAD_VBOXDRV_MODULE impostato a 0).
Ora non rimane che aggiungere gli utenti che devono poter gestire le macchine virtuali al gruppo vboxusers con il seguente comando:
  • adduser yourusername vboxusers
Attenzione: l'utente che crea una macchina virtuale ne salva le informazioni all'interno della sua home, quindi a meno di modifiche sostanziali di configurazione, una singola macchina non è gestibile da qualunque utente del gruppo vboxuser.
A questo punto il vostro VirtualBox è pronto e potete cominciare ad allestire la virtual farm.


Un ultimo punto riguarda un errore con cui mi sono ritrovato a confrontarmi... l'errore era relativo a "/dev/vboxdrv" ed ai permessi assegnati; questo file deve avere i permessi impostati nella seguente maniera (ls -l /dev/vboxdrv):

  • crw-rw---- 1 root root 10, 58 2009-06-22 16:33 /dev/vboxdrv
I permessi di questo file vengono impostati dal file /etc/udev/rules.d/z60_virtualbox-ose.rules, quindi la mask specificata all'interno di questo deve essere 660.
Per verificare se il problema è stato risolto si deve riavviare udev e rimuovere/ricaricare il driver nel seguente modo (operazioni da eseguire da root):
  • invoke-rc.d udev reload
  • modprobe -r vboxdrv
  • modprobe vboxdrv
Nel mio caso tutto era corretto, ma le cose continuavano a non funzionare... il motivo era legato ad un altro file, /etc/udev/rules.d/z60_virtualbox-ose-sources.rules, che definiva altri permessi e mi riscriveva quelli corretti; il problema si risolve modificando anche quel file o rimuovendolo dato che esegue operazioni doppie.

N.B.: per Debian è disponibile il pacchetto "ufficiale" di Sun, senza le limitazioni delle USB e del remote desktop... per chi lo desiderasse può modificare i propri repository includendo quello della Sun ed aggiungendo le seguenti linee in /etc/apt/sources.list:
  • # VirtualBox official repository
  • deb http://download.virtualbox.org/virtualbox/debian lenny non-free
Il procedimento che dovrebbe seguire penso sia molto simile a quello già illustrato per la versione OSE, ma non avendo provato non voglio scrivere informazioni non corrette.

Per oggi è tutto, buon divertimento con le macchine virtuali che andrete a creare e nelle prossime puntate ce ne sarà una in cui tratterò l'avvio e la gestione delle macchine virtuali da linea di comando.
Ciao ed a presto.

Nessun commento:

Posta un commento