Guida definitiva per l’accelerazione 3D su Virtualbox

Come sapete ho già scritto due post sull’ argomento, Accelerazione 3D su VirtualBox e Habemus 3D, e a questo punto ho sentito il bisogno di organizzare questa sorta di appunti per costruire una guida completa e di relativamente facile utilizzo. Se avete letto i post di cui sopra ed avete una certa esperienza di virtualbox sapete che l’architettura dl sistema di virtualizzazione prevede una macchina host, dove risiede il sistema operativo “reale”, e una macchina guest col sistema virtuale. Il trucco è cercare di mettere in comunicazione i due sistemi e fare in modo che “guest” sfrutti l’accelerazione 3D di host. Per fare ciò abbiamo innanzitutto bisogno di vmgl, un software nato dalla genialità di uno sviluppatore canadese, di uno script per creare una interfaccia host che permetta alle due macchine di comunicare, di una serie di piccole configurazioni sui due sistemi e di un po’ di pazienza.

[singlepic=549,320,240,,]

Prerequisiti

Nel mio caso la macchina host è equipaggiata con Ubuntu Hardy Heron e la guest con OpenSUSE 11, quindi da adesso le chiamerò rispettivamente hardy e suse.
Su hardy installate tutto il necessario per la compilazione (make, build-essential …) + i seguenti pacchetti: freeglut3-dev, libxmu-dev, libbz2-dev, zlib1g-dev, libssl-dev, libjpeg62-dev, libjasper-dev.
Seguite la mia guida sulla Installazione e configurazione di Opensuse 11 su Virtualbox procastinando però l’ installarzione delle guest additions a dopo quella di vmgl (il passo successivo). Anche su suse bisogna installare il necessario per la compilazione (make, gcc, gcc++, kernel source …) + i la versione suse dei pacchetti di cui sopra: freeglut-devel, xorg-x11-libxmu-devel, libbz2-devel, libopenssl-devel, libjpeg-devel, libjasper-devel.
Ovviamente ci saranno parecchie dipendenze da soddisfare er cui preparatevi ad nstallare un bel po’ di roba.

Installazione di vmgl

Hardy
Fare il download di vmgl dal link precedente, scompattare l’archivio tar.gz nella home, entrare in vmgl.hg e digitare make, make install-host.
Suse
In /home/$user/vmgl.hg digitare make, make install-guest.

Configurazione

Hardy
Aprite il file /etc/gdm/gdm.conf e cambiate DisallowTCP=true in DisallowTCP=false; salvate e da root lanciate stub-daemon. Ora inserite in /etc/hosts l’indirizzo ip di suse (supponiamo 192.168.0.3) seguito dal hostname (es. linux-zlug); questa la riga completa: 192.168.0.3 linux-zlug.

Suse
Create una interfaccia host con lo script di leo; seguitene tranquillamente le istruzioni, dovete cambiare soltanto il nome utente, e lanciate virtualbox con l’interfaccia di rete tap1. Assegnate a suse l’indirizzo ip 192.168.0.3 e in /etc/hosts inserite l’indirizzo ip di hardy (192.168.0.2) e l’hostname (es. maddomlinux); riga completa: 192.168.0.2 maddomlinux. Aprite la porta 6000 per l’ X forwarding lanciando YaST–>Editor per file /etc/sysconfig–>Desktop–>Display manager e cambiando il valore di DISPLAYMANAGER_XSERVER_TCP_PORT_6000_OPEN da no a yes.
Infine nel file /etc/environment inserite le righe seguenti:
DISPLAY=hostname:0
GLSTUB=hostname:7000
Riavviate, et voilà:
[singlepic=548,320,240,,]

*hostname=il nome della macchina host (hardy). Nel mio caso maddomlinux.

Update 9/07/2008

Poche righe sopra, ho documentato il modo di creare un X11forwarding attraverso telnet implementando la variabile DISPLAY in /etc/environment. Esiste anche un’altra via, cioè quella di usare ssh -X dalla macchina host (hardy). Nel mio tipo di configurazione funziona meglio, tanto che sono in grado di mostrare a john (il mio commentatore english) e a tutti voi uno screenshot (il primo dei due) di gnuchess 3D (solo la tastiera, le pedine non mi è concesso…). L’uso è semplicissimo:

ssh -X nomeutente@host (nel mio caso mad73@linux-zlug).

Posted in Guide, Ubuntu and tagged , , , , , .

9 Comments

  1. Mozilla Firefox 3.0 Linux

    Where is the screenshot of compiz, or a 3d game, running inside of virtualbox? Otherwise it was a good read! Thanks.!

    P.S: sorry about writing in english, but although a can read Italian, i can’t write.

  2. Mozilla Firefox 3.0 Linux

    Ottima e semplice guida :)
    Potresti dirmi se fosse possibile sfruttare questa cosa anche con una macchina windows come guest?

  3. Mozilla Firefox 3.0 Linux

    @John
    You can’t run compiz because vmgl doesn’t support AIGLX. I can’t show any 3D game screenshot because my pc is quiet slow and it isn’t able to run a 3d game in VM. However you can see that DRI enabled and vmgl works…

    @Fattazzo
    Su windows non si può per la semplice ragione che non supporta opengl ma directx.
    Ciao!

  4. Internet Explorer 7.0 Windows Vista

    I can’t read anything but english [I know, I’m stupid] but that looks like some type of a devil operating system. Is it Linux? Because if it is, you should read The Truth about Linux and make the choice for yourself.

  5. Mozilla Firefox 3.0 Linux

    Ciao, ho eseguito correttamente tutti i passaggi della guida ed alla fine facendo un glxinfo mi dice che il 3D è attivo; ma se faccio glxgears non mi fa vedere “gli ingranaggi” (…e dopo un po mi s’inchioda la VM) e se provo a dare un’occhiata a qualche screensaver 3D non riesco a visualizzare niente! Mi sai aiutare in qualche modo?

  6. Mozilla Firefox 2.0.0.14 Windows XP

    Ciao , anche io avevo una esigenza simile, avviare un server X su una macchina virtuale UserModeLinux e ho risolto usando vnc server sull’host sul quale si appoggiava il client che girava sul guest…
    Ora pero’ volevo proprio far girare applicazioni 3d microsoft su virtualbox, i drivers Nvidia per windows supportano OpenGL… e di questo sono sicuro…
    Ora pero’ non so se esista una patch o un driver nuovo per la scheda virtuale di virtualbox… sai niente?

  7. Mozilla Firefox 2.0.0.14 Windows XP

    mi sono dimenticaro di dirti che le prestazioni di vnc sono nettamente superiori sia a telnet che a ssh con Xforwarding in quanto passano in chiaro, senza la crittazione propria di ssl per esempio…

    Ciao

  8. Mozilla Firefox 3.0.1 Linux

    Non esiste nessun modo per emulare il 3d con windows su virtual box?

  9. Pingback: Guida definitiva per l’accelerazione 3D su Virtualbox - Bloghissimo.it - Aggregatore notizie

Lascia un Commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati *

Connect with Facebook

È possibile utilizzare questi tag ed attributi XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>