Difference between revisions of "Virtualbox 3d acceleration"
(Aggiunto i tag SEO ed i template e aggiornato i collegamenti) |
|||
Line 1: | Line 1: | ||
− | + | {{header_it|title=StudioSG - VirtualBox e accelerazione 3-D| keyword={{Template:Keyword_it_virtualbox}}| description=Come abilitare l'accelerazione 3-D per una macchina virtuale condigurata in Virtualbox | link_page=en/virtualbox_3d_acceleration}} | |
− | |||
− | |||
− | |||
− | |||
− | - | ||
− | |||
== Accelerazione 3-D in Virtualbox == | == Accelerazione 3-D in Virtualbox == | ||
− | |||
Nel corso dell'articolo vedremo come '''abilitare l'accelerazione grafica 3-D''' per una macchina virtuale su cui sia installata una distribuzione Slackware Linux. | Nel corso dell'articolo vedremo come '''abilitare l'accelerazione grafica 3-D''' per una macchina virtuale su cui sia installata una distribuzione Slackware Linux. | ||
Line 22: | Line 15: | ||
− | == Abilitare la | + | == Abilitare la Funzionalità nella Configurazione della Macchina == |
Aperta la console di Virtualbox si selezioni la macchina desiderata e si apra la finestra delle opzioni mediante click del mouse sul pulsante Settings. Nella maschera così aperta si selezioni l'opzione Display ed infine si spunti l'opzione "Enable 3D Acceleration". | Aperta la console di Virtualbox si selezioni la macchina desiderata e si apra la finestra delle opzioni mediante click del mouse sul pulsante Settings. Nella maschera così aperta si selezioni l'opzione Display ed infine si spunti l'opzione "Enable 3D Acceleration". | ||
Line 31: | Line 24: | ||
Avviata la macchina virtuale, si apra il menù Devices e si selezioni l'opzione Devices->CD/DVD Devices->VboxGuestAdditions.iso. | Avviata la macchina virtuale, si apra il menù Devices e si selezioni l'opzione Devices->CD/DVD Devices->VboxGuestAdditions.iso. | ||
Dopo essersi collegati come '''utente root''' sul sistema si esegua il mount del cdrom tramite il comando: | Dopo essersi collegati come '''utente root''' sul sistema si esegua il mount del cdrom tramite il comando: | ||
− | + | '''mount''' /mnt/cdrom | |
− | Spostandoci nella directory /mnt/cdrom il comando ls -la dovrebbe rendere l'elenco degli eseguibili: | + | Spostandoci nella directory ''/mnt/cdrom'' il comando ls -la dovrebbe rendere l'elenco degli eseguibili: |
− | + | '''ls''' ''-la'' /mnt/cdrom/ | |
total 30226 | total 30226 | ||
dr-xr-xr-x 4 root root 2048 2010-06-08 13:19 . | dr-xr-xr-x 4 root root 2048 2010-06-08 13:19 . | ||
Line 50: | Line 43: | ||
Si lanci il pacchetto adatto all'architettura della macchina virtuale. VBoxLinuxAdditions-x86.run per macchina virtuale a 32 bit e VBoxLinuxAdditions-x86.run per una a 64. | Si lanci il pacchetto adatto all'architettura della macchina virtuale. VBoxLinuxAdditions-x86.run per macchina virtuale a 32 bit e VBoxLinuxAdditions-x86.run per una a 64. | ||
− | + | '''bash''' ./VBoxLinuxAdditions-x86.run | |
− | Il programma di installazione provvederà a | + | Il programma di installazione provvederà a compilare ed installare i moduli necessari rendendo a video un eloquente resoconto delle operazioni eseguite. |
− | Terminata l'installazione si provi a lanciare una sessione grafica. La versione di X distribuita con Slackware 13.1 dovrebbe essere in grado di avviarsi senza che sia presente un file /etc/X11/xorg.conf. In caso di problemi si provveda a creare detto file lanciando il comando xorgsetup e rispondendo ad alcune semplici domande. Il comando eseguirà una scansione dello hardware e produrrà un file xorg.conf adeguato. | + | Terminata l'installazione si provi a lanciare una sessione grafica. La versione di X distribuita con Slackware 13.1 dovrebbe essere in grado di avviarsi senza che sia presente un file ''/etc/X11/xorg.conf''. In caso di problemi si provveda a creare detto file lanciando il comando '''xorgsetup''' e rispondendo ad alcune semplici domande. Il comando eseguirà una scansione dello hardware e produrrà un file xorg.conf adeguato. |
− | == Configurazione della | + | == Configurazione della Macchina Virtuale == |
Per alcune distribuzioni Linux, l'esecuzione dei due passi precedenti è sufficiente per abilitare la funzionalità di accelerazione. In Slackware, a causa di una disomogeneità dei percorsi ove vengono installati driver e librerie, bisogna eseguire ancora alcune operazioni. | Per alcune distribuzioni Linux, l'esecuzione dei due passi precedenti è sufficiente per abilitare la funzionalità di accelerazione. In Slackware, a causa di una disomogeneità dei percorsi ove vengono installati driver e librerie, bisogna eseguire ancora alcune operazioni. | ||
I sintomi del problema sono: | I sintomi del problema sono: | ||
− | 1 – Basso | + | 1 – Basso frame rate. Lanciato, il programma '''glxgears''' renderà un frame rate di circa 300 frame al secondo. Un valore decisamente basso che evidenzia l'impiego di un driver software e non dell'accelerazione hardware. |
− | 2 – Il file di log della sessione X, /var/log/X.log.x ove x è un numero compreso tra 0 e 9 che indica la sessione grafica aperta, riporterà stringhe di errore simili a: | + | 2 – Il file di log della sessione X, ''/var/log/X.log.''x ove x è un numero compreso tra 0 e 9 che indica la sessione grafica aperta, riporterà stringhe di errore simili a: |
− | (EE) AIGLX error: dlopen of /usr/lib/xorg/modules/dri/vboxvideo_dri.so failed (/usr/lib/xorg/modules/dri/vboxvideo_dri.so: cannot open shared | + | (EE) AIGLX error: dlopen of /usr/lib/xorg/modules/dri/vboxvideo_dri.so failed (/usr/lib/xorg/modules/dri/vboxvideo_dri.so: |
− | + | cannot open shared object file: No such file or directory) | |
(EE) AIGLX: reverting to software rendering | (EE) AIGLX: reverting to software rendering | ||
Il messaggio specifica che non essendo stato trovato il driver opportuno il sistema farà ricorso al rendering software. | Il messaggio specifica che non essendo stato trovato il driver opportuno il sistema farà ricorso al rendering software. | ||
Per ovviare al problema devono essere creati due collegamenti in modo che Virtualbox possa trovare i driver necessari. Si eseguano i seguenti comandi: | Per ovviare al problema devono essere creati due collegamenti in modo che Virtualbox possa trovare i driver necessari. Si eseguano i seguenti comandi: | ||
− | ln -s /usr/lib/xorg/modules/dri /usr/lib/dri | + | '''ln''' ''-s'' /usr/lib/xorg/modules/dri /usr/lib/dri |
− | ln -s /usr/lib/VBoxOGL.so /usr/lib/xorg/modules/dri/vboxvideo_dri.so | + | '''ln''' ''-s'' /usr/lib/VBoxOGL.so /usr/lib/xorg/modules/dri/vboxvideo_dri.so |
Si riavvii quindi il server X. | Si riavvii quindi il server X. | ||
Line 84: | Line 77: | ||
Aggiungere l'utente al gruppo ''video'' | Aggiungere l'utente al gruppo ''video'' | ||
− | Impostare i permessi 0666 per il modulo dri di X modificando opportunamente il file /etc/X11/xorg.conf | + | Impostare i permessi 0666 per il modulo dri di X modificando opportunamente il file ''/etc/X11/xorg.conf'' |
− | Verificare che le regole di creazione dei device file relativi a Virtualbox non siano | + | Verificare che le regole di creazione dei device file relativi a Virtualbox non siano appanaggio esclusivo di root. Nella directory ''/etc/udev/rules.d'' dovrebbe esistere il file 60-vboxadd.rules il quale dovrebbe contenere due righe: |
KERNEL=="vboxguest", NAME="vboxguest", OWNER="root", MODE="0660" | KERNEL=="vboxguest", NAME="vboxguest", OWNER="root", MODE="0660" | ||
KERNEL=="vboxuser", NAME="vboxuser", OWNER="root", MODE="0666" | KERNEL=="vboxuser", NAME="vboxuser", OWNER="root", MODE="0666" | ||
Line 96: | Line 89: | ||
Link esterni | Link esterni | ||
+ | |||
---- | ---- | ||
+ | |||
* [http://www.virtualbox.org/ Home page del progetto Virtualbox] | * [http://www.virtualbox.org/ Home page del progetto Virtualbox] | ||
* [http://it.wikipedia.org/wiki/VirtualBox La pagina Wikipedia relativa a Virtualbox] | * [http://it.wikipedia.org/wiki/VirtualBox La pagina Wikipedia relativa a Virtualbox] | ||
− | |||
---- | ---- | ||
− | + | {{footer_it | link_page=en/virtualbox_3d_acceleration}} |
Revision as of 09:52, 29 December 2016
Benvenuti nella pagina Wiki di Simone Giustetti.
Lingue: English - Italiano
Accelerazione 3-D in Virtualbox
Nel corso dell'articolo vedremo come abilitare l'accelerazione grafica 3-D per una macchina virtuale su cui sia installata una distribuzione Slackware Linux.
Virtualbox è un prodotto di virtualizzazione: un programma in grado di creare Pc virtuali su cui installare un sistema operativo e far girare programmi come se si trattasse di macchine reali. Tra le molte caratteristiche che Virtualbox emula vi è l'accelerazione 3-D; aggiunta ufficialmente con la versione 2.x del programma.
Dato un sistema ospite dotato dell'opportuno hardware, il sistema virtuale ospitato "opportunamente configurato" può usufruire dell'accelerazione grafica hardware.
Si supponga di utilizzare il pacchetto ufficiale di Virtualbox scaricato dal sito:
http://www.virtualbox.org/wiki/Downloads
Si supponga inoltre di aver installato il software sul sistema ospite ed aver creato una macchina Linux virtuale. Sulla macchina virtuale è stato installato un sistema operativo Linux Slackware versione 13.1: l'ultima release stabile. Per abilitare l'accelerazione 3-D è necessario eseguire le seguenti operazioni:
Abilitare la Funzionalità nella Configurazione della Macchina
Aperta la console di Virtualbox si selezioni la macchina desiderata e si apra la finestra delle opzioni mediante click del mouse sul pulsante Settings. Nella maschera così aperta si selezioni l'opzione Display ed infine si spunti l'opzione "Enable 3D Acceleration".
Installare le Guest Addin
Avviata la macchina virtuale, si apra il menù Devices e si selezioni l'opzione Devices->CD/DVD Devices->VboxGuestAdditions.iso. Dopo essersi collegati come utente root sul sistema si esegua il mount del cdrom tramite il comando:
mount /mnt/cdrom
Spostandoci nella directory /mnt/cdrom il comando ls -la dovrebbe rendere l'elenco degli eseguibili:
ls -la /mnt/cdrom/ total 30226 dr-xr-xr-x 4 root root 2048 2010-06-08 13:19 . drwxr-xr-x 10 root root 4096 2006-09-26 05:09 .. dr-xr-xr-x 3 root root 2048 2010-06-08 13:19 32Bit dr-xr-xr-x 2 root root 2048 2010-06-08 13:19 64Bit -r-xr-xr-x 1 root root 222 2010-06-02 18:33 AUTORUN.INF -r-xr-xr-x 1 root root 3276240 2010-06-08 13:10 VBoxLinuxAdditions-amd64.run -r-xr-xr-x 1 root root 2825676 2010-06-08 13:18 VBoxLinuxAdditions-x86.run -r-xr-xr-x 1 root root 11205632 2010-06-08 13:09 VBoxSolarisAdditions.pkg -r-xr-xr-x 1 root root 7657512 2010-06-08 13:04 VBoxWindowsAdditions-amd64.exe -r-xr-xr-x 1 root root 5691768 2010-06-08 13:01 VBoxWindowsAdditions-x86.exe -r-xr-xr-x 1 root root 277008 2010-06-08 13:00 VBoxWindowsAdditions.exe -r-xr-xr-x 1 root root 4890 2010-06-08 13:14 autorun.sh
Si lanci il pacchetto adatto all'architettura della macchina virtuale. VBoxLinuxAdditions-x86.run per macchina virtuale a 32 bit e VBoxLinuxAdditions-x86.run per una a 64.
bash ./VBoxLinuxAdditions-x86.run
Il programma di installazione provvederà a compilare ed installare i moduli necessari rendendo a video un eloquente resoconto delle operazioni eseguite. Terminata l'installazione si provi a lanciare una sessione grafica. La versione di X distribuita con Slackware 13.1 dovrebbe essere in grado di avviarsi senza che sia presente un file /etc/X11/xorg.conf. In caso di problemi si provveda a creare detto file lanciando il comando xorgsetup e rispondendo ad alcune semplici domande. Il comando eseguirà una scansione dello hardware e produrrà un file xorg.conf adeguato.
Configurazione della Macchina Virtuale
Per alcune distribuzioni Linux, l'esecuzione dei due passi precedenti è sufficiente per abilitare la funzionalità di accelerazione. In Slackware, a causa di una disomogeneità dei percorsi ove vengono installati driver e librerie, bisogna eseguire ancora alcune operazioni. I sintomi del problema sono:
1 – Basso frame rate. Lanciato, il programma glxgears renderà un frame rate di circa 300 frame al secondo. Un valore decisamente basso che evidenzia l'impiego di un driver software e non dell'accelerazione hardware.
2 – Il file di log della sessione X, /var/log/X.log.x ove x è un numero compreso tra 0 e 9 che indica la sessione grafica aperta, riporterà stringhe di errore simili a:
(EE) AIGLX error: dlopen of /usr/lib/xorg/modules/dri/vboxvideo_dri.so failed (/usr/lib/xorg/modules/dri/vboxvideo_dri.so: cannot open shared object file: No such file or directory) (EE) AIGLX: reverting to software rendering
Il messaggio specifica che non essendo stato trovato il driver opportuno il sistema farà ricorso al rendering software.
Per ovviare al problema devono essere creati due collegamenti in modo che Virtualbox possa trovare i driver necessari. Si eseguano i seguenti comandi:
ln -s /usr/lib/xorg/modules/dri /usr/lib/dri ln -s /usr/lib/VBoxOGL.so /usr/lib/xorg/modules/dri/vboxvideo_dri.so
Si riavvii quindi il server X. Si potrà subito constatare un miglioramento nel frame rate che dovrebbe ora aggirarsi sui 1500 frame al secondo. Il log file della sessione conterrà ora le stringhe:
(EE) AIGLX error: vboxvideo does not export required DRI extension (EE) AIGLX: reverting to software rendering
che non sembrano creare effettivi problemi al processo.
Le operazioni sin qui descritte devono essere eseguite dall'utente root. Per garantire che l'accelerazione 3-D funzioni anche per con permessi inferiori si deve:
Aggiungere l'utente al gruppo video
Impostare i permessi 0666 per il modulo dri di X modificando opportunamente il file /etc/X11/xorg.conf
Verificare che le regole di creazione dei device file relativi a Virtualbox non siano appanaggio esclusivo di root. Nella directory /etc/udev/rules.d dovrebbe esistere il file 60-vboxadd.rules il quale dovrebbe contenere due righe:
KERNEL=="vboxguest", NAME="vboxguest", OWNER="root", MODE="0660" KERNEL=="vboxuser", NAME="vboxuser", OWNER="root", MODE="0666"
nel caso il file non sia presente lo si dovrà creare e popolare con le righe riportare sopra.
Per commenti, consigli, domande inviate una e-mail all'indirizzo studiosg [chiocciola] giustetti [punto] net.
Link esterni
Lingue: English - Italiano