Aller au contenu

VirtualBox : installation sur Ubuntu

VirtualBox exécute des machines virtuelles sur un hôte Ubuntu. Sur un serveur sans écran, il se pilote entièrement en ligne de commande avec VBoxManage et s’exécute en mode headless (sans interface graphique). Les exemples utilisent des noms génériques (srv1, /srv/vms).

Origine Paquet Remarque
Ubuntu (dépôt multiverse ou universe) virtualbox Intégré à la distribution, mises à jour par apt ; version parfois en retrait
Dépôt Oracle virtualbox-7.x Dernière version ; dépôt tiers à ajouter

La version exacte fournie par Ubuntu se lit avec :

Fenêtre de terminal
apt policy virtualbox

Ce guide utilise le paquet d’Ubuntu.

Fenêtre de terminal
sudo apt update
sudo apt install virtualbox
VBoxManage --version
sudo systemctl status virtualbox

Sur un serveur, virtualbox-dkms compile les modules noyau (vboxdrv, vboxnetflt, vboxnetadp) pour le noyau en cours. Les en-têtes du noyau sont nécessaires :

Fenêtre de terminal
sudo apt install linux-headers-generic dkms
lsmod | grep vbox
sudo modprobe vboxdrv

Après une mise à jour du noyau, DKMS recompile les modules ; redémarrer ensuite.

Fenêtre de terminal
sudo usermod -aG vboxusers "$USER"

Se reconnecter ensuite. Le groupe donne notamment accès aux périphériques USB ; les machines elles-mêmes appartiennent à l’utilisateur qui les crée : toujours utiliser le même utilisateur (de préférence un compte dédié) pour créer, démarrer et administrer les machines.

L’Extension Pack ajoute le bureau à distance VRDP, l’USB 2/3 et le chiffrement de disque.

Fenêtre de terminal
sudo apt install virtualbox-ext-pack

Le paquet affiche la licence Oracle, à accepter explicitement. Cette licence (PUEL) autorise l’usage personnel et l’évaluation, pas l’usage commercial. Vérifier :

Fenêtre de terminal
VBoxManage list extpacks

Avec le paquet Oracle, l’Extension Pack s’installe par sudo VBoxManage extpack install <fichier>.vbox-extpack, à la même version que VirtualBox.

Chemin Rôle
~/VirtualBox VMs/ Dossier par défaut des machines
~/.config/VirtualBox/ Configuration de l’utilisateur et registre des machines
/etc/vbox/networks.conf Plages autorisées pour les réseaux hôte uniquement

Changer le dossier par défaut (disque de données, par exemple) :

Fenêtre de terminal
sudo mkdir -p /srv/vms && sudo chown "$USER": /srv/vms
VBoxManage setproperty machinefolder /srv/vms
VBoxManage list systemproperties | grep -i "default machine folder"

La virtualisation matérielle doit être activée dans le micrologiciel :

Fenêtre de terminal
grep -Ec '(vmx|svm)' /proc/cpuinfo # > 0 : prise en charge présente
lsmod | grep kvm

VirtualBox et KVM (LXD, QEMU) peuvent être chargés en même temps : VirtualBox bascule alors sur un mode plus lent. Pour de bonnes performances, éviter d’exécuter simultanément des machines VirtualBox et KVM, ou décharger KVM (sudo modprobe -r kvm_intel kvm).

Pour des machines virtuelles Ubuntu sans VirtualBox, voir aussi LXD : instances (instances de type machine virtuelle).

Fenêtre de terminal
sudo apt update && sudo apt upgrade
sudo apt purge virtualbox virtualbox-dkms

Arrêter les machines avant une mise à jour. La désinstallation ne supprime pas les disques des machines (~/VirtualBox VMs/).

Symptôme Piste
Kernel driver not installed (rc=-1908) Modules non chargés : sudo modprobe vboxdrv, sudo dkms status
modprobe: ERROR: could not insert 'vboxdrv': Key was rejected Secure Boot : inscrire la clé (MOK) ou le désactiver
La compilation DKMS échoue sudo apt install linux-headers-$(uname -r)
VERR_VMX_NO_VMX Virtualisation désactivée dans le micrologiciel, ou machine déjà virtuelle sans virtualisation imbriquée
VERR_VMX_IN_VMX_ROOT_MODE Un autre hyperviseur (KVM) utilise le processeur
VBoxManage: command not found Paquet virtualbox non installé

Ubuntu 24.04 et 26.04 : différences à connaître

Section intitulée « Ubuntu 24.04 et 26.04 : différences à connaître »

La version de VirtualBox fournie change d’une version d’Ubuntu à l’autre : lire apt policy virtualbox. Les montées de version majeure de VirtualBox (6.1 vers 7.0 puis 7.x) ont renommé plusieurs options de VBoxManage (par exemple --audio devenu --audio-driver, --vrdeport devenu --vrde-port) : relire les scripts après une mise à jour. Un noyau récent peut demander une version récente de VirtualBox pour compiler ses modules.