Virtualisation · 4 min read · Dec 02, 2025
VBoxHeadless - Exécution de machines virtuelles avec VirtualBox 4.2 sur un serveur Ubuntu 12.10 sans interface graphique
VBoxHeadless - Exécution de machines virtuelles avec VirtualBox 4.2 sur un serveur Ubuntu 12.10 sans interface graphique
Version 1.0
Auteur : Falko Timme
Suivez-moi sur Twitter
Ce guide explique comment vous pouvez exécuter des machines virtuelles avec VirtualBox 4.2 sur un serveur Ubuntu 12.10 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.
Je ne garantis pas que cela fonctionnera pour vous !
1 Remarque préliminaire
J’ai testé cela sur un serveur Ubuntu 12.10 (système hôte) avec l’adresse IP 192.168.0.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 4.2 sur notre serveur Ubuntu 12.10, nous ouvrons /etc/apt/sources.list…
sudo vi /etc/apt/sources.list… et ajoutons la ligne suivante :
| [...] deb http://download.virtualbox.org/virtualbox/debian quantal contrib |
Ensuite, nous téléchargeons la clé publique de VirtualBox…
wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc -O- | sudo apt-key add -… et mettons à jour notre base de données de paquets :
sudo apt-get updateEnsuite, nous installons VirtualBox 4.2 comme suit :
sudo apt-get install linux-headers-$(uname -r) build-essential virtualbox-4.2 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 faisaient 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 4.2.4 Oracle VM VirtualBox Extension Pack
Support pour les appareils USB 2.0, VirtualBox RDP et démarrage PXE pour les cartes Intel.Téléchargez et installez le pack d’extension comme suit :
cd /tmp
wget http://download.virtualbox.org/virtualbox/4.2.4/Oracle_VM_VirtualBox_Extension_Pack-4.2.4-81684.vbox-extpack
sudo VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-4.2.4-81684.vbox-extpack(Assurez-vous de récupérer la dernière version depuis le site Web de VirtualBox.)
(Assurez-vous d’exécuter la dernière commande avec sudo - sudo VBoxManage extpack install … - sinon vous obtiendrez une erreur comme celle-ci :
administrator@server1:/tmp$ VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-4.2.4-81684.vbox-extpack
0%...
État de progression : NS_ERROR_FAILURE
VBoxManage : erreur : Échec de l'installation "/tmp/Oracle_VM_VirtualBox_Extension_Pack-4.2.4-81684.vbox-extpack" : L'installateur a échoué avec le code de sortie 127 : Erreur lors de la création de l'agent d'authentification textuel : Erreur lors de l'ouverture du terminal de contrôle actuel pour le processus (`/dev/tty') : Aucun dispositif ou adresse de ce type
administrator@server1:/tmp$)
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 12.10 Server avec 512 Mo de mémoire et un disque dur de 10 Go à partir de l’image iso du serveur Ubuntu 12.10 (que j’ai stockée dans /home/ubuntu-12.10-server-amd64.iso) :
VBoxManage createvm --name "Ubuntu 12.10 Server" --register
VBoxManage modifyvm "Ubuntu 12.10 Server" --memory 512 --acpi on --boot1 dvd --nic1 bridged --bridgeadapter1 eth0
VBoxManage createhd --filename Ubuntu_12_10_Server.vdi --size 10000
VBoxManage storagectl "Ubuntu 12.10 Server" --name "IDE Controller" --add ide
VBoxManage storageattach "Ubuntu 12.10 Server" --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium Ubuntu_12_10_Server.vdi
VBoxManage storageattach "Ubuntu 12.10 Server" --storagectl "IDE Controller" --port 1 --device 0 --type dvddrive --medium /home/ubuntu-12.10-server-amd64.iso3.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
Que vous créiez une nouvelle VM ou importiez une ancienne, vous pouvez la démarrer avec la commande :
VBoxHeadless --startvm "Ubuntu 12.10 Server"(Remplacez Ubuntu 12.10 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 12.10 Server" poweroffPour mettre en pause une VM, exécutez
VBoxManage controlvm "Ubuntu 12.10 Server" pausePour réinitialiser une VM, exécutez
VBoxManage controlvm "Ubuntu 12.10 Server" resetPour en savoir plus sur VBoxHeadless, jetez un œil à
VBoxHeadless --helpet à http://www.virtualbox.org/manual/ch07.html#vboxheadless.
Recevez de nouveaux articles dans votre boîte de réception.
Aucun spam. Désabonnez-vous à tout moment.