VirtualBox e i gruppi di utenti

Scopo e utilizzo dei gruppi vboxsf e vboxusers quando si usano macchine virtuali VirtualBox su un sistema Linux.

Ho appena installato VirtualBox sul mio sistema Fedora utilizzando i pacchetti disponibili nei repository ufficiali di Oracle. Dopo l’installazione del software, sull’host vengono creati alcuni gruppi di sistema supplementari: vboxsf e vboxusers.

Funzione dei gruppi

Il gruppo vboxsf

Questo gruppo regola i permessi di accesso alle cartelle condivise tra host e guest. La funzione shared folders di VirtualBox ti permette di accedere ai file del sistema host direttamente dal sistema guest, vale a dire dalla macchina virtuale eseguita dall’hypervisor, senza passare dalla rete e senza usare i classici protocolli di file sharing (SMB, NFS, ecc.).

Per usufruire di questa funzione, sul sistema guest devono essere installate le Guest Additions e l’utente usato (sempre sul guest) deve essere aggiunto al gruppo vboxsf. Per questo motivo, il gruppo vboxsf ha senso solo sul sistema guest e non sull’host.

Quando serve?

Questo gruppo serve se dalla macchina virtuale volete accedere ad una cartella del sistema host senza ricorrere a strane configurazioni di rete e a protocolli di file sharing.

Il gruppo vboxusers

La funzione di questo gruppo è quella di consentire l’accesso ai dispositivi USB fisici, collegati al sistema host, dall’interno della macchina virtuale guest. Se l’utente del sistema host che esegue VirtualBox non appartiene a questo gruppo, non potrà aggiungere i dispositivi USB alla macchina virtuale.

Nella schermata seguente, ad esempio, ho fatto in modo che la VM Mint possa accedere alla webcam USB connessa all’host Fedora su cui gira VirtualBox:

Configurazione dispositivi USB di una VM VirtualBox

Quando serve?

Questo gruppo è necessario quando volete una maggiore integrazione tra l’hardware dell’host e la macchina virtuale, ad esempio quando volete usufruire della funzione USB passthrough che permette al guest di usare direttamente l’hardware fisico dell’host.

Se l’utente che esegue VirtualBox non appartiene a questo gruppo, solitamente viene mostrato un pop-up che vi avvisa dell’impossibilità di accedere ai dispositivi USB.

Come si aggiunge un utente a un gruppo

La sintassi più comune per aggiungere un utente esistente a uno o più gruppi, anch’essi già presenti sul sistema, è tramite il comando usermod:

usermod -aG vboxsf gianluca
usermod -aG vboxusers gianlucaCode language: Bash (bash)

Più in generale:

usermod -aG gruppo1[,gruppo2,...[,gruppoN]] usernameCode language: Bash (bash)

Il comando mostrato nell’esempio funziona su tutte le distribuzioni. Sui sistemi Debian e derivati, invece, si può usare un metodo alternativo che si avvale del comando adduser:

adduser gianluca vboxsf
adduser gianluca vboxusersCode language: Bash (bash)

Più in generale:

adduser username groupnameCode language: Bash (bash)

Come si può osservare, con il comando usermod è possible aggiungere un utente a più gruppi con una singola chiamata, mentre con adduser bisogna eseguire il comando per ogni gruppo da aggiungere.

Avatar photo
Gica78R

Network security engineer, Linux admin, discepolo di padre Kayn, Enkk e Antirez.

Articoli: 27