Installer Linux sans repartitionner dans Qemu

Décembre 2016

Cet article va vous guider pour installer Ubuntu 8.04 (Hardy Heron) dans QEMU sous Windows. Ce guide peut également être utilisé pour installer de manière générale un système d'exploitation dans Qemu.



Pourquoi cette solution ?


Avantages:
  • Elle vous permet de tester Linux dans Windows sans toucher aux partitions.
  • Vous pouvez faire fonctionner Ubuntu en même temps que Windows.
  • Contrairement à VMWare ou VirtualBox, QEMU ne nécessite pas les droits administrateur sous Windows.
  • QEMU ne nécessitant pas d'installation, on peut embarquer un Ubuntu complet sur clé USB (8 Go) ou disque dur externe, et le lancer à volonté.
  • Vous pouvez émuler d'autres architectures de processeurs que les PC: par exemple un processeur ARM ou PowerPC (Ubuntu propose une version ARM et Debian propose presque une version pour chaque architecture), ce genre d'émulation autre que celle du processeur cible est impossible avec VirtualBox ou Vmware.


Inconvénients:
  • C'est lent (mais ça marche !).
  • La configuration réseau est un peu moins simple que VMWare/VirtualBox.
  • La résolution est limitée à 800x600 (bien qu'on puisse utiliser sans problème les applications en pleine résolution avec ssh+X11 (voir vers la fin de ce document)).


Cette installation est très similaire à l'installation sous VirtualBox.

Allons-y !

Le nécessaire

  • Un PC sous Windows avec 512 Mo de RAM (ou plus)
  • Image ISO d'Ubuntu 8.04: ubuntu-8.04.1-desktop-i386.iso (de cette page)
  • QEMU 0.9.1 pour Windows (MD5: 7af368bfcc3d072efb042f49a4a9bb96)


Décompressez le fichier zip de QEMU et copiez ubuntu-8.04.1-desktop-i386.iso dans ce répertoire.

Installation d'Ubuntu


Créons un disque dur virtuel (Il s'agit d'un fichier qui sera considéré comme un disque dur dans Ubuntu).
Nous allons en créer un de 10 Go, ce qui est confortable (5 Go peuvent suffire). Ouvrez une fenêtre MS-Dos dans le répertoire de QEMU et tapez:

qemu-img create -f qcow2 ubuntu804_hd.qcow2 10G

(Le format de disque qcow2 est plus efficace que le format brut (RAW).)

Lancez ensuite QEMU pour l'installation:

qemu -L . -std-vga -hda ubuntu804_hd.qcow2 -cdrom Ubuntu804_desktop_i386.iso -m 256 -net nic,model=rtl8139 -net user -boot d


Explication des options:
  • -L . sert à indiquer à Qemu qu'il faut utiliser le répertoire courant pour chercher les fichiers.
  • -std-vga émule une carte graphique compatible Vesa VBE (au lieu de la Cirrus standard émulée)
  • -hda ubuntu804_hd.qcow2 utilise le fichier ubuntu804_hd.qcow2 comme disque dur pour la machine virtuelle.
  • -cdrom Ubuntu804_desktop_i386.iso utilise le fichier ISO comme CD-Rom dans la machine virtuelle.
  • -boot d sert à forcer le démarrage sur le lecteur CD (l'image ISO)
  • -m 256 pour allouer 256 Mo de mémoire vive à la machine virtuelle (c'est le minimum recommandé pour Ubuntu)
  • -net nic,model=rtl8139 sert à émuler une carte réseau RealTek RTL8139 dans la machine virtuelle.
  • -net user permet de créer un réseau privé virtuel (Qemu émule un serveur DHCP, un firewall et un serveur DNS).


Si vous voyez un message "Could not open '\\.\kqemu' - QEMU acceleration layer not activated: No error", vous pouvez l'ignorer. C'est sans conséquence.

Choisissez français avec les flèches et pressez ENTRÉE:



et choisissez "Installer Ubuntu".



Vous verrez quelques messages s'afficher, c'est normal:



Notez que le démarrage d'Ubuntu sera très long, c'est tout à fait normal. Soyez patient.



A partir de là, suivez la procédure normale d'installation d'Ubuntu (L'installation sera très longue également.)

A la fin de l'installation, vous verrez ce message d'erreur:


C'est normal. Vous pouvez fermer la fenêtre.
Nous allons maintenant lancer Qemu sans l'option qui sert à booter sur CD.

Lancement d'Ubuntu


Lancez Ubuntu avec:

qemu -L . -std-vga -hda ubuntu804_hd.qcow2 -m 256 -net nic,model=rtl8139 -net user


Dans la fenêtre de connexion, entrez l'identifiant et le mot de passe que vous aviez choisi lors de l'installation.

Et voilà votre bureau Ubuntu dans Qemu sous Windows:



Note: A l'arrêt de la machine virtuelle (en passant par le menu dans Ubuntu), vous verrez peut-être le message suivant:
"halt: Unable to iterate IDE devices: No such file or directory."



C'est sans conséquence: Vous pouvez fermer la fenêtre.

Configuration


Réseau

  • Avec l'option -net nic,model=rtl8139 Qemu émule une carte réseau RealTek RTL8139 (qui devrait être reconnue automatiquement par Ubuntu)
  • Avec l'option -nic user, Qemu agit comme un serveur DHCP: Votre machine virtuelle devrait avoir son adresse IP. Tapez ifconfig en ligne de commande pour vous en assurer (l'adresse devrait être en 10.0.2.x).


Ainsi, dans ce mode Qemu agit comme un firewall virtuel, protégeant la machine virtuelle des connexions venant de l'extérieur.
Qemu agit également comme serveur DHCP et DNS virtuels afin que votre machine virtuelle ait automatiquement une adresse IP attribuée et qu'elle puisse se connecter sur internet.

  • Qemu agit comme un firewall pour protéger la machine virtuelle: on ne peut pas se connecter dessus. (Utilisez l'option -redir pour établir des communications vers la machine virtuelle).
  • La machine virtuelle, elle, peut se connecter où elle veut, mais seulement avec les protocoles utilisant TCP et UDP.
  • Le firewall de Qemu ne relaie pas ICMP. La machine virtuelle ne peut donc pas pinguer une machine sur internet.





D'autres modes sont moins restrictifs, mais il nécessitent les droits admin sur la machine hôte pour installer des drivers TAP.

Transférer des fichiers


Pour transférer des fichiers depuis/vers la machine virtuelle et la machine hôte, vous pouvez utiliser ssh:
  • Dans la ligne de lancement de Qemu, ajoutez -redir tcp:22::22
  • Dans la machine virtuelle, installez le serveur ssh: sudo apt-get install ssh
  • Dans la machine hôte (Windows), prenez alors WinSCP et connectez-vous sur localhost: Vous pouvez transférer des fichiers depuis/vers la machine virtuelle.


Notez qu'en installant un serveur X sous Windows, vous pourrez profiter de la pleine résolution écran de votre machine Windows pour lancer les applications graphiques Linux dans Qemu. Voir cet article.

à compléter (configurer au-delà de 800x600, USB, transférer des fichiers avec -smb, savevm/loadvm pour un chargement rapide de l'OS (10 secondes !), -snapshot, etc.)

A voir également :

Ce document intitulé «  Installer Linux sans repartitionner dans Qemu  » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.