Table of Contents
VirtualBox
VirtualBox (ou plus précisément Oracle VM VirtualBox) est un logiciel libre de virtualisation de plateforme x86 et amd64 multiplateforme (qui tourne sous Linux, Windows, MacOS). VirtualBox a été historiquement créé par InnoTek début 2007 qui il fut ensuite racheté par Sun, lui-même racheté en 2009 par Oracle.
Il permet de créer des machines virtuelles (VM) de type Windows, Linux, *BSD et MacOS.
Il prend en charge la norme USB2 avec l'extension pack : VirtualBox 4.2.14 Oracle VM VirtualBox Extension Pack.
Tips
Linux headers
Pour pouvoir installer les Additions invité, qui permettent une meilleure intégration de la VM (plus de fluidité, partage du copier/coller, redimensionnement automatique du bureau, etc…) il faut, pour une VM sous Linux, installer les headers du noyau :
apt install build-essential linux-headers-`uname -r` dkms
Puis, après avoir monter les “Additions invité” (menu “Périphériques> Insérer l'image CD des additions invité”) aller dans /media/cdrom0
et, en root, lancer l'installation :
cd /mnt/cdrom0 sh VBoxLinuxAdditions.run
Erreur de disque
Si vous tombez comme moi sur l'erreur :
Could not find an open hard disk with UUID {blabla}.
et donc ne pouvez plus lancer votre VM, il faut (ça a marché dans mon cas) :
- éditer le fichier de configuration de la VM (*.vbox)
- chercher l'UUID “blabla” dans le fichier, et retirer la section “AttachedDevice”
- actualiser la VM dans VirtualBox, puis l'éditer pour re-attacher son disque
Le message d'erreur devrait disparaître.
Réduire la taille du fichier VDI
Si on utilise l'allocation dynamique, le fichier du disque invité (le .vdi) ne prend pas la taille maximale de la partition mais celle de la taille du total des fichiers, ce qui est pratique pour réduire la place sur le système hôte. Mais, lorsqu'on copie un gros fichier sur le disque invité, puis qu'on le supprime, la taille du fichier vdi ne réduit pas.
Pour solutionner ce problème, il faut utiliser la commande VBoxManage modifymedium :
- sur le système invité (la VM, squoi), remplir les espaces vides par des zéros :
- s'il est sous Linux, on peut utiliser la commande
zerofree <FILESYSTEM>
ou le plus artisanalcd <FILESYSTEM> ; cat /dev/zero > ZEROS ; sync ; rm -f ZEROS
- sous Windows il est recommandé par VB d'utiliser sdelete
- une fois cette opération réalisée (elle peut durer “quelques” minutes), éteindre la VM
- puis, sur le système hôte, passer la commande suivante qui va supprimer les blocs de zéros de l'image .vdi :
VBoxManage modifymedium disk <DISK.vdi> --compact