archilinux.org - architecture, linux et infographie

découvrir, utiliser le système gnu/linux et les logiciels libres, par la pratique










ARCHITECTURE


LINUX


TECHNIQUES


MATERIEL


DIVERS


Rechercher :


Voir le glossaire pour les termes employés


A propos de ce site et de l'auteur


Accueil du site


me contacter



VirtualBox – une machine virtuelle



VirtualBox est une machine virtuelle et permet d'installer un système d'exploitation différent sous Linux et ainsi avoir par exemple la possibilité d'utiliser des logiciels qui n'y fonctionnent pas ordinairement.

L'un des intérêt à cet type d'utilisation est d'avoir le système d'exploitation GNU/Linux installé sur l'intégralité du disque dur, pour un usage courant de votre ordinateur (gestion et retouche photo, internet sans virus, bureautique, …). Par ailleurs, si vous utilisez MS Windows, vous l'installez sur la machine virtuelle avec les logiciels que vous ne pouvez utiliser sous Linux (Autocad, IE pour tester un site internet, des pilotes et utilitaires d'impression très spécifique pour des tirages photos très fins, …).

L'usage de votre ordinateur n'est pas ralentis et il est possible d'avoir des logiciels ouverts sur Linux et dans la machine virtuelle. Après Qemu, j'ai essayé Virtual Box et là franchement, j'ai été conquis !


J'ai fait tourné Virtual Box sur un portable équipé d'un processeur Celeron et avec 2Go de RAM. Bon, justement ça rame un peu mais cela reste fonctionnel. C'est mieux sur une machine plus pêchue. L'idéal est un processeur double cœur au minimum, pour un vrai confort. La raison est que la machine virtuelle partage les ressources du système hôte (RAM, CPU, GPU). Vous déterminez le % partagé. Pour certains logiciels ou OS gourmands, cela peut être lent à l'usage.


Pour toute questions sur les procédures utilisées ici, n'oubliez pas le Glossaire ou le moteur de recherche (ci-contre à gauche).

http://www.virtualbox.org/



Installation



Avant toute chose votre BIOS ou UEFI doit pouvoir accepter la Virtualisation du processeur. Là cela dépend de votre machine. Il y a une case à cocher ou une ligne à faire apparaître au démarrage du PC dans le bios/efi. Souvent c'est validé par défaut sur les machines récentes.



La version que l'on trouve dans la plus part des distributions GNU/Linux est nommée OSE. Elle est totalement libre et « pure » de tout logiciel propriétaire. Du coup certaines choses ne fonctionnent pas comme la détection de l'USB. Il est donc conseillé de désinstaller VirtualBox OSE si elle est présente, avant d'installer la « non-OSE » qui est plus performante.


D'une manière générale, les instructions d'installation sont en bas de la page de téléchargement du site VirtualBox. Je donne ici une procédure parmi d'autres à titre d'exemple. Regardez bien les instructions du site VB !

Avoir également le manuel de l'utilisateur en français :

http://download.virtualbox.org/virtualbox/UserManual_fr_FR.pdf

http://www.virtualbox.org/wiki/Linux_Downloads





Pour l'installer, pour une distribution de type RPM allez sur le site pour chercher le paquet correspondant à votre système,

Je détaille ici l'installation pour une distribution de type Debian/ubuntu et en mode console. Pour une installation graphique, reportez vous à l'article sur Synaptic. Ce dernier est l'interface graphique de la commande apt-get (que j'utilise ci-dessous) et est plus facile à utiliser.


Pour ouvrir le fichier simplement à partir d'une fenêtre console, tapez (ubuntu / Gnome) :

sudo gedit /etc/apt/sources.list


Ajoutez à la fin la ligne correspondant à votre version de distribution Linux. La liste ci-dessous étant ancienne, vérifiez quand même avant sur le site de VirtualBox :

deb http://download.virtualbox.org/virtualbox/debian karmic non-free
deb http://download.virtualbox.org/virtualbox/debian jaunty non-free
deb http://download.virtualbox.org/virtualbox/debian intrepid non-free
deb http://download.virtualbox.org/virtualbox/debian hardy non-free
deb http://download.virtualbox.org/virtualbox/debian gutsy non-free
deb http://download.virtualbox.org/virtualbox/debian dapper non-free
deb http://download.virtualbox.org/virtualbox/debian lenny non-free
deb http://download.virtualbox.org/virtualbox/debian etch non-free
deb http://download.virtualbox.org/virtualbox/debian sarge non-free
deb http://download.virtualbox.org/virtualbox/debian xandros4.0-xn non-free


Il y a aussi une clef sécurisée à charger pour garantir l'authenticité des fichiers téléchargés par la suite. Elle n'est pas obligatoire mais évite d'avoir un message d'erreur. Vous la récupérez en tapant dans une console (mode super utilisateur) :


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


Pour plus de facilité, vous pouvez copier les lignes de commandes (en bleu) de cet article et les insérer dans une fenêtre console en pressant les touches MAJ+Inser. Le symbole - | sudo est « grep » qu l'on obtient en presant ALT Gr + 6.


Ensuite vous faites une mise à jour des sources d'installation : apt-get update


Et vous installez VirtualBox (Attention, le numéro en fin de ligne dépend de la version du moment à voir sur le site de Virtualbox) : apt-get install virtualbox-3.0


La licence d'utilisation peut s'afficher. Confirmez à l'aide de TAB ou les flèches pour vous déplacer (si nécessaire) et la barre d'espace pour sélectionner.


Il est possible que l'on vous propose d'ajouter un compte et un groupe pour l'utiliser, puis après une compilation. Confirmez de la même façon.


Si ce n'est pas fait à ce moment de l'installation, nous verront après comment le faire (c'est indispensable).


Enfin, si vous utilisez Ubuntu, il est conseillé d'installer dkms pour être sûr que lors de la prochaine mise à jour de votre système (apt-get upgrade), les modules (vboxdrv, vboxnetflt and vboxnetadp) soient mis à jour si la version du noyau linux change. Tapez : apt-get install dkms


Ensuite, si cela n'a pas été proposé durant l'installation, vous devez créer un compte vboxusers, toujours dans une console et en mode super utilisateur :

adduser $LOGNAME vboxusers puis (si absent un groupe) groupadd vboxusers et enfin -u $USER -s


Pour utiliser vos périphériques usb (Attention, cette ligne n'est plus nécessaire sur les versions à partir de 2014 sauf si problème matériel) :

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


Puis mount /proc/bus/usb et enfin /etc/init.d/vboxdrv setup


Pour lancer VirtualBox, allez le chercher dans le menu de votre système ou faites Alt+F2 et tapez VirtualBox


Retourner en haut de la page



Utilisation



Cliquez sur Nouveau pour créer une machine virtuelle. Puis laissez vous guider par les explications des différentes boîtes de dialogue. L'avantage de ce logiciel est qu'il est parfaitement francisé. Cliquez sur suivant.


Pour l'exemple, je vais partir du principe que le but est d'installer Windows XP. Je vais donc nommer la machine WinXP. Mais cela n'a pas d'importance et vous pouvez la renommer ou y installer autre chose que Windows.

Par contre vous devez choisir en fonction de l'installation voulue, le type de système d'exploitation et sa version.

Cliquez sur suivant.


Choisissez ensuite la part de la mémoire RAM de votre ordinateur qui sera allouée à la machine virtuelle. Tout ne sera pas forcément utilisé lors de son utilisation mais c'est le plafond maximum. Il est conseillé de ne pas dépasser la moitié de votre RAM. Par exemple pour 2Go, ne dépassez pas 1Go (1000Mo). J'ai toutefois déjà utilisé Windows avec 128Mo mais c'est moins performant. C'est une valeur qui que vous pouvez modifier par la suite (dans les préférences de la machine virtuelle). Cliquez sur suivant.


Vous devez à présent créer un disque virtuel ou en utiliser un existant (pas lorsque c'est la première utilisation de VirtuelBox). Cliquez sur suivant.


Je vous conseille un « image disque à taille dynamique », c'est à dire que vous déterminez une taille de disque maximum, ce qui permet d'avoir en début une taille de fichier image (disque dur virtuel) égale à la place utilisée par le système d'exploitation installé. Ainsi par exemple au début, vous installez Windows et l'image fait environ 2Go. Lorsque vous y installez des logiciels ou y travaillez, l'image du disque augment peu à peu. C'est plus rapide et moins lourd pour une petite configuration matérielle. Cliquez sur suivant.


Vous choisissez ensuite son emplacement (ici WinXP), puis sa taille (pour cet exemple 10Go). Cliquez sur suivant. Vérifiez le récapitulatif des opérations et cliquez sur Terminer et sur le récapitulatif général, encore sur Terminer. Ci après, plusieurs machines crées pour mes différents tests, avec à droite leurs caractéristiques :



Lorsque vous sélectionnez une machine virtuelle et cliquez sur Préférences, vous avez la possibilité de modifier certains des paramètres précédemment choisis ou d'en affiner d'autres.



Général, contient des renseignements sur la machine virtuelle.


Système, permet de préciser la RAM allouée, le nombre de cœurs / processeurs alloués, les caractéristiques de la carte-mère virtuelle (IO-APIC, …) et les accélérations possibles du processeur(s) virtuel.


Dans Affichage, vous choisissez la taille de la VRam (mémoire vidéo) allouée à la machine virtuelle, s'il y a lieu d'avoir des accélérations 2D et 3D, gérer des bureaux à distance et la capture vidéo.


Concernant les éléments physiques alloués à la machine virtuelle (RAM, Vram, CPU, …) VirtualBox vous prévient lorsque le système devient limite ou franchement incompatible avec vous réglages.


Stockage,

Lorsque vous cliquez sur le type de Contrôleur, vous pouvez ajouter un lecteur optique (CD/DVD) ou un disque dur en cliquant sur l'une des icône qui apparaît à droite de l'intitulé.



Pour installer Linux, l'idéal est de choisir une image ISO et de cocher à droite Live CD/DVD


Son, vous permet de paramétrer les périphériques audios. Comme la machine virtuelle utilise les ressources de la machine hôte automatiquement, si cette dernière fonctionne vous n'avez normalement rien à toucher.


Dans Réseau, activez votre carte si vous êtes connecté à modem ADSL via un câble ethernet (ou un réseau tout simplement). Pour les mêmes raisons que les périphériques audio, si cela fonctionne sur vôtre système hôte, vous n'avez pas de raison d'y toucher (sauf si après démarrage, cela ne fonctionne pas avec la machine virtuelle). Il peut aussi être nécessaire de désactiver l'accès internet de la machine virtuelle. Dans ce cas décochez câble branché dans les options avancées.


Port série, ne sert plus vraiment sauf pour utiliser du vieux matériel.


USB, la plus part du temps, les périphériques claviers/souris fonctionnent parfaitement. Par contre pour utiliser une imprimante par exemple, vous devez installer le VirtualBox Extension Pack (à télécharger sur https://www.virtualbox.org/wiki/Downloads). La version du pack doit être la même que celle de VB. Il est précisé que cela concerne l'USB2 mais mon imprimante est en USB1 et elle ne fonctionne que si j'installe le pack.

Une fois téléchargé, ouvrez VB, allez dans le menu Fichier, puis Paramètres, Extensions, et enfin cliquez sur Ajouter. Choisissez le fichier du pack, puis validez l'installation, puis validez la licence. Votre mot de passe root est requis (sous Linux) ou administrateur (en fonction de votre installation de Windows, ce n'est peut être pas demandé).

Retournez sur USB, cochez Activer le contrôleur USB 2.0 et ajoutez un filtre (icône cerclée de rouge ci-dessous à droite). Normalement c'est bon pour chacune de vos machines virtuelles.




Pour Linux, il est nécessaire de donner à votre nom d'utilisateur (user) les droits d'accès à Vboxuser. Le principe est le même quelque soit votre distribution mais le chemin et certains noms peuvent varier (cela ne se fait pas dan VirtualBox). Par exemple, sous Xubuntu, je vais dans System, puis Users and Groups, puis Manage groups. Dans le cadre je choisis VboxUser, je l'édite et je coche le nom de mon user.

Plus simplement en console (en mode superuser) : usermod -G vboxusers -a votre_nom_user

Il est normalement nécessaire de redémarrer la session (voir l'ordinateur).

Dernière étape dans la machine virtuelle. Vous la lancez depuis VB. Une fois le système invité fonctionnel, allez dans le menu en haut de la fenêtre de la machine virtuelle et choisissez Périphériques, puis dans le menu déroulant choisissez Périphériques USB. Vous devez y voir l'ensemble des périphériques connectés. Sélectionnez l'imprimante. Dans le menu invité vous pouvez désormais l'utiliser. Attention toutefois il peut être nécessaire de l'y installer (dans Windows par exemple).



Important : un périphérique ne peut être utilisé que dans un système à la fois. Si vous l'utilisez dans le système invité (machine virtuelle), pour l'utiliser dans le système hôte, retournez dans Périphériques, puis Périphériques USB pour l'y désélectionner.


Répertoires partagés, il est indispensable d'en créer un afin de pouvoir travailler simultanément sur Linux et Windows, et d'échanger des fichiers entre les deux systèmes. Vous devez choisir un répertoire dans votre dossier utilisateur, par exemple : /home/user/MachineVirtuelle/. N'oubliez pas de cocher Montage automatique pour faciliter l'accès à ce répertoire à chaque session.


Retourner en haut de la page



Installation d'un système virtuel (exemple avec Windows)



Avant de démarrer la machine virtuelle, insérez le CD/DVD d'installation dans le lecteur, puis allez dans les préférences pour le sélectionner (dans Disque Optique). Vous pouvez aussi travailler à partir d'un fichier ISO que vous sélectionnez directement dans les préférences.


Cet écran apparaît toujours au démarrage d'une machine virtuelle.


Ensuite, fermez les préférences et cliquez sur le bouton Lancez.

Suivez la procédure d'installation du nouveau système d'exploitation. De ce coté, rien ne change. Les redémarrages nécessaires à l'installation sont plus rapide, ainsi que la copie des fichiers sur le disque dur virtuel.


Dans l'ensemble, l'installation d'un système virtuel se déroulant pour beaucoup en mémoire RAM, c'est plus rapide que sur un disque dur (même si les données sont sauvées dans un fichier image). Voilà, c'est terminé, vous avez maintenant un système parfaitement fonctionnel.


Un élément important à noter. Vous ne pourrez pas forcément installer tous les pilotes de vos composants d'ordinateur dans la machine virtuelle car celle-ci reconnaît l'essentiel comme des éléments génériques. Ainsi, je n'ai par exemple pas pu installer ma carte graphique Nvidia sous Windows (du moins pour le moment) mais cela ne pose pas de problème parce que la machine virtuelle se base sur ce qui est reconnu sous Linux.



Dernière étape, installez les Addons Invités (VboxGuestAdditions). Allez dans le menu de la machine virtuelle et cliquez sur Périphériques. En bas du menu déroulant, cliquez sur installez les Addons invités (le nom peut légèrement varier selon les version de Virtualbox).

Sous Windows, cela se fait automatiquement. Vous gagnerez entre autres avec Les Addons, un usage « transparent » entre votre système d'exploitation courant et celui de la machine virtuelle (passage de la souris de l'un à l'autre).

Sous Linux, l'automatisme fonctionne avec les distributions les plus courantes (Ubuntu) par contre avec des dérivés ou des distributions anciennes, il faut le faire en manuel. Montez le CD des Addons invités, ouvrez une console dedans en superuser et lancez à la suite : ./autorun.sh puis VboxLinux*.run

Redémarrez le système invité, la fenêtre de la machine virtuelle peut être mise en plein écran avec le système invité et la souris peut sortir de la fenêtre sans avoir à appuyer sur le bouton Host (par défaut touche Ctrl droite).



Attention : dans certains cas, il semble que pour installer les Addons, l'USB2 ne doit pas être activé (voir plus haut). Vous pouvez activer l'USB2 et ajouter un filtre après l'installation des Addons.

Retourner en haut de la page



Dans la pratique



En haut à gauche de la fenêtre de la machine virtuelle, vous avez des menus pour en gérer au mieux l'usage. Les raccourcis clavier sont affichés et souvent très utiles. Par exemple, vous pouvez déterminer une touche qui une fois pressée, permet de sortir le curseur de la souris pour allez dans Linux. Par défaut sur un clavier de 105 touches et plus, il s'agit du CTRL de droite. Ainsi, si vous passez en mode « plein écran », vous l'obtenez en pressant CTRL (droit) + F


Dans le cas d'un plein écran, le menu supérieur apparaît en bas, au milieu de l'écran et seulement au passage de la souris.


En bas à droite, vous avez notamment le rappel de cette touche, ainsi que des indicateurs sur l'activité du système et des périphériques.


Pour accéder au répertoire partagé avec Linux, ouvrez l'explorateur Windows et faites un clic droit sur « Favoris réseau » puis dans le menu, choisissez « Connectez un lecteur réseau ».



Dans la boîte de dialogue, choisissez une lettre de lecteur puis cliquez sur Parcourir pour choisir le répertoire, dans VirtualBox Shared Folders, dans lequel se trouve le répertoire partagé déterminé dans les préférences de la machine virtuelle. Vous pouvez dès lors vous connecter à ce lecteur et partager des fichiers entre les deux systèmes. Il apparaîtront sous Linux dans l'explorateur de fichiers.


Attention, ceci est surtout valable pour des versions anciennes de VirtualBox. Depuis la 4.0 cela se fait automatiquement. Allez dans Configuration (sur le cadre principal de VB), puis Dossiers partagés. Cliquez sur Ajouter (icône à droite ou touche clavier Inser). Choisissez un répertoire, nommez-le puis cliquez sur Montage Automatique. Ce sera opérationnel au prochain démarrage de la machine virtuelle.


Plugin de lancement



Il existe des plugins pour lancer les machines virtuelles directement depuis la barre des tâches de votre distribution, sans passre par le VB Manager.

Par exemple, avec Linux Mint, j'utilise Vbox Launcher qui s'installe à partir du gestionnaire d'applets.



Retourner en haut de la page



Notes



VirtualBox permet aussi d'utiliser tout autre système d'exploitation tel FreeBSD ou Mac OSX. C'est pour moi un bon moyen de tester une autre distribution GNU/Linux, faire des essais de logiciels sans planter mon système Ubuntu, etc. ...


Important : si votre ordinateur n'est pas très récent, évitez les gadgets (ex Gdesklets) sur le bureau ou les effets comme Compiz qui prennent parfois trop de ressources système et ralentissent certains logiciels lors de l'utilisation de la machine virtuelle (surtout lorsqu'on y fait fonctionner des logiciels de graphisme ou des jeux).


Pour une configuration matérielle plus précise, je me suis basé sur la documentation Ubuntu qui s'est avérée précieuse, également pour l'installation, la documentation officielle du site de VirtualBox étant lourde à digérer ...


J'ai installé sans problème Windows XP, 7, 8, 10, ainsi que Ubuntu, Xubuntu, Minth, … que ce soit sous Linux ou sous Windows.

Cette dernière possibilité vous permettra d'utiliser Linux sur votre poste Windows sans avoir à le modifier (mais vu la lourdeur de Windows il vaut mieux faire l'inverse – Poste Linux et machine virtuelle Windows).




Sauver ou déplacer vos installations



Il est possible de sauver les machines virtuelles et de les archiver ou les placer sur un autre ordinateur. C'est par exemple intéressant si vous comptez installer le même OS virtuel sur plusieurs ordinateurs. En sommes, vous l'installez une fois, puis vous le copiez. Ensuite il suffit, pour chaque machine, d'éditer quelques fichiers pour adapter la configuration à un nouvel utilisateur.


Le répertoire contenant les fichiers de configuration de VirtualBox est caché. Ouvrez l'explorateur de fichiers. Pressez simultanément CTRL+H (ou allez dans le menu gérant l'affichage) pour faire apparaître les fichiers cachés : /home/nom d'utilisateur/.VirtualBox/


Le second répertoire (non caché) à sauver est /home/nom d'utilisateur/VirtualBox VMs/ . Chacun de ses sous répertoire correspond à une machine virtuelle installée. Les fichiers contenus peuvent faire plusieurs gigas. Il est alors indispensable de copier /VirtualBox Vms/ sur une partition NTFS ou Linux (ext, …) pour y enregistrer des fichiers supérieurs à 4Go.


Copiez ces répertoires sur un support externe pour les archiver. Vous pouvez aussi les compresser (tar, zip, ...).


Pour le mettre sur une autre machine, procédez de même CTRL+H puis copie des répertoires. Attention, si vous avez déjà une installation de machine virtuelle sur ce nouvel ordinateur, vous devez la supprimer avant en effaçant les mêmes répertoires (évite la juxtaposition de fichiers inutiles ou contradictoires). Cette ancienne installation sera donc perdue.



Il s'agit de modifier certains fichiers où figure /home/utilisateur1 (utilisateur1 étant le nom de l'utilisateur de l'ordinateur d'où vient VirtualBox), en le remplaçant par /home/utilisateur2 (celui où vous l'avez copié). VirtualBox ne doit pas être démarré durant l'édition des fichiers.


Ouvrez /home/nom d'utilisateur2/.VirtualBox/ et éditez les fichiers VirtualBox.xml et VirtualBox.xml-prev afin d'y remplacer utilisateur1 par utilisateur2. Normalement le fichier xml-perv est une sorte de fichier BAK et il n'est pas utile de le modifier. Ne le faire qu'en cas de problème.


Ouvrez /home/nom d'utilisateur2/VirtualBox Vms/ et, dans chaque répertoire de machine virtuelle, éditez les fichiers commençant par le nom de la machine virtuelle et se terminant par ...vbox et ...vbox-prev afin d'y remplacer utilisateur1 par utilisateur2.


Vous pouvez supprimer les fichiers qui apparaissent et qui se termine par ~ car ce sont en quelque sorte des fichiers BAK (sauvegarde du fichier édité avant modification)

C'est terminé, vous pouvez utiliser vos nouvelles machines virtuelles.


Ce principe peut aussi vous être utile pour déplacer une machine virtuelle existante sur un disque dur externe et ainsi gagner de la place sur le disque interne de votre ordinateur. Je n'ai pas essayé mais cela devrait fonctionner aussi sur une carte SD ou une clé USB.

Pour cela, modifiez dans le fichier VirtualBox.xml


Après <MachineRegistry>, vous avez des lignes qui ressemblent à ceci :


<MachineEntry uuid="{1n2qf0c9d-d812-4df9-9hh3-900ca53756kl}" src="/home/nom_utilisateur/VirtualBox VMs/nom_machine-virtuelle/nom_machine-virtuelle .vbox"/>

Remplacez « /home/nom_utilisateur/VirtualBox VMs » par « /media/disk/VB » (par exemple), si votre disque dur externe apparaît dans /media avec le nom « disk ». Et le répertoire /VB contient les répertoires de vos machines virtuelles (à y déplacer aussi physiquement, bien sûr)..


Si vous souhaitez que les nouvelles machines virtuelles s'installent aussi sur le disque du externe, modifiez aussi la ligne :

<SystemProperties defaultMachineFolder="/home/nom_utilisateur/VirtualBox VMs"

Pour avoir <SystemProperties defaultMachineFolder="/media/disk/VB"



Attention, comme VirtualBox partage les ressources entre machine hôte et machine virtuelle, vous devez configurer ces dernières en fonction de la puissance du nouvel ordinateur. S'il plus faible, la machine virtuelle peut refuser de démarrer.

Retourner en haut de la page



Passez une machine virtuelle installée sur un système hôte Linux vers un système hôte Windows (et inversement)



Pour commencer, le mieux est de créer une machine virtuelle mais de ne rien y installer. Cela permet de trouver l'emplacement choisi par le système hôte. C'est plutôt utile sous Windows parce que cela dépend de sa version (il y a eu de gros changement entre XP, vista, 7 et 8). Avec Linux on a moins de surprise (c'est dans /home/... voir plus haut).

Vous vous basez sur le même principe qu'un déplacement classique (comme vu précédemment). Remplacez la machine créée par celle que vous voulez récupérer. Éditez le fichier nom_machine.VBox et copiez le numéro de la machine uuid. Éditez le fichier VBox.xml et collez y le numéro uuid précédemment copié.

Le numéro ressemble à ceci : Machine uuid="{d2748fc0-fa35-44d8-b7b9-bd106619fba1}"

C'est terminé. Le système hôte devrait démarrer normalement.



Retourner en haut de la page

Dernière mise à jour mai 2015