LINUX « E-Pillole
VirtualBox per Debian e Ubuntu
Ieri, è stata rilasciata una nuova versione di VirtualBox (1.4.0), uno dei migliori software di virtualizzazione disponibili e sicuramente uno dei più semplici da utilizzare.
EDIT: 03/09/2007 aggiornamento alla versione 1.5.0 (Changelog)
Personalmente, dopo aver avuto il "privilegio" di installare in un ambiente di produzione un sistema di virtualizzazione basato su XEN, considero VirtualBox adatto principalmente ad un'utilizzo "amatoriale" e "saltuario". Con questo non voglio assolutamente dire che VirtualBox non sia un prodotto valido, anzi, ma i gusti sono gusti e XEN è XEN :)
Detto in parole povere, per un uso sporadico in ambiente Desktop, VirtualBox è perfetto: semplice da installare e semp//lice da configurare. Sicuramente esistono altre alternative valide come ad esempio VMware, ma in questo momento ci interessa VirtualBox :)
Vediamo quindi come installarlo su Debian e Ubuntu...
Come detto in precedenza, l'installazione è semplicissima. VirtualBox è infatti già pacchettizzato sia per Debian (Etch - Sarge) che per Ubuntu (Dapper - Edgy - Feisty - Gutsy), ed è possibile installarlo direttamente via apt aggiungendo la repository ufficiale adatta alla vostra distribuzione.
(*) N.B. Per Sid non è presente alcuna repository, e sarà quindi necessario utilizzare l'installer o installare il tutto da sorgente.
Installazione VirtualBox tramite apt
Editando il file /etc/apt/sources.list con il vostro editor di testo preferito aggiungete una delle seguenti repository:
- se utilizzate Debian Etch:
deb http://www.virtualbox.org/debian etch non-free
- se utilizzate ancora Debian Sarge:
deb http://www.virtualbox.org/debian sarge non-free
- se utilizzate Ubuntu Gutsy:
deb http://www.virtualbox.org/debian gutsy non-free
- se utilizzate ancora Ubuntu Feisty:
deb http://www.virtualbox.org/debian feisty non-free
- se utilizzate ancora Ubuntu Edgy:
deb http://www.virtualbox.org/debian edgy non-free
- se utilizzate ancora Ubuntu Dapper:
deb http://www.virtualbox.org/debian dapper non-free
Salvate il file, e importate la chiave gpg per l'autenticazione digitando:
wget -O - http://www.virtualbox.org/debian/innotek.asc | sudo apt-key add -
Se invece state utilizzate root importatela digitando:
wget -O - http://www.virtualbox.org/debian/innotek.asc | apt-key add -
Ora aggiornate le vostre repository:
sudo apt-get update
ed installate VirtualBox digitando molto semplicemente:
sudo apt-get install virtualbox
Installando VirtualBox da apt, verrà caricato automaticamente il modulo per il kernel (vboxdrv) e verrà creato il gruppo vboxusers al quale dovrete aggiungere il vostro utente digitando:
sudo adduser USERNAME vboxusers
A questo punto, per rendere effettiva la modifica apportata al vostro utente, sarà necessario effettuare il log out dalla vostra sessione e rieffettuare il log in. Si può anche evitare ma al momento non ricordo come :)
Rieffettuato il log in, VirtualBox è ora pronto ad essere utilizzato per virtualizzare qualunque sistema operativo, e potrete trovarlo in: System Tools --->> innotek VirtualBox
A questo link potete trovare un ottima guida con diversi screenshot per la creazione e la configurazione delle vostre "macchine virtuali".
In generale, se non vi interessa che il vostro "OS guest virtuale" appertenga alla stessa sottorete dell'host su cui gira VirtualBox, potete tranquillamente fermarvi qui e cominciare ad utilizzarlo senza problemi. Al contrario proseguite con la guida (**)
(*) Installazione VirtualBox su Sid tramite l'installer
Per installare VirtualBox su Debian Sid potete servirvi sia dell'installer reperibile da questa pagina alla voce All distributions, sia del sorgente.
P.S. per l'installazione sono necessari tutti i vari strumenti per la compilazione (build-essential, linux-headers ecc...) più alcune librerie particolari. (fate riferimento a questa pagina per tutto il necessario e per l'installazione da sorgente)
Ipotizzando che abbiate installato tutto il necessario, e che abbiate scelto di utilizzare l'installer, sostituendo la versione corretta per la vostra architettura, digitate:
sudo sh VirtualBox_1.4.0_Linux_x86.run install
Se non ci sono errori, l'installazione è andata a buon fine, ma prima di procedere, è necessario caricare il modulo del kernel (vboxdrv) digitando:
sudo modprobe vboxdrv
e aggiungere il vostro utente al gruppo vboxusers:
sudo adduser USERNAME vboxusers
Come sempre, per rendere effettiva la modifica apportata al vostro utente, sarà necessario effettuare il log out dalla vostra sessione e rieffettuare il log in.
Rieffettuato il log in, VirtualBox è ora pronto ad essere utilizzato per virtualizzare qualunque sistema operativo, e potrete trovarlo in: System Tools --->> innotek VirtualBox
(**) Networking "Avanzato"
Come detto in precedenza, se volete che il vostro host e la vostra virtual machine appartengano alla stessa sottorete, di modo da poter comunicare, è necessario creare un'interfaccia di rete ed aggiungerla ad un bridge.
Per ottenere questo risultato, innanzitutto, dovete installare due pacchetti indispensabili digitando:
sudo apt-get install bridge-utils uml-utilities
Ora, create la nuova interfaccia di rete che chiameremo vbox0, in questo modo:
sudo tunctl -t vbox0 -u USERNAME
e settate correttamente i permessi digitando:
sudo chmod 666 /dev/net/tun
Create ora il bridge che chiameremo br0 digitando:
sudo brctl addbr br0
e ipotizzando che le vostra interfaccia di rete primaria sia eth0, aggiungete sia eth0 che vbox0 al bridge br0 digitando in successione questi comandi:
sudo brctl addif br0 eth0
sudo dhclient br0
sudo brctl addif br0 vbox0
sudo ifconfig vbox0 up
A questo punto, dovrebbe essere già tutto perfettamente funzionante, ma prima di lanciare VirtualBox, verificate digitando:
sudo ifconfig
e dovreste visualizzare tutte le interfacce di rete create (br0, eth0, vbox0).
Se così è, lanciate VirtualBox e nelle impostazioni, alla voce network, scegliete:
- Attached to --->> Host Interface
- Interface Name --->> vbox0
Avviate la vostra macchina virtuale e se tutto è configurato correttamente, il vostro host e la vostra macchina virtuale apparterranno alla stessa sottorete e potranno comunicare tranquillamente.
N.B. ripetete i passaggi precedenti per ogni interfaccia di rete virtuale che vorrete creare (vbox1, vbox2, ecc...).
N.B. con questo metodo "manuale" ogni volta che riavvierete il vostro PC dovrete ripetere i passaggi elencati in precedenza.
In alternativa, per rendere definitiva questa configurazione di rete potete mettere mano al file /etc/network/interfaces e modificarlo secondo le vostre necessità rendendolo simile ad uno di questi due.
- HOST IN DHCP:
#LOOPBACK INTERFACE
auto lo
iface lo inet loopback
#eth0 INTERFACE
auto eth0
iface eth0 inet dhcp
#vbox0 INTERFACE
auto vbox0
iface vbox0 inet manual
tunctl_user USERNAME
#br0 INTERFACE
auto br0
iface br0 inet manual
post-up chmod 666 /dev/net/tun
post-up dhclient br0
bridge-ports eth0 vbox0
bridge-ageing 7200
bridge-fd 0
- HOST CON IP FISSO:
#LOOPBACK INTERFACE
auto lo
iface lo inet loopback
#eth0 INTERFACE
auto eth0
iface eth0 inet manual
#vbox0 INTERFACE
auto vbox0
iface vbox0 inet manual
tunctl_user USERNAME
#br0 INTERFACE
auto br0
iface br0 inet static
address 192.168.10.100
netmask 255.255.255.0
broadcast 192.168.10.255
gateway 192.168.10.1
bridge-ports eth0 vbox0
bridge-ageing 7200
bridge-fd 0
Inoltre, in alternativa ai metodi sopra elencati, è anche possibile automatizzare il tutto all'avvio delle macchine virtuali utilizzando degli script ad hoc.
Per ulteriori chiarimenti visitate queste pagine:
- VirtualBox HOWTOs and tutorials
Nella speranza che sia tutto chiaro, buon divertimento e buona virtualizzazione...
Una precisazione: nelle righe:
#br0 INTERFACE
auto br0
iface br0 inet static
address 192.168.10.100
netmask 255.255.255.0
broadcast 192.168.10.255
gateway 192.168.10.1
bridge-ports eth0 vbox0
bridge-ageing 7200
bridge-fd 0
devo mettere gli indirizzi che veramente ha il mio pc nei settaggi della rete? Nel mio caso sarebbe address 192.168.1.9, gateway 192.168.1.1, ecc..?
E, per esempio, se faccio un xp virtuale, nel settaggio della rete su xp devo ripetere tutto il settaggio rete come l'ho su linux, cioe' con gli stessi indirizzi?
Dalle prove che ho fatto fino ad ora, solo dando da terminale i comandi suggeriti, senza modificare il file interfaces, almeno ho visto che riuscivo ad andare in internet dall'xp virtuale, ma non riesco a vedere i pc della rete a cui sono collegato.
grazie
mauro
>>devo mettere gli indirizzi che veramente ha il mio pc nei settaggi della rete?
sì certo!!
il PC "host", quello su cui è installato virtualbox, prende l'IP da dhcp o ha IP fisso ?
non ho mai virtualizzato win con virtualbox, ma credo non ci siano noie particolari...
incolla l'output di:
ifconfig (per linux) e ipconfig (per win)
ciaociao
probabilmente non ho capito la tua domanda :)
cmq, il kernel Debian per etch è la versione 2.6.18...
deduco che te lo sei compilato il 2.6.19 no??
i sorgenti del kernel v2.6 li trovi tutti qui -->> http://www.kernel.org/pub/linux/kernel/v2.6/
ciaociao
Compilato ma ogni tanto (anzi sempre) ho questo messaggio in shell:
atkbd.c: Spurious NAK on isa0060/serio0. Some program might be trying access har dware directly.
uhmm, ho dato un occhiata in giro su google e sulle varie mailing-list di debian e virtualbox.
ci sono diversi risultati riguardanti il tuo "problema"...ma non vedo nessuna soluzione :(
sembra cmq che non crei nessun malfunzionamento alle VM...o sbaglio??
http://www.virtualbox.org/discussion/1/782
ciaociao
Ora sto cercando di fare uno script per far partire la vm in screen :D
bene :)
per lo script ci sono diversi esempi utili sulla documentazione ufficiale se ti dovesse servire aiuto...
ciaociao
Ok allora, configurato tutto a livello di rete, ma dunno why il bridge non mi funziona, Package not found, bridge-utils installato ed il comando brctl in qualche modo rrestituisce il classico --help, deduco quindi che il mio kernel sta facendo ancora una volta la sua parte :D
Quindi c'è un altro modo per far apparire in rete il guest senza fare bridge...
...fosse un host winzoz
Ricordo che
Debian = host
WS2003 = gust
sicuro che non ti trovi il pacchetto bridge-utils ??
davvero strano...è incluso nella sezione main per tutte le release :(
ciaociao
ma dando
brctl addbr br0
Mi dice Package not found, credo sia per via della mancanza del modulo bridge del kernel.
Ora devo capire come compilarli magari singolarmente visto che ho finalmente i source
il ping verso il gateway router funzina da entrambi
il ping da guest a host funziona, non riesco a pingare il sistema guest dal sistema host....
grazie a tutti
grazie a tutti....
>>risolto... bastava installare le guest additions...
good...!! :)
purtroppo non ho mai virtualizzato win dentro virtualbox...
magari prima o poi lo farò :)
grazie per aver riportato la soluzione, potrebbe essere utile ad altri...!!
ciaociao
" VirtualBox kernel driver not installed. The vboxdrv kernel module was either not loaded or /dev/vboxdrv was not created for some reason. Re-setup the kernel module by executing '/etc/init.d/vboxdrv setup' as root.
VBox status code: -1908 (VERR_VM_DRIVER_NOT_INSTALLED).
Codice d'uscita:
0x80004005
Componente:
Console
Interfaccia:
IConsole {1dea5c4b-0753-4193-b909-22330f64ec45} "
ho provato in tutti i modi ma non riesco a risolverlo. Da shell se digito '/etc/init.d/vboxdrv setup' ottengo:
"Stopping VirtualBox kernel module: vboxdrv.
Recompiling VirtualBox kernel module: vboxdrv
* Look at /var/log/vbox-install.log to find out what went wrong"
debian o ubuntu??
quale release...??
ciaociao
Grazie
il mio intento è poter avere una comunicazione tra la macchina host (debian) e la macchina guest (debian) senza nessuna connessione di nessun tipo..
grazie mille
* Configuring network interfaces... Set 'vbox0' persistent and owned by uid 1000
Set 'vbox0' persistent and owned by uid 0
Salve ragazzi volevo sapere come risolvere questo problema perchè ogni volta devo dare il comando a mano così
root@blackhats:/etc/network# tunctl -t vbox0 -u ph3mt
Set 'vbox0' persistent and owned by uid 1000
root@blackhats:/etc/network#
Attendo una vostra risposta :P
>>N.B. con questo metodo "manuale" ogni volta che riavvierete il vostro PC dovrete ripetere i passaggi elencati in precedenza.
La soluzione al tuo problema è descritta nel post :)
ciaociao
I found this page by using google. I have the same problem as ph3mt. Because I can't speak italy, I home anybody can tell/translate me the solution in english/german for his problem.
Thanks a lot!
Grazie :-)
leggendo 'sto howto mi son venuti in mente i tempi in cui usavo il modulo shaper per limitare la banda alle interfacce di rete!
Comunque non mi e' molto chiaro del perche' vbox non disponga di una configurazione tipo gui per il suo dhcp - considerando che in vmware e' possibile settare l'intefaccia su cui poggiare il guest os.
Saluti
Pol
Però dopo aver seguito la procedura dal pc host non riesco più a raggiungere nulla che stia sulla rete, nemmeno se effettuo un ping diretto dell'ip di un'altra macchina. la navigazione internet invece funziona.
HELP!!
GRAZIE!!
utilizzando la configurazione con ip statici sopra indicata, ogni volta si riavvia il pc si devono dare i comandi "sudo tunctl -t vbox0 -u USERNAME" e "sudo chmod 666 /dev/net/tun" manualmente.
Con la configurazione descritta sotto questo è reso automatico:
#LOOPBACK INTERFACE
auto lo
iface lo inet loopback
#eth0 INTERFACE
auto eth0
iface eth0 inet manual
#vbox0 INTERFACE
auto vbox0
iface vbox0 inet manual
tunctl_user lorenzo
#br0 INTERFACE
auto br0
iface br0 inet static
post-up chmod 666 /dev/net/tun
post-up tunctl -t vbox0 -u lorenzo
address 192.168.2.20
netmask 255.255.255.0
broadcast 192.168.2.255
gateway 192.168.2.10
bridge-ports eth0 vbox0
bridge-ageing 7200
bridge-fd 0
Grazie mille per il tuo grande aiuto nella configurazione delle reti per VirtualBox!!
grazie per il commento sarà sicuramente utile ad altri!! :)
thx
ciaociao
La Macchina Host funziona perfettamente: naviga pinga gli altri pc della rete (eccetto che pc GUest).
Il Pc Guest (Ubuntu Hardy) invece naviga (anche se non pinga nessuno...
PS: per adesso non ho toccato /etc/nework/interfaces
Pare ce l'abbiano anche altri:
http://forum.ubuntu-it.org/index.php?topic=200947.msg1349535#msg1349535
e sembra che riavviando i servizi di rete funzioni tutto
sudo /etc/init.d/networking restart
^__^
thx :)
ciaociao
- Applications Software (2)
- Debian (1)
- Devel (1)
- Distribuzioni Varie (2)
- Easy Tricks (5)
- Gnome Desktop (2)
- Guide Debian (8)
- Guide Debian Ubuntu (12)
- Guide Ubuntu (9)
- Linux Printer Drivers (1)
- Man Pages Linux (2)
- My Feeds (3)
- Off Topic (2)
- Ping at Home (1)
- Problem Solving (4)
- Server Side (2)
- Tricks Debian Ubuntu (5)
- Ubuntu (8)
- Upgrades (5)
- NFS - Condivisione file Debian Ubuntu
- Ubuntu Case Studies: storie di successo in azienda e nelle scuole
- La tentazione del lato oscuro (Google AdSense) [Ping@Home]
- Linux Man Pages On-Line
- Gestione Moduli e Virtual Hosts di Apache2 su Debian e Ubuntu
- Visualizzare struttura ad albero di una directory
- Cron + Rhythmbox + Scriptino = Sveglia
- Soluzione piccolo problema con mp32ogg
- Velocizzare la ricompilazione con ccache
- Trasformare Gedit in un editor avanzato
- People DebianClan e TuxFeed: pinguini italiani alla riscossa
- Abilitare supporto AGP driver NVIDIA
- Finalmente rilasciata la GPLv3
- Compiz Fusion + Debian Sid
- Estensione NoScript per Firefox
- Compiz Fusion + Ubuntu Feisty
- Disabilitare o modificare splash screen Gnome
- Personalizzare gnome con GNOME Color Chooser
- VOGLIO usare Ubuntu
- Cronologia comandi bash
- febbraio 2008 (1)
- gennaio 2008 (2)
- dicembre 2007 (1)
- novembre 2007 (2)
- ottobre 2007 (1)
- agosto 2007 (3)
- luglio 2007 (2)
- giugno 2007 (20)
- maggio 2007 (13)
- aprile 2007 (10)
- marzo 2007 (20)










