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:

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.
