VirtualBox · 5 min read · Dec 07, 2025
VBoxHeadless - Exécution de machines virtuelles avec VirtualBox 5.1 sur un serveur Ubuntu 16.04 LTS sans interface graphique
Ce guide explique comment vous pouvez exécuter des machines virtuelles avec VirtualBox 5.1 sur un serveur Ubuntu 16.04 sans interface graphique. Normalement, vous utilisez l’interface graphique de VirtualBox pour gérer vos machines virtuelles, mais un serveur n’a pas d’environnement de bureau. Heureusement, VirtualBox est livré avec un outil appelé VBoxHeadless qui vous permet de vous connecter aux machines virtuelles via une connexion de bureau à distance, donc il n’est pas nécessaire d’utiliser l’interface graphique de VirtualBox.
1 Remarque préliminaire
J’ai testé cela sur un serveur Ubuntu 16.04 (système hôte) avec l’adresse IP 192.168.1.100 où je suis connecté en tant qu’utilisateur normal (nom d’utilisateur administrateur dans cet exemple) au lieu de root.
2 Installation de VirtualBox
Pour installer VirtualBox 5.1 sur notre serveur Ubuntu 16.04, nous ouvrons /etc/apt/sources.list…
sudo nano /etc/apt/sources.list… et ajoutons la ligne suivante :
deb http://download.virtualbox.org/virtualbox/debian xenial contribEnsuite, nous téléchargeons la clé publique de VirtualBox…
wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add -… et mettons à jour notre base de données de paquets :
sudo apt-get updateEnsuite, nous installons VirtualBox 5.1 comme suit :
sudo apt-get install linux-headers-$(uname -r) build-essential virtualbox-5.1 dkms(Le paquet dkms garantit que les modules du noyau hôte de VirtualBox sont correctement mis à jour si la version du noyau Linux change.)
À partir de la version 4.0, VirtualBox a introduit ce qu’on appelle des “packs d’extension” et a externalisé certaines fonctionnalités comme le support de la connexion de bureau à distance (VRDP) qui faisait partie des paquets VirtualBox avant la version 4.0 dans ces packs d’extension. Comme nous avons besoin de connexions de bureau à distance pour contrôler nos machines virtuelles, nous devons maintenant installer le pack d’extension approprié. Allez sur http://www.virtualbox.org/wiki/Downloads, et vous trouverez un lien vers le pack d’extension suivant :
VirtualBox 5.1 Oracle VM VirtualBox Extension PackTéléchargez et installez le pack d’extension comme suit :
cd /tmp
wget http://download.virtualbox.org/virtualbox/5.1.0/Oracle_VM_VirtualBox_Extension_Pack-5.1.0-108711.vbox-extpack
sudo VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-5.1.0-108711.vbox-extpack(Assurez-vous de récupérer la dernière version sur le site Web de VirtualBox et d’utiliser sudo pour installer le fichier extpack avec VBoxManage.)
Maintenant, nous devons ajouter l’utilisateur qui exécutera VirtualBox (administrateur dans cet exemple) au groupe vboxusers :
sudo adduser administrator vboxusersVirtualBox est maintenant installé et prêt à être utilisé.
3 Utilisation de VirtualBox en ligne de commande
3.1 Création d’une VM
Pour créer une VM en ligne de commande, nous pouvons utiliser la commande VBoxManage. Voir
VBoxManage --helppour une liste des options disponibles et (très recommandé !) jetez un œil à http://www.virtualbox.org/manual/ch08.html.
Je vais maintenant créer une VM Ubuntu 16.04 Server avec 2048 Mo de mémoire et un disque dur de 10 Go à partir de l’image iso d’Ubuntu 16.04 Server (que j’ai stockée dans /home/administrator/iso/ubuntu-16.04-server-amd64.iso) :
VBoxManage createvm --name "Ubuntu 16.04 Server" --register
VBoxManage modifyvm "Ubuntu 16.04 Server" --memory 2048 --acpi on --boot1 dvd --nic1 bridged --bridgeadapter1 ens33
VBoxManage createhd --filename /home/administrator/Ubuntu_16_04_Server.vdi --size 10000
VBoxManage storagectl "Ubuntu 16.04 Server" --name "IDE Controller" --add ide
VBoxManage storageattach "Ubuntu 16.04 Server" --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium /home/administrator/Ubuntu_16_04_Server.vdi
VBoxManage storageattach "Ubuntu 16.04 Server" --storagectl "IDE Controller" --port 1 --device 0 --type dvddrive --medium /home/administrator/iso/ubuntu-16.04-server-amd64.iso
VBoxManage modifyvm "Ubuntu 16.04 Server" --vrde onMaintenant, passez au chapitre 3.3 pour démarrer la vm et ensuite vous connecter à la VM avec un client de bureau à distance comme décrit au chapitre 4.
3.2 Importation d’une VM existante
Supposons que vous ayez une VM appelée examplevm que vous souhaitez réutiliser sur cet hôte. Sur l’ancien hôte, vous devriez avoir un répertoire Machines/examplevm dans le répertoire VirtualBox ; Machines/examplevm devrait contenir le fichier examplevm.xml. Copiez le répertoire examplevm (y compris le fichier examplevm.xml) dans votre nouveau répertoire Machines (si votre nom d’utilisateur est administrateur, c’est /home/administrator/.VirtualBox/Machines - le résultat devrait être /home/administrator/.VirtualBox/Machines/examplevm/examplevm.xml).
En plus de cela, copiez le fichier examplevm.vdi de l’ancien répertoire VDI vers le nouveau (par exemple, /home/administrator/.VirtualBox/VDI/examplevm.vdi).
Ensuite, vous devez enregistrer la VM importée :
VBoxManage registervm Machines/examplevm/examplevm.xml3.3 Démarrage d’une VM avec VBoxHeadless
Peu importe si vous créez une nouvelle VM ou importez une ancienne, vous pouvez la démarrer avec la commande :
VBoxHeadless --startvm "Ubuntu 16.04 Server"(Remplacez Ubuntu 16.04 Server par le nom de votre VM.)
VBoxHeadless démarrera la VM et un serveur VRDP (VirtualBox Remote Desktop Protocol) qui vous permet de voir la sortie de la VM à distance sur une autre machine.
Pour arrêter une VM, exécutez
VBoxManage controlvm "Ubuntu 16.04 Server" poweroffPour mettre en pause une VM, exécutez
VBoxManage controlvm "Ubuntu 16.04 Server" pausePour réinitialiser une VM, exécutez
VBoxManage controlvm "Ubuntu 16.04 Server" resetPour en savoir plus sur VBoxHeadless, jetez un œil à
VBoxHeadless --helpet à http://www.virtualbox.org/manual/ch07.html#vboxheadless.
4 Connexion à une VM depuis un bureau à distance
4.1 Windows
Vous pouvez utiliser l’utilitaire de connexion de bureau à distance intégré pour vous connecter à la VM.
Tapez le nom d’hôte ou l’adresse IP de l’hôte (pas de l’invité !) :

Et voilà, vous devriez être connecté à la VM :

4.2 Bureau Ubuntu
Sur les bureaux Ubuntu, vous pouvez utiliser le client de bureau à distance Remmina ou gnome-rdp pour vous connecter à la VM.
Installez le client avec apt :
sudo apt-get install remmina remmina-plugin-rdpIl suffit de rechercher remmina puis de double-cliquer sur l’icône du client Remmina pour démarrer l’application RDP.
Dans le client de bureau à distance Remmina, cliquez sur l’icône plus pour ajouter une nouvelle connexion de bureau à distance :

Dans la fenêtre des préférences de bureau à distance, remplissez un nom pour le profil (comme Ubuntu 16.04 Server), assurez-vous que RDP est sélectionné comme protocole (il devrait être sélectionné par défaut), puis remplissez l’adresse IP de l’hôte - pas l’IP de l’invité VirtualBox ! - dans le champ Serveur, et sélectionnez une profondeur de couleur plus élevée que la valeur par défaut de 8bpp - 16bpp est correct. Ensuite, cliquez sur Connecter :

Et voilà, vous devriez être connecté à la VM :

4.3 Si la connexion de bureau à distance ne fonctionne pas…
Si la connexion de bureau à distance ne fonctionne pas, vous avez probablement manqué l’étape où j’installe le pack d’extension VirtualBox au chapitre 2. Veuillez installer le pack d’extension maintenant, arrêter votre machine virtuelle (voir chapitre 3.3), et modifier votre machine virtuelle pour accepter les connexions de bureau à distance :
VBoxManage modifyvm "Ubuntu 16.04 Server" --vrde on(Si le pack d’extension est déjà installé lorsque vous créez votre machine virtuelle, les connexions de bureau à distance sont automatiquement activées.)
Ensuite, redémarrez votre machine virtuelle.
5 Liens
- VirtualBox : http://www.virtualbox.org/
- Ubuntu : http://www.ubuntu.com/
Recevez de nouveaux articles dans votre boîte de réception.
Aucun spam. Désabonnez-vous à tout moment.