Les processeurs actuels de la famille x86/x64, Intel ou AMD, intègre un jeu d’instructions complémentaire pour optimiser le fonctionnement de la virtualisation sur le système d’exploitation. Ces fonctionnalités s’appellent VT-x ou AMD-v et doivent être activées dans l'interface de gestion du micrologiciel du PC (BIOS / EFI). En général, elles le sont par défaut, mais il convient de vérifier au besoin (les hyperviseurs signalent en général assez clairement quand ces fonctions ne sont pas activées).
Par défaut la virtualisation imbriquée (nested virtualization) n’est pas active sous VB. Si l’on souhaite réaliser une VM capable elle-même de prendre en charge la virtualisation, l’option existe mais elle n’est pas accessible :
Pour l’activer, il faut utiliser la ligne de commande Windows (cmd) :
cd C:\Program Files\Oracle\VirtualBox
.\vboxmanage.exe list vms
Cette liste affiche les VMs avec leur nom et leur UUID (identifiant unique).
…
"nom_de_la_VM" {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}
…
.\vboxmanage.exe modifyvm "nom_de_la_VM" --nested-hw-virt on
la ligne de commande Windows n’est pas sensible à la casse, mais VirtualBox l’est : respecter la casse pour le nom de la VM.
Et ainsi, l’option Activer VT-x/AMD-V imbriqué est est désormais activée (et modifiable) pour la VM :
La virtualisation imbriquée avec VirtualBox n'est pas recommandée. Elle peut conduire à l'échec ou à une certaine instabilité.
Après une installation réussie, certaines VM après le démarrage se plantent avec des messages d’erreur système assez dramatiques : kernel panic et autres. Il y a plusieurs choses à vérifier :
Cette situation n'est pas rare étant donné la place que prennent les disques virtuels. Par défaut, lors de sa création, un disque virtuel ne prend pas tout l'espace correspondant à sa capacité nominale, il "grossit" au fur et à mesure de son utilisation (on appelle ceci le thin provisionning). Si à un moment donné il n'y a plus de place sur le disque hôte, la VM se plante. Pour éviter cette déconvenue, il est possible de faire du thick provisionning, c'est-à-dire de réserver dès sa création tout l'espace de stockage attribué au disque virtuel. Ceci est notamment recommandé sur des situations de production.
VirtualBox est notamment incompatible avec le rôle Hyper-V de Microsoft. On vérifie qu'il n'est pas actif sur la machine hôte, ainsi que d'autres fonctionnalités de virtualisation.
Tapez la touche Windows + R, puis appwiz.cpl et Entrée (ceci lance le panneau de configuration, section "programmes et fonctionnalités")
Cliquer sur activer ou désactiver des fonctionnalités Windows :
Dans la liste, décocher ces fonctionnalités si elles sont actives :
Cette fonctionnalité de sécurité Windows assez récente empêche la plupart du temps VirtualBox de fonctionner correctement.
Il semble que depuis le version 7.1, ce problème soit résolu, ou contourné. Ne désactivez l'option qu'en cas de problème.
Rechercher isolation du noyau dans la barre de recherche de Windows, et désactiver l’option si besoin :
Quand tout semble aller de travers, on peut supprimer le fichier virtualbox.xml situé dans le dossier .virtualbox du répertoire de profil de l'utilisateur :
Attention ceci supprime la configuration et les réglages, et perd l'accès aux machines virtuelles (qu'il est cepedant possible de retrouver)