Ceci est une ancienne révision du document !



VirtualBox

VirtualBox est un logiciel permettant de créer des ordinateurs virtuels, pour ensuite installer de nombreux systèmes d'exploitation invités qui fonctionneront dans le système d'exploitation réel de votre ordinateur. Deux versions, dites "non OSE", sont proposées par l'éditeur :

  • une gratuite pour un usage personnel ou éducatif (licence PUEL) ;
  • une payante pour les entreprises.

Il existe une troisième version Open Source dite "OSE" qui est entièrement libre mais amputée de certaines fonctionnalités pour les entreprises, et qui est disponible actuellement dans le dépôt Ubuntu Universe.

VirtualBox est disponible pour GNU/Linux, MacOS et Windows.

VirtualBox possède une interface (réalisée avec Qt) qui vous permettra de gérer très simplement vos différentes machines virtuelles (il existe une interface en SDL : VBoxSDL et une interface en GTK+ : VBoxGTK).

À partir de la version 2.1, VirtualBox gère l'accélération matérielle OpenGL.

VirtualBox peut effectivement virtualiser un système d'exploitation déjà installé sur un autre disque dur, ou une autre partition. Toutefois, la manipulation nécessaire n'est pas aisée, et est encore moins confortable.

Dans le cas des systèmes Windows, le changement brutal d'environnement matériel est quasiment fatal à tous les coups. Ceci est d'autant plus vrai pour les moutures NT (et donc Windows XP et ses successeurs).

Abréviation Signification Traduction
VM Virtual Machine Machine virtuelle
OS Operating System Système d'exploitation
OS Host celui qui lance VirtualBox, normalement votre Ubuntu
OS Guest l'OS que vous virtualisez avec VirtualBox

Suivant que vous installez la version OSE ou non, les noms pour lancer les commandes diffèrent par la casse :

  • version OSE (Code Source Ouvert) : virtualbox / vboxmanage
  • version non OSE (Code Source Fermé) : VirtualBox / VBoxManage

Préalables

Avant d'installer VirtualBox, installez les paquets linux-headers-generic et build-essential.

Installation de la version OSE

Cette version ne gère pas les périphériques USB.

Il suffit d'installer le paquet virtualbox-ose. (dépôts Universe)

Autorisation du compte utilisateur en l'ajoutant dans le groupe « vboxusers ».

Vous pouvez aussi installer le paquet virtualbox-ose-guest-utils.

Installation de la version non OSE

Sous Ubuntu 8.10 et antérieurs: si vous aviez déjà installé virtualbox-ose (ainsi que son module), désinstallez-les car ils vont gêner l'installation de virtualbox.

Via le paquet .DEB de virtualbox.org

Il suffit de vous rendre sur le site officiel de VirtualBox et d'installer le paquet .DEB correspondant à votre architecture (généralement i386, ou sinon AMD64 si vous êtes en 64 bits)

Via les dépots de virtualbox.org

Ajoutez un des dépôts non officiels suivants à vos sources de mises à jour (choisissez celui correspondant à votre version d'Ubuntu) :

Version Dépôt
Ubuntu 9.10 deb http://download.virtualbox.org/virtualbox/debian karmic non-free
Ubuntu 9.04 deb http://download.virtualbox.org/virtualbox/debian jaunty non-free
Ubuntu 8.10 deb http://download.virtualbox.org/virtualbox/debian intrepid non-free
Ubuntu 8.04 LTS deb http://download.virtualbox.org/virtualbox/debian hardy non-free
Ubuntu 6.06 LTS deb http://download.virtualbox.org/virtualbox/debian dapper non-free
Clé d'authentification à ajouter

Copiez-collez cette ligne dans un terminal pour ajouter la clé d'authentification du dépôt :

wget -q http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc -O- | sudo apt-key add -

Rechargez la liste des paquets, puis installez le paquet virtualbox-3.0.

Lors de l'installation, il y aura un avertissement sur le fait qu'il faut ajouter votre compte utilisateur au groupe « vboxusers » (nous y reviendrons juste après).

Sous Ubuntu 9.04 et +, avec une installation via les dépôts, la création du groupe "vboxusers", et l'ajout de l'utilisateur courant à ce groupe, sont faits automatiquement lors de l'installation en ligne de commande.

Autoriser l'utilisation par un compte utilisateur

Pour autoriser votre compte utilisateur du système à utiliser VirtualBox, il faut l'ajouter au groupe vboxusers, copier-coller ceci dans un terminal pour le faire (normalement fait automatiquement lors de l'installation):

sudo adduser $LOGNAME vboxusers

($LOGNAME est une variable d'environnement système qui renvoie automatiquement votre nom d'utilisateur, inutile donc de le remplacer dans la commande).

Si un message d'erreur vous indique que le groupe n'existe pas, vous pouvez l'ajouter de la façon suivante :

sudo groupadd vboxusers

N'oubliez pas de vous déconnecter et vous reconnecter pour que l'ajout de groupe soit pris en compte avant de lancer virtualbox. Si vous n'avez pas envie de vous déconnecter, tapez ceci pour ouvrir un shell prenant en compte votre nouveau groupe:

sudo -u $USER -s
Pour le support de l'usb, exécutez la commande :
echo "none /proc/bus/usb usbfs devgid=$(grep plugdev /etc/group | sed 's/plugdev:x:\(.*\):.*/\1/'),devmode=664 0 0" | sudo tee -a /etc/fstab

faut pas oublier de le monter

sudo mount /proc/bus/usb

Puis recompilez le module:

sudo /etc/init.d/vboxdrv setup
Si au lancement de VirtualBox vous obtenez l'erreur suivante : VirtualBox can't operate in VMX root mode. Please disable the KVM kernel extension, recompile your kernel and reboot. Il faut décharger le module kvm-intel ou kvm-amd. Pour cela, exécutez la commande suivante :
sudo rmmod kvm-<archi>

Ou plus simplement

sudo /etc/init.d/kvm stop

Vous pouvez aussi éditer le fichier /etc/modprobe.d/blacklist et y ajouter la ligne :

blacklist kvm-<archi>

afin d'éviter que le module ne soit rechargé à chaque démarrage.

Vous pouvez suivre ce tutoriel, qui guide aussi l'installation et la configuration de VirtualBox.

Vous pouvez lancer le logiciel par le menu Applications → Outils système ou Applications → Accessoires ou avec la commande :

VirtualBox

À partir de la première ouverture de la fenêtre de VirtualBox, vous aurez à passer les étapes suivantes:

  1. Vérification des « global settings » pour adapter si vous le jugez préférable :
    • le répertoire d'installation de VDI et Machines qui sinon sera installé par défaut sur ~/.VirtualBox
    • le choix de la host key (la touche « Ctrl » de droite sera choisie par défaut, voir case Input)
  2. Création de la VM (taille, mémoire, son, USB, CD, etc.)

Veiller notamment à cocher les cases « enable audio », « enable usb », si vous voulez profiter de ces fonctionnalités dans le futur (en effet, il est arrivé que la mise en place de ces fonctionnalités, après coup, pose problème à certains utilisateurs).

  1. Installation de l'OS émulé (via un CD ou une image ISO)
  2. Rajout des « guest additions » (voir Amélioration de l'émulation…)

Lorsque vous serez satisfait de votre installation, pensez donc à prendre un snapshot.

En session, il est important de noter que pour passer de l'OS invité (Guest) à l'OS hôte (Host), il vous faudra presser la touche CONTROL (de droite) ou toute autre touche que vous aurez paramétré à cet effet comme Touche Host. Cette touche (configurable), permet d'effectuer les opérations les plus courantes :

  • Touche Host–F : mode plein écran
  • Touche Host–Suppr : envoie un Ctrl–Alt–Suppr à l'OS Guest
  • Touche Host–⌫ : envoie un Ctrl–Alt–⌫ à l'OS Guest
  • Touche Host–G : permet d'adapter la taille du système hôte à votre écran (bien pratique)
  • etc.

Améliorer l'émulation de l'OS Guest

VirtualBox propose des pilotes adaptés pour l'OS Guest : pour Windows et pour GNU/Linux.

Ceci permet

  • Un redimensionnement automatisé de la zone d'affichage de l'OS Guest, quand on redimensionne la fenêtre d'émulation dans l'OS Host.
  • La possibilité de passer la souris du Host au Guest, et vice versa, plus aisément.
  • Le partage de fichiers entre l'OS Host et l'OS invité sous peine d'obtenir le message :
L'erreur système 67 s'est produite. Nom de réseau introuvable.
  • Quand l'OS Guest est de type Windows :
    • Dans la session d'émulation, sélectionner « Install Guest Additions ».
    • Pour installer les additions clients et bénéficier de direct 3D sous Virtualbox 3.0 vous devez installer les additions clients en mode sans échec (safe mode)

VirtualBox va monter automatiquement une image ISO fournie avec l'émulateur, ce qui provoquera le démarrage automatique de l'installation de ces pilotes.

Pour hardy : il semblerait que l'ISO ne soit plus disponible pour la version 1.5.6, en revanche l'ISO de la 1.6 fonctionne. elle est disponible ici : http://download.virtualbox.org/virtualbox/1.6.0/VBoxGuestAdditions_1.6.0.iso La derniére version de l'iso (2.2.0) disponible pour hardy , Intrepid et jaunty : http://download.virtualbox.org/virtualbox/2.2.0/
  • Il est à noter que l'installation de ces pilotes est prévue pour des Windows 2000 ou plus. Windows 98 tolère l'installation, mais peut ne pas marcher. Notamment les pilotes graphiques, qui n'ont pas été conçus pour ce dernier, ainsi que pour ses prédécesseurs fait l'objet d'un blâme de la part des utilisateurs de la VirtualBox.
Si vous avez installé la version VirtualBox OSE, l'installation de ces pilotes ne se fera pas. Mais la solution est ici
Après l'installation de Windows XP, avec l'option disque dur SATA d'activé (VirtualBox non-OSE 1.6.2 et 1.6.4, mais p-e aussi les version OSE, et les autres versions), vous pourrez remarquer qu'un périphérique inconnu est présent dans le gestionnaire de périphérique de Windows (a priori, également valable avec les autres versions de Windows). Pour remedier à cela il convient d'installer les pilotes SATA Mobile d'INTEL. Ces pilotes sont disponibles en suivant le lien suivant : iata82_enu.exe, une fois le fichier téléchargé & installé le périphérique inconnu devrait être (en toute logique, mais je ne garantie rien) reconnu. Jérémie Liénard, le 15/08/2008, Testé sur DELL Precision 3400 (Intel Q6600), Ubuntu Studio 8.04 noyau 2.6.24-19-rt, source : Forum VirtualBox Officiel
  • Quand l'OS Guest est de type GNU/Linux (user manual section 4.3.1) :
    • installation des modules noyaux nécessaires. Par chance ceux-ci sont déja installés par défaut sur les versions récentes d'Ubuntu (user manual section 2.2.2 de Virtualbox)
    • Dans la session d'émulation, sélectionner « Install Guest Additions ».

VirtualBox « devrait » monter automatiquement une image ISO fournie avec l'émulateur. Si rien ne se passe, l'installation du paquetage build-essential peut résoudre le problème. Tout fermer, relancer Vitualbox et la machine virtuelle puis re-sélectionner « Install Guest Additions ». Si ça ne marche toujours pas, tenter une installation « à la main » :

  • aller dans le répertoire ou le CD-ROM est monté (/media/cdrom0) et lancer la commande « sh ./VBoxLinuxAdditions-[archi].run » en tant que root ( [archi] peu être x86 ou amd64) ( à compter de virtualbox 3.xx).
sudo apt-get install build-essential
cd /media/cdrom0 && sudo sh ./VBoxLinuxAdditions-[archi].run

Sur VirtualBox 3.xx

cd /media/cdrom0 && sudo ./autorun.sh

Ou encore, double cliquer sur le cd VBOXADDITIONS_3. sur le bureau, double cliquer sur autorun.sh depuis la fenêtre qui s'ouvre. Votre mot de passe sudo est demandé et l'installation se fait.

Une fois l'installation terminée un reboot de la machine virtuelle est demandé.

Résultat : bonne gestion de la capture (et surtout de la "relâche") de la souris.

FIXME Ces pilotes ne fonctionnent pas avec toutes les distributions … mais avec les versions stables d'Ubuntu ça devrait aller.

Si le noyau de la machine virtuelle est mis à jour, il faut procéder à une ré-installation de ces Additions. Vous le remarquerez vite au fait que votre souris est de nouveau capturée entièrement par la machine virtuelle, et qu'il faille un Ctrl-droit pour la libérer.

Solution aux problèmes sous Vista pour obtenir le plein écran

Après installation des VBoxLinuxAdditions, après redémarrage, ouvrez le fichier /etc/X11/xorg.conf et cherchez-y les lignes suivantes :

Section "Screen"
        Identifier    "Default Screen"
        Device        "VirtualBox graphics card"
        Monitor       "Generic Monitor"
        DefaultDepth  24
EndSection

Modifiez-les de façon à obtenir ceci :

Section "Screen"
        Identifier    "Default Screen"
        Device        "VirtualBox graphics card"
        Monitor       "Generic Monitor"
        DefaultDepth  24
        SubSection "Display"
                Depth         24
                Modes         "1680x1050" "800x600" "640x480"
        EndSubSection
EndSection

La résolution utilisée sera la première dans le champ "Modes". Notez que vous pouvez utiliser la résolution de votre choix, ici il s'agit de 1680×1050.

L'utilisation est assez aisée car VirtualBox possède une interface graphique très simple (bien qu'il soit possible de tout scripter avec la commande vboxmanage ou VBoxManage)

Activer le son

Dans la fenêtre principale de VirtualBox, cliquez sur Machine→Préférences puis allez dans la section Audio et cochez Activer l'audio, avec le périphérique (réel) de votre choix ET le périphérique virtuel (ex: simuler une vieille SoundBlaster16) de votre choix.

Les périphériques USB

Uniquement possible avec la version PUEL, la version OSE ne gère pas l'USB.

Pour voir en détail la prise en charge de l'USB, aller sur la page Les périphériques USB ave VirtualBox

Le répertoire de partage

Pour faciliter les échanges entre l'OS Host, et l'OS Guest, VirtualBox offre un système simple mais efficace de communication: le partage de répertoire. Avec cette option positionnée, les deux machines (réelle et virtuelle) peuvent échanger des données par ce canal (on peut le considérer un peu comme une sorte de buffer d'interface) On peut aussi échanger par le partage Netbios via Samba, cela marche également très bien.

Pour voir en détail ces différentes configurations, aller sur la page Le répertoire de partage

Le réseau

VirtualBox offre plusieurs manières de gérer l'accès au réseau de l'OS Guest : en NAT , en utilisant l'interface de l'hôte (HOST), en mode bridgé, en réseau local… Ces options sont disponibles dans les paramètres (settings) de l'OS invité (Guest).

Pour voir en détail la gestion du réseau, aller sur la page VirtualBox et le réseau

Méthode « Samba IP »

Exposée ici; virtualbox_partage avec un exemple détaillé pour un hôte Ubuntu et un invité Windows.

Autre méthode Samba

Si la première méthode ne fonctionne pas (net use… répond que le chemin réseau n'a pas été trouvé), pas d'inquiétude car la solution samba fonctionne très bien.

Prenons comme exemple de partage le répertoire « /home/moncompte/Partage », sur une machine ayant un compte d'utilisateur "moncompte" et dont la machine s'appelle "mamachine" (moncompte@mamachine:~/$).

Faire un clic droit sur le répertoire et choisir « Dossier partagé ». Installez Samba si jamais Ubuntu vous pose la question.

Puis créez un compte dans Samba, en utilisant votre compte (il est important de prendre un compte qui existe déjà sur votre Ubuntu). Faire la commande :

moncompte@mamachine:~/$ sudo smbpasswd -a moncompte

Puis aller dans votre windows Guest, et exécuter "cmd" pour avoir un terminal. Il ne reste plus qu'à y rentrer la commande :

net use M: \\mamachine\Partage

Fournir le user "moncompte" au prompt.

Les « snapshots »

Elles vous pemettent de revenir à un état antérieur. C'est une sorte d'image disque. Attention: vous devez prendre le "snapshot" lorsque la machine virtuelle est arrêtée (powered off) ou suspendue (saved) mais NON lorsqu'elle est en fonctionnement (running). Curieusement cette dernière possibilité n'est pas bloquée automatiquement par VirtualBox alors qu'elle entraîne des dysfonctionnements. :-|

Procédez de la façon suivante: ouvrez la fenêtre VirtualBox, regardez la partie droite, sélectionnez l'onglet Snapshots, puis cliquez sur l'appareil photo, renseignez et sauvegardez.

Si vous souhaitez détruire la VM, il vous faudra détruire auparavant les snapshots enregistrées. Si vous souhaitez revenir à l'état d'une snapshot, vous détruisez (discard) les étapes ultérieures, sachant que vous perdrez ce qui a été modifié ou ajouté entre temps.

Incorporer les snapshots + copie et clonnage

Article en Anglais expliquant la subtilité lexicale sous virtualbox: http://srackham.wordpress.com/cloning-and-copying-virtualbox-virtual-machines/

DANGER: la doc n' est pas claire: confusion entre ctrl+shift+D et ctrl+maj+D par exemple

Lancement direct d'une VM

Vous shuntez l'étape du serveur VirtualBox. Utilisez la commande suivante :

Attention: guillemets s'il y a un espace dans le nom, sinon les guillemets ne sont pas nécessaires.
VBoxManage startvm "nom VM"

Ou encore, si vous désirez créer un lanceur que vous placerez sur le bureau ou sur le tableau de bord et qui pointerait directement vers une machine virtuelle, sans passer par le menu principal de VirtualBox, il suffit de créer un lanceur via menu_contextuel(clic droit)–>"Créer un lanceur". Dans la petite fenêtre qui apparaît, entrer le nom de votre lanceur dans le champs "Nom" et la commande ci-dessus dans le champs "Commande".

Votre lanceur créer, vous pouvez cliquer dessus et vous aurez votre machine virtuelle.

Une autre commande peut également être utilisée : VirtualBox -startvm "nom VM". Elle permet de garder le processus en premier plan, ce qui peut etre utile si vous souhaitez lancer un script réseau (création d'un pont) avant et/ou après l'éxécution de la machine virtuelle.
Pour ceux qui ont installé la dernière version Sun xVM VirtualBox 1.6 pour Hardy Heron, il faut écrire (en respectant la casse) VBoxManage startvm "nom VM" pour que cela fonctionne.
Sous Ubuntu 9.04 (Jaunty Jackalope) et avec la version Sun xVM VirtualBox 2.2 il faut aussi écrire en respectant la casse : VBoxManage startvm "nom VM".

Si vous avez lancé en plein écran, vous pouvez reprendre la main avec Touche Host–F (touche Ctrl de droite + touche F)

Utilisation d'un disque dur physique dans Virtual Box

En voyant l'interface proposée par Innotek, vous vous dites "c'est pas possible ?"! Eh bien, détrompez-vous. C'est un peu long, il ne faut pas avoir peur, bien que l'opération soit légèrement risquée.

Avant tout, il vous faut avoir l'accès complet à ce disque. Pour ce faire, faites, dans un terminal :
 sudo chmod 777 /dev/<votre_disque>

Ceci permettra de disposer pleinement du disque, cela dit, s'il existe d'autres utilisateurs de votre station de travail, ou n'importe quel autre processus dont vous n'êtes pas sûr à 100% de son fonctionnement intègre, vous allez sans doute préférer :

sudo chown <votre_nom_dutilisateur> /dev/<votre_disque>

et pour être sûr d'avoir les droits nécessaire après cela, faites :

sudo chmod 644 /dev/<votre_disque>

Dans le fichier

/etc/udev/rules.d/10-vboxdrv.rules

ajouter à la fin du fichier la ligne suivante :

 KERNEL=="sdd", OWNER="<votre_nom_dutilisateur>", GROUP="vboxusers", MODE="0664", OPTIONS+="last_rule" 

–VM

Méthode alternative : L'ajout l'utilisateur censé accéder à la machine virtuelle au groupe "disk" permet de régler le problème des droits d'accès par une méthode plus simple et plus propre que celle proposée ci-dessus.

sudo usermod -a -G disk $USER
  • Cette méthode a l'inconvénient de donner l'accès à tous les disques du système ce qui s'avère extrêmement dangereux dans le cas où un virus (ou autre type d'intrus) réussirait à faire son entrée dans le compte utilisateur concerné. – ProgFou

Premièrement : création d'un disque virtuel particulier

Il faut créer un disque virtuel qui ne contiendra que les informations d'accès au disque physique. Un utilitaire de VirtualBox permet de configurer ceci très facilement :

(Cette commande n'est pas disponible avec virtualbox-ose, il vous faudra utiliser virtualbox-2.*)

VBoxManage internalcommands createrawvmdk -filename /<chemin>/<future_image>.vmdk -rawdisk /dev/<votre_disque> -partitions x -register

Je pense que c'est explicite, mais tout de même, je détaille.

Explication :

  • createrawvdmk → pour indiquer le type d'image que l'on veut créer, un acces raw ici.
  • -filename → le fichier image sortant (que vous utiliserez dans la VM).
  • -rawdisk → le périphérique raw, c'est-à-dire le disque dur, que vous souhaitez employer dans la VM.
  • -partitions → la ou les partition(s) du dit disque dur que vous voulez rendre accessible. Le x représente un numéro de partition, vous pouvez mettre plusieurs partitions en séparant les numéro par une virgule (,).
  • -register → indique que l'on veut sauvegarder cette image parmi la liste d'image de VirtualBox (elle sera donc présente dans son gestionnaire de disque).

ou alors vous pouvez aussi l'utiliser ainsi :

VBoxManage internalcommands createrawvmdk -filename /<chemin>/<future_image>.vmdk -rawdisk /dev/<votre_disque_entier> -register

par <votre_disque_entier> j'entends par exemple 'sda', ce qui aura pour effet de démarrer sur votre grub habituel.

Dans ce cas là, faites bien attention à ne pas repartir sur le même ubuntu que celui qui fait tourner a machine virtuel ! Les conséquences pourraient être facheuses.
Si vous obtenez le message d'erreur suivant :
VirtualBox Command Line Management Interface Version 1.5.6
(C) 2005-2008 innotek GmbH
All rights reserved.

Error opening the raw disk: VERR_ACCESS_DENIED</file>

C'est que vous n'avez pas l'accès nécessaire au disque (voir un peu plus haut).

Deuxièmement : configuration de la machine virtuelle

Ouvrez VirtualBox comme à vos habitudes, et créez une nouvelle machine. Assignez lui le système d'exploitation correspondant, et l'image de disque que vous venez de créer. Validez cette configuration et enfin lancez votre machine.

Vous pouvez bien sûr éditer vos préférences pour cette machine comme pour toute autre machine. Elle n'a rien de différent des autres machines, hormis le fait qu'elle accède directement à un disque.
Un problème important a lieu avec Windows XP en guise de système invité, en outre son incapacité à changer de profil matériel comme de chemise, il refuse de se lancer.

1) Méthode 1

Une solution probable serait d'employer une méthode à la VMware :

Repérez le disque dur que vous voulez utiliser dans la VB, et montez-le :

sudo mount /dev/<votre_disque> /<votre_point_de_montage> -t <le_système_de_fichier>

Si ce disque est déjà présent dans votre fstab, il suffit de faire :

sudo mount /dev/<votre_disque>

N'oubliez pas que vous pouvez avoir un problème de montage avec les NTFS, donc documentez-vous à ce sujet en lisant ce tutoriel.

Vous allez avoir besoin d'une disquette de démarrage. Voici le lien donné par un contributeur dans la section VMWare Server : http://sebseb.31.free.fr/pub/vmware/floppy_boot_xp.img

Téléchargez puis montez l'image de disquette de démarrage de Windows XP :

sudo mount floppy_boot_xp.img /<votre_point_de_montage> -o loop

Le plus courant pour cette fonction est :

sudo mount floppy_boot_xp.img /media/floppy0 -o loop

Copiez le fichier boot.ini de la partition d'amorce de windows XP dans la disquette d'amorce que vous venez de monter :

sudo cp -fv /<point_de_montage_du_disque_windows>/boot.ini /media/floppy0

Ceci fait, on démonte ces disques :

sudo umount /media/floppy0
sudo umount /dev/<votre_disque>

Et servez-vous de cette disquette (c'est-à-dire du fichier floppy_boot_xp.img) pour démarrer dessus dans votre VB.

2) Méthode 2

Créez un MBR:

sudo apt-get install mbr
install-mbr ~/.VirtualBox/WindowsXP.mbr --force
VBoxManage internalcommands createrawvmdk -filename ~/.VirtualBox/Windows.vmdk -rawdisk /dev/sdb -partitions 1 -mbr ~/.VirtualBox/WindowsXP.mbr -relative -register

Pour un windows sur /dev/sdb1

Et, important, il faut activer l'option "IO APIC" pour booter un windows existant (utiliser le CD de XP et l'option réparer a partir de VirtualBox pour repasser a l'anceinne gestion ACPI)

Compresser un disque dur virtuel

Une image disque à taille dynamique est agrandie en fonction des besoins de l'OS guest. Mais elle ne diminue pas si l'espace n'est plus occupé. Ceci peut devenir gênant, donc voila une solution pour réduire l'espace occupé par l'image disque à son espace réellement occupé. Cette solution consiste à cloner le disque dur sur un second, qui recevra alors uniquement les données écrites.

  • Créer un nouveau disque dur à taille dynamique, dont la taille est égale ou supérieure au disque qu'on souhaite compresser.
Clonezilla, qui sera utilisé par la suite, ne peut pas cloner un disque vers un disque de taille inférieure
  • Ouvrir les préférences de la VM concernée. Et ajouter le nouveau disque dur en attachements en tant que IDE Primaire Esclave.
  • La taille des disques étant probablement identique, seul l'UUID permettra de les différencier sous Clonezilla. Pour connaître l'UUID des disques virtuels, taper ceci dans un terminal.
VBoxManage showvminfo "Nom de la VM"
  • Télécharger Clonezilla et le monter dans la VM.
  • Démarrer la VM et lancer Clonezilla.
  • Choisir device-device disque/partition vers disque/partition pour cloner le disque.
  • Choisir disque local vers disque local pour utiliser les disques en attachements de la VM.
  • Effectuer le clonage du disque contenant le système (celui qui doit être compressé) vers le nouveau disque dur (encore vierge).
  • Après le clonage, éteindre la VM.
  • Réouvrir les préférences de la VM. Retirer le disque dur d'origine des attachements de la VM, afin de garder uniquement le nouveau disque dur qui vient de recevoir le clonage.
  • Modifier l'emplacement du disque pour le placer en IDE Primaire Maître.
  • Vous pouvez maintenant supprimer l'ancien disque dur.
  • La VM occupe à présent uniquement l'espace qui lui est strictement nécessaire. Évidemment rien ne lui empêche de continuer à grossir. Cette opération peut donc être répétée par la suite.

Erreur lors du lancement de VirtualBox après une mise à jour

Si vous obtenez un message du type :

VERR_VM_DRIVER_VERSION_MISMATCH

Tapez :

sudo /etc/init.d/vboxdrv setup

Si vous obtenez un message du type :

VERR_SSM_UNSUPPORTED_DATA_UNIT_VERSION

C'est parce que votre machine virtuelle n'a pas été fermée, mais est restée dans un état de sauvegarde. Désinstallez la nouvelle version, revenez à la version précédente, ouvrez votre machine virtuelle, puis refermez-la (option « Arrêter l'ordinateur »). Réinstallez la nouvelle version de VirtualBox et vous pourrez ouvrir à nouveau votre machine virtuelle.

Erreur lors du lancement de VirtualBox

Si vous obtenez un message du type :

mv: ne peut déplacer /home/VotreNom/.virtualBox/ … vers …

Il faut vous redonner les droits sur ce dossier caché avec cette commande :

sudo chown utilisateur:utilisateur -R .VirtualBox

Remplacer utilisateur par votre nom de connexion.

Apparition d'une fenêtre avec le message "Spawning session..."

Si au lancement d'une VM, une petite fenêtre s'ouvre avec le message "Spawning session…" et que celle-ci reste bloquée à 0%, vous devez :

  • fermer virtualbox ou tuer le processus si besoin
  • Recompiler le module en tapant dans un terminal :
sudo /etc/init.d/vboxdrv setup

Erreur au lancement d'une VM

Si vous obtenez un message du type :

VBox status code: -1909 VERR_VM_DRIVER_NOT_ACCESSIBLE

Vous devez rétablir les droits sur /dev/vboxdrv. Pour cela, taper :

sudo chgrp vboxusers /dev/vboxdrv
sudo chmod 666 /dev/vboxdrv
Si les utilisateurs de VirtualBox appartiennent bien au groupe « vboxusers » vous ne devriez pas avoir de soucis. Pour le vérifier depuis Gnome, utilisez Système → Administration → Utilisateurs et groupes. Pour voir en console a quels groupes l'utilisateur courant appartient, tapez simplement :
groups

Pour ajouter un ou des utilisateur(s) au groupe « vboxusers », référez-vous au paragraphe « Installation de VirtualBox ».

Erreur au lancement d'une VM

VirtualBox can't operate in VMX root mode. Please disable the KVM kernel extension, recompile your kernel and reboot.
VBox status code: -4011 (VERR_VMX_IN_VMX_ROOT_MODE).

Pas besoin de recompiler le kernel, il vous suffit de supprimer le module KVM en fonction de votre processeur :

  • intel
sudo modprobe -r kvm_intel
  • amd
sudo modprobe -r kvm_amd

Erreur au lancement d'une VM

Si vous obtenez un message du type :

VBox status code: -102 (VERR_FILE_NOT_FOUND)

C'est parce que le matériel de votre ordinateur a changé (ex : lecteur DVD retiré, …)

Il faut rejeter la machine, aller dans les préférences et supprimer ce matériel pour la machine

Erreur au lancement d'une VM

Si vous obtenez un message du type :

VirtualBox kernel driver not installed. The vboxdrv kernel module was either not loaded or /dev/vboxdrv was not created for some reason. Please install the virtualbox-ose-modules package for your kernel, e.g. virtualbox-ose-modules-generic..
VBox status code: -1908 (VERR_VM_DRIVER_NOT_INSTALLED).

Suivre le conseil donné: installer virtualbox-ose-modules-XXX selon le type de votre noyau:

uname -r

exemple de résultat sous Hardy:

2.6.24-19-generic

il faut donc installer le paquet apt://virtualbox-ose-modules-generic-2.6.24-19-generic

De manière générale, on peut utiliser la commande suivante :
sudo apt-get install virtualbox-ose-modules-`uname -r`
Version OSE Après une mise à jour du noyau, il peut s'écouler un certain temps avant que les paquets correspondants pour Virtualbox-ose soient disponibles.

Si le module pour un nouveau noyau est manquant, on peut le créer avec module-assistant :

On télécharge les sources de virtualbox-ose :

sudo apt-get install virtualbox-ose-source

On crée le module (si la commande m-a renvoie une erreur, installer le paquet apt://module-assistant) :

sudo m-a prepare virtualbox-ose
sudo m-a a-i virtualbox-ose

Et on le charge :

sudo modprobe vboxdrv

Pour automatiser le chargement du module au démarrage du système, il suffit de rajouter "vboxdrv" à la fin du fichier /etc/modules (il y sera déjà si un module a été installé auparavant).

Version non OSE Ce message peut arriver lors de la mise à jour du noyau (kernel).

Il faut recompiler le kernel, dans un terminal: sudo /etc/init.d/vboxdrv setup , Après la recompilation, relancer VirtualBox

Erreur au lancement d'une VM

Si vous obtenez un message du type :

VBox status code: -1825 (VERR_SSM_LOAD_CONFIG_MISMATCH)

C'est que la machine virtuelle était en veille, et VirtualBox a été réinstallé. Rejetez la machine virtuelle (équivaut à un arrêt brutal de la machine), et relancez-la.

Écran noir après le menu d'accueil d'un CD

Si juste après avoir sélectionné « Lancer Ubuntu » ou « Lancer Kubuntu » vous obtenez un écran noir et plus rien ne se passe, redémarrez la VM. Attention ne la fermez pas, faites juste Machine → Redémarrage ou encore « Host+R ».

Écran noir après le démarrage de windows

Il est possible qu'après avoir lancé windows dans votre VM, vous vous retrouviez avec un écran noir, juste avant que le logo windows avec sa barre de chargement n'apparaissent. Si c'est le cas vous pouvez essayer d'<activer l'IO APIC> dans les préférences de votre VM dans la partie général, dans l'onglet avancé.

Mode plein écran

Si en passant en mode plein écran, votre machine virtuelle reste affichée entourée d'un large cadre noir :

1/ Si ce n'est déjà fait, installez les "additions client". (Si vous avez installé la version OSE, avec Windows en invité sous Ubuntu, voir ici.)

2/ Si, après avoir installé les additions client, vous n'avez toujours pas la possibilité de modifier la résolution écran dans XP invité (sous XP : dans "Propriétés –> Paramètres… régler la résolution…"), par exemple si le curseur est bloqué sur 800 x 600, et qu'il est impossible de le déplacer et donc d'augmenter ainsi la résolution, vous pouvez faire ceci :

  • Arrêter Virtualbox s'il est déjà démarré.
  • Lancer dans un terminal la commande suivante, en indiquant la résolution maximale souhaitée (celle de votre écran), 1280 x 800 dans notre exemple :
VBoxManage setextradata global GUI/MaxGuestResolution 1280,800
  • Puis lancer successivement les deux commandes suivantes :
sudo /etc/init.d/vboxdrv stop

(vous aurez dans le terminal ce message : "Stopping VirtualBox kernel module vboxdrv") puis :

sudo /etc/init.d/vboxdrv start

(vous aurez dans le terminal le message "Starting VirtualBox kernel module vboxdrv [ OK ]"

  • Redémarrer Virtualbox et l'invité (XP dans notre exemple). On peut alors régler la résolution. Vous n'aurez peut-être pas la possibilité de régler en "1280 x 800", mais en utilisant les touches "Ctrl" de droite (maintenue appuyée) puis "F", l'invité se mettra en plein écran à la bonne résolution.

Il peut être nécessaire aussi d'activer l'ajustement automatique de la taille de l'écran de l'invité (soit par le menu "Machine" de Virtualbox, soit en utilisant les touches Host (Ctrl de droite) + G.)

3/ Dans d'autres cas, vous pouvez utiliser la commande suivante :

VBoxSDL -vm <nom_de_votre_machine_virtuelle_ou_l'UUID> -fullscreen
Cette commande lance directement votre machine virtuelle, et ne vous donne donc pas accès a toutes les options de configuration de Virtualbox. Il faut donc vous assurer de tout paramétrer correctement avant de l'utiliser au quotidien.
Un petit réajustement de l'écran « touche Host+A », suivi de « touche Host+F » peut aussi suffire pour y arriver.

Fenêtre transparente

Ce problème apparait à cause de Compiz. Pour résoudre ce problème 2 solutions sont possibles:

Via le manager de compiz

Si vous ne l'avez pas encore installé référez-vous à installation.

Une fois le gestionnaire ouvert, allez dans la catégorie "Gestion des fenêtres" puis cochez et ouvrez "Règles de Fenêtre". Puis sous "Pas de visuels ARGB" collez ceci :

title=Sun VirtualBox

Fermez ensuite le gestionnaire, réouvrez VirtualBox et le tour est joué :-)

En modifiant la commande à exécuter

il faut remplacer la commande à exécuter "VirtualBox" par "env XLIB_SKIP_ARGB_VISUALS=1 VirtualBox"

Dans certain cas, cela ne fonctionne que si l'accélération 3D est désactivée.

AMD 64

VirtualBox fonctionne sous Ubuntu 64 bits, et permet à présent l'émulation d'un système d'exploitation 64 bits avec VirtualBox V2

Vista 64 bits Guest

pour régler les problèmes de son et de réseau pouvant exister lors de la virtualisation de Vista SP1 64 bits

Réseau - Vista 64 bits

configurer un adaptateur comme ci après :

type d'adaptateur : Intel PRO/1000 MT Desktop (8254OEM)

attaché à : NAT

les pilotes sont sur le CD des Guest Additions

Audio - Vista 64 bits

Choisir comme Pilote hôte : Pilote audio ALSA ; et comme contrôleur : ICH AC97

Télécharger les pilotes AC97 sur le site http://www.realtek.com.tw/downloads/

Accepter les conditions

Ensuite télécharger Vista/Win7 (32/64 bits) Driver only (ZIP file) (~30Mo) téléchargement rapide possible par serveur ftp en choisissant Express

Placer le fichier téléchargé dans un répertoire de partage - le décompresser

Installer le pilote (je suis passé par le gestionnaire de périphérique de Vista pour l'installation) vérifier le son ;-)

Noyau SMP

VirtualBox ne gère la virtualisation que d'un seul processeur. Sur les processeur dual-core, chaque session VirtualBox ne tournera que sur un processeur. Pour exploiter plusieurs processeurs ou plusieurs core de processeur, utiliser kvm

Erreur en écriture de l'Invité

Pour un SE Invité de type Windows XP, si vous avez une image disque .vdi définie en dynamique, il se peut que votre SE Invité vous renvoie une erreur en écriture (sur par exemple le fichier temporaire lors d'une installation de logiciel). Pour résoudre ce problème, il faut créer une image disque fixe (source). Pas de solution, actuellement, pour conserver son image disque dynamique.

Une autre possibilité consiste à utiliser la FAT32 pour formater ce disque virtuelle, car effectivement le type NTFS supporte mal un disque à image dynamique.

Erreur de kernel au lancement

cette erreur fait suite à une mise à jour du kernel de votre distribution. Pour corriger le problème: quitter Virtualbox ou

killall VirtualBox 

- puis lancer dans une console la commande:

sudo /etc/init.d/vboxdrv setup

et attendez les messages suivants:

* Stopping VirtualBox kernel module * done.
* Recompiling VirtualBox kernel module * done.
* Starting VirtualBox kernel module * done.

relancer Virtualbox.

Changer la résolution d'écran avec les Lives CD Ubuntu

Lorsque l'on utilise un Live CD Ubuntu sous virtualbox, la résolution d'écran est limitée à 800x600. Pour obtenir une résolution supérieur :

Ceci concerne uniquement Les Lives CD Ubuntu, si vous virtualisez une version installée, utiliser les pilotes invités
  • Editer le fichier /etc/X11/xorg.conf avec les droits d'administration.
  • Dans la section "Monitor", ajouter la ligne :
HorizSync         31.0 - 67.0
  • Enregistrer les changements.
  • Puis fermer et redémarrer une nouvelle session.

Pour supprimer cette application, il suffit de supprimer son paquet. La configuration de l'application sera conservée ou supprimée selon la méthode de désinstallation que vous choisirez.

  • utilisateurs/brazz/virtualbox.1258065058.txt.gz
  • Dernière modification: Le 18/04/2011, 14:43
  • (modification externe)