Journal : Qemu 0.7.2

Posté par Sytoka Modon (page perso, ) le 11 septembre 2005
0
La dernière version de Qemu est sorti le 4 septembre. La précédente version était de fin-juillet. Les portables ont donc servi sur la plage au mois d'août ;-)

Pour ceux qui ne connaissent pas, qemu permet d'émuler une machine virtuelle. Mais il peux faire plus, par exemple exécuter sous un PowerPC des applications win32 sous wine (donc conçu pour le processeur de la famille IA32).

Pas mal de bogues corrigés au programme et une amélioration des performances réseaux.

A noter que le module d'accélération non libre kqemu est lui aussi mis à jour. Ce module est fantastique pour qui utilise un Windows émulé sous Linux.

Par exemple, la commande suivante se connecte à mon serveur "qemu" et lance en lecture seule une image windows. Cette image est une version en sommeil de Windows donc le démarrage est rapide. Pas besoin de fermer Windows, un "Controle C" suffit ! Virus et Vers, passés votre chemin...

ssh -tCX server qemu -m 512 -snapshot /qemu/windows.img

Le lien vers le site principal et le journal de fin-juillet sur la version 0.7.1

http://fabrice.bellard.free.fr/qemu/index.html(...)
http://linuxfr.org/~Yann012/18930.html(...)

Les petits "ChangeLog" entre la version 0.7.1 et cette version pour finir.

qemu version 0.7.2:

- x86_64 fixes (Win2000 and Linux 2.6 boot in 32 bit)
- merge self modifying code handling in dirty ram page mecanism.
- MIPS fixes (Ralf Baechle)
- better user net performances

kqemu version 0.7.2:

- more precise segmentation support (aka Win98 support)
- new API to track dirty RAM pages
- CR4.TSD support
- SYSENTER fix for x86_64
- (Linux) added 'max_instances' module parameter
- (win32) cpu interruption support (Filip Navara)
- (win32) kqemu.inf installation file (Filip Navara)
- IOPL restore fix (aka xen bug)

> Lire le journal (30 commentaires, moyenne: 2,5).  

Cette discussion est archivée, il n'est plus possible de laisser des commentaires.

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.

GNU/Hurd

Posté par Snark_Boojum () le 11/09/2005 à 18:14. (lien). Évalué à 7.

Qemu est aussi un moyen très sympathique (même si lent) d'installer GNU/Hurd, pour par exemple porter des programmes.

Snark

  • [^]Re: GNU/Hurd

    Posté par phenix (page perso, ) le 11/09/2005 à 18:20. (lien). Évalué à 4.

    J'ai decouvert cette outil ce matin. C'est genial, je fait
    qemu -cdrom moncd.iso

    Ca me fait gagner du temps dans l'elaboration d'un CD rom d'installation pour la distribution que je develope :) J'evite le reboote et la gravure d'un CD RW a chaque modfication.

    J'ai l'impression qu'il est plus rapide que BOCHS :)

yo

Posté par manatlan (Jabber id, page perso, ) le 11/09/2005 à 18:20. (lien). Évalué à 2.

comment créé tu cette " image (version en sommeil de Windows)" ?
(j'ai bien tenté le savewm en mode console, mais le loadvm a mis vachement de temps, sans y arrivé)

sinon, est-ce que qqu'un arrive à utiliser le port parallel ? (j'aimerai bien scanner sous win)
j'ai pas franchement l'impression que ça marche ...

  • [^]Re: yo

    Posté par Sytoka Modon (page perso, ) le 11/09/2005 à 18:51. (lien). Évalué à 2.

    Il suffit simplement de mettre windows en veillle plutôt que de l'arréter. La première fois, on le fait sans l'option snapshot, de même que les fois où l'on désire installer d'autres logiciels. En temps normal, je ne travaille jamais sur le disque dur local à la machine. Une image en lecture seule est largement suffisante.

    Sinon, il est vrai que pour tester certains développements, c'est vachement pratique. Pour le moment, j'y teste personnellement mes scripts .bat d'installation automatique ;-)

    Dommage que le port USB ne fonctionne pas encore ;-( J'ai besoin pour le boulot d'un client qui utilise ma webcam !

    • [^]Re: yo

      Posté par manatlan (Jabber id, page perso, ) le 11/09/2005 à 18:58. (lien). Évalué à 2.

      entre temps, je m'en suis douté
      cependant, dans mon w2k virtuel, j'ai pas l'option "mise en veille"
      mais j'ai reessayé avec savevm/loadvm, ça marche parfaitement, c'est instantané ...

      moi aussi je l'utilise pour faire des tests d'installations, c'est vraiment trop bien le mode snapshot/commit !

      sinon le port parallel ? qqu'un ?

      • [^]Re: yo

        Posté par Sytoka Modon (page perso, ) le 11/09/2005 à 19:04. (lien). Évalué à 2.

        Mon Win2k n'as jamais passé l'installation complète. Il faut que j'essaye avec cette version. J'ai eu un CD de XP qui a eu la chance de ne pas bloquer à l'installation.

        Faut que je tente de nouveau 2000 car les deux ne se comportent pas toujours de la même manière.

        • [^]Re: yo

          Posté par manatlan (Jabber id, page perso, ) le 11/09/2005 à 19:05. (lien). Évalué à 2.

          y a un commutateur "-win2k-hack" (plus tout à fait sure du nom) spécial pour l'installation de w2k !!! car w2k a un bug a l'install

          • [^]Re: yo

            Posté par Sytoka Modon (page perso, ) le 11/09/2005 à 19:11. (lien). Évalué à 2.

            De tête, ca ressemble à ça... Cependant, mes différents CD avec leur licences "corporate" n'ont pas marché ;-( L'installation bloque toujours au même niveau.

          • [^]Re: yo

            Posté par Médéric RIBREUX (page perso, ) le 12/09/2005 à 20:23. (lien). Évalué à 1.

            Hello,

            j'ai installé win2k sous qemu (version de la Debian Sarge) et je n'ai pas eu de problème pour l'installer ! C'était assez lent (en gros 3-4H sur un PIV 2,4) et j'ai utilisé un CD d'install en mode unattended. Petite précision: le support réseau de qemu était désactivé !

Pour les ubuntuistes

Posté par plagiats () le 11/09/2005 à 19:31. (lien). Évalué à 2.

Installez libsdl-gfx1.2-dev pour pouvoir compiler qemu:

http://forum.ubuntu-fr.org/viewtopic.php?id=8927(...)

--
La mort est un phénomène naturel qui se produit par l'avalement répété de petites quantités de salive au cours d'une grande période de temps. - George Carlin
  • [^]Pour les debianeux

    Posté par Sytoka Modon (page perso, ) le 11/09/2005 à 20:31. (lien). Évalué à 8.

    J'ai trouvé ici ou là des bouts de documentation mais il m'a manqué assez souvent un petit bout. Le réseau qui ne marche pas à cause d'un problème de pare-feu, le script ifup n'est pas installé...

    J'ai donc décidé d'écrire bêtement ma procédure et je vous la partage. Ca date de début juillet mais pas grand chose n'est à modifier...

    Je suis sous GNU/Linux Debian Sarge. A part les quelques commandes sur les paquetages Debian, le reste doit-être quasiment identique sous une autre distribution.

    ----------------------------
    --- Installation de qemu ---
    ----------------------------

    Récuperation de la dernière snapshot de qemu sur

    http://www.dad-answers.com/qemu/

    Par exemple, le fichier

    qemu-snapshot-2005-07-07_23.tar.bz2

    Ce qui peux se faire avec l'uniligne

    wget http://www.dad-answers.com/qemu/qemu-snapshot-2005-07-07_23.tar.bz2

    On extrait les fichiers de l'archive

    tar xvjf qemu-snapshot-2005-07-07_23.tar.bz2

    Récuperation de kqemu sur

    http://fabrice.bellard.free.fr/qemu/download.html

    par exemple le fichier

    kqemu-0.6.2-1.tar.gz

    Ce qui peux se faire avec l'uniligne

    wget http://fabrice.bellard.free.fr/qemu/kqemu-0.6.2-1.tar.gz

    On extrait les fichiers dans le dossier qemu-snapshot-2005-07-07_23

    cd qemu-snapshot-2005-07-07_23
    tar xvzf ../kqemu-0.6.2-1.tar.gz

    Récuperation des en-tête du noyau (2.4) ou des sources du noyau (2.6). On met le lien à jour vers linux et on change les droits pour qu'un utilisateur lambda puisse modifier les sources !

    sux
    aptitude install kernel-headers-2.4.27-2-686
    cd /usr/src
    rm -f linux
    ln -s kernel-headers-2.4.27-2-686 linux
    chmod -R ugo+rwX kernel-headers-2.4.27-2-686
    chmod -R ugo+rwX kernel-headers-2.4.27-2

    On installe les paquets qui manque généralement et on vire le paquet qemu qui gêne.

    sux
    aptitude install libsdl1.2-dev uml-utilities texi2html sudo
    aptitude purge qemu

    On retourne en utilisateur lambda dans son dossier qemu

    cd qemu-snapshot-2005-07-07_23
    ./configure

    On doit avoir la ligne SDL et kqemu à 'yes'.

    make

    On retourne sous le compte root pour faire l'installation et bidouiller un fichier système qui manque ensuite (si on veut le réseau) et on installe de nouveau les sources propres

    sux
    make install

    echo '#!/bin/sh' > /etc/qemu-ifup
    echo 'sudo -p "Password for $0:" /sbin/ifconfig $1 172.20.0.1' >> /etc/qemu-ifup
    chmod a+rx /etc/qemu-ifup

    aptitude reinstall kernel-headers-2.4.27-2-686 kernel-headers-2.4.27-2

    On fait de même avec sudo. Lancer en root la commande

    sux
    grep -q '%users ALL = NOPASSWD: /sbin/ifconfig tun0 172.20.0.1' /etc/sudoers || echo '%users ALL = NOPASSWD: /sbin/ifconfig tun0 172.20.0.1' >> /etc/sudoers
    /etc/init.d/sudo start

    Activer le port forwarding dans le noyau. Mettre les bonnes règles pour faire du NAT.

    sux
    grep -q 'net/ipv4/ip_forward=1' /etc/sysctl.conf || echo 'net/ipv4/ip_forward=1' >> /etc/sysctl.conf
    sysctl -p

    /sbin/iptables -A INPUT -i tun0 -j ACCEPT
    /sbin/iptables -A OUTPUT -o tun0 -j ACCEPT
    /sbin/iptables -A FORWARD -i tun0 -j ACCEPT
    /sbin/iptables -A FORWARD -o tun0 -j ACCEPT
    /sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
    /sbin/iptables -A FORWARD -s 172.20.0.0/24 -i tun0 -o eth0 -p tcp -j ACCEPT

    On peux sauver les règles iptables pour un prochain reboot

    sux
    /etc/init.d/iptable save active

    On charge les modules noyaux

    sux
    modprobe kqemu
    modprobe tun

    Ou pour garder apres un reboot (noyau 2.4)

    sux
    grep -q 'kqemu' /etc/modules || echo 'kqemu' >> /etc/modules
    grep -q 'tun' /etc/modules || echo 'tun' >> /etc/modules

    Si cela marche pas, il peux manquer le périphérique kqemu. Normalement, l'installation doit avoir tout fait.

    sux
    mknod /dev/kqemu c 250 0
    chmod 666 /dev/kqemu

    • [^]Smb

      Posté par salvaire () le 12/09/2005 à 16:34. (lien). Évalué à 2.

      Sous sarge en emulant Windows NT. J'ai pas réussi à faire fonctionner l'option smb ou Samba. Si quelqu'un à des infos la dessus?

      • [^]Re: Smb

        Posté par Ontologia (page perso, ) le 16/09/2005 à 14:28. (lien). Évalué à 2.

        #qemu
        -smb dir allow SMB access to files in 'dir' [-user-net]

        Avec la carte réseau activé.

        Sous windows, tu ouvre l'adresse \\10.0.2.2 qui correspond au firewall
        Tu accède ainsi à ton disque.

Xen ?

Posté par yoho (page perso, ) le 12/09/2005 à 00:16. (lien). Évalué à 2.

qqn a déjà essayé Xen ?

Vous en faites quoi ?

Posté par bobert () le 12/09/2005 à 08:46. (lien). Évalué à 4.

Qu'est-ce que vous arrivez à faire tourner avec Qemu+kqemu ?
En terme de performances, qu'est-ce que ça donne ?
Est-ce que ça permet de faire tourner plus d'applications que wine (ou winex ou crossover ou je ne sais quelle autre dérivé) ?
Quelle est l'occupation mémoire du bousin ?
Le copier-coller fonctionne-t-il entre une appli sous Qemu et le reste de sa session X ?

  • [^]Re: Vous en faites quoi ?

    Posté par agmk () le 12/09/2005 à 10:17. (lien). Évalué à 2.

    >Est-ce que ça permet de faire tourner plus d'applications que wine (ou winex ou crossover ou je ne sais quelle autre dérivé) ?

    Corrigez moi si je me trompe, mais en *théorie*, Qemu ne permet-il pas de faire tourner toutes les applis Windows, s'il émule un système complet ?

    --
    Wr ar fbhunvgr cnf ha qrfgva sharfgr à yn cncnhgé. Nzra.
    • [^]Re: Vous en faites quoi ?

      Posté par Sytoka Modon (page perso, ) le 12/09/2005 à 12:15. (lien). Évalué à 2.

      Presque toutes ! J'utilise un client lourd pour faire de la web-collaboration. Comme il n'y a pas de support USB, l'application ne peux pas fonctionner (pas de webcam). J'aurais aussi besoin du support son et microphone.

      Sinon, pour les autres applications, ca marche très très bien.

  • [^]Re: Vous en faites quoi ?

    Posté par salvaire () le 12/09/2005 à 12:45. (lien). Évalué à 2.

    Par exemple, Autocad et Maple avec une rapidité honorable. Faire fonctionner ces soft avec wine est un cauchemar. J'ai même constaté que l'installation de windows NT était plus rapide, car tous les drivers sont déjà inclus contrairement avec un vrai pc.

    Bref, j'en croyais pas mes yeux. On m'aurait dit que je pouvai le faire avec un logicielle libre. Je l'aurai pas cru!

    • [^]Re: Vous en faites quoi ?

      Posté par salvaire () le 12/09/2005 à 12:51. (lien). Évalué à 3.

      J'oubliais.

      Un interêt majeur des émulateurs, est de pouvoir faire fonctionner des logicielles bien après la fin de vie du hardware pour lequel il avait été conçu. Par exemple, windows NT.
      On pourra ainsi faire fonctionner un binnaire conçu il y à 15 ans dans 20 ans.

      • [^]Re: Vous en faites quoi ?

        Posté par ♪♬♬♩ ♫♪♬♩ () le 12/09/2005 à 20:37. (lien). Évalué à 3.

        Ça fait super longtemps que les émulateurs existent, déjà sur mon atari j'avais un émulateur dos, et ce n'est pas pour autant que les entreprises se sont ruées dessus pour faire tourner leurs vieux softs.

        L'entreprise, elle évolue son logiciel quand la boîte qui le produit lui dit qu'elle arrête le support sur l'ancienne version. Sans compter qu'aucun émulateur ne pourra te garantir une compatibilité à 100% avec un système hardware orginal.

        Bref, c'est pratique est très sympa, mais ça reste tout de même assez limité.

compile pas avec gcc 4.x

Posté par Sol_Bianca () le 12/09/2005 à 10:26. (lien). Évalué à 1.

alors sous mandriva cooker, il faut installer gcc-3.3.6 et taper :
./configure --cc=gcc-3.3.6 --host-cc=gcc-3.3.6

et là, ça compile bien.

  • [^]Re: compile pas avec gcc 4.x

    Posté par ♪♬♬♩ ♫♪♬♩ () le 12/09/2005 à 20:38. (lien). Évalué à 3.

    chez moi, un urpmi qemu kqemu a suffit pour que tout soit installé et fonctionnel :-)

    • [^]Re: compile pas avec gcc 4.x

      Posté par Sol_Bianca () le 13/09/2005 à 09:26. (lien). Évalué à 1.

      kool ! mais moi, c'est pas la 0.6.2 que je veux, c'est la version cvs...

      d'autant plus que j'utilise mandriva cooker ppc.

Port //

Posté par salvaire () le 12/09/2005 à 12:47. (lien). Évalué à 2.

Quelqu'un c'est il pourquoi le port série est implémenté, mais pas le port //?

Le port USB ça se comprend c'est tellement compliqué ce truc.

  • [^]Re: Port //

    Posté par Pascal Terjan (Jabber id, page perso, ) le 12/09/2005 à 15:53. (lien). Évalué à 2.

    Extrait de qemu -help :

    -serial dev     redirect the serial port to char device 'dev'
    -parallel dev   redirect the parallel port to char device 'dev'
    
    Qu'est-ce qui te fait dire que le port parallele n'est pas implémenté ?

    • [^]Re: Port //

      Posté par salvaire () le 12/09/2005 à 16:30. (lien). Évalué à 2.

      Ce ne serait pas une nouveauté de la 0.7.2. Car il n'y en pas dans la doc sur le web.

      Par contre, je ne suis pas sur que l'on puisse faire fonctionner une imprimante. Comment se partage le port entre qemu/windows et Linux?

      • [^]Re: Port //

        Posté par Pascal Terjan (Jabber id, page perso, ) le 12/09/2005 à 19:38. (lien). Évalué à 2.

        Hum non je suis encore sur la 0.7.1 :)
        Je pense que tu dois pouvoir attribuer le port à qemu moyennant d'empecher linux de l'utiliser.

        • [^]Re: Port //

          Posté par manatlan (Jabber id, page perso, ) le 12/09/2005 à 20:47. (lien). Évalué à 2.

          tu m'interesses ;-)

          j'ai la 0.7.2 sous ubuntu, avec kqemu ... mais quand je tente d'utiliser le port parallel, ça dit ça :
          qemu: could not open parallel device '/dev/lp0'

          tu sous-entendrais dans ton post, qu'il faudrait empecher linux de l'utiliser pour le filer à qemu ...
          suis prêt à tester, mais je ne sais comment le retirer à linux (j'ai une imprimante configuré dessus)

          • [^]Re: Port //

            Posté par Laurent Besson (page perso, ) le 16/09/2005 à 00:39. (lien). Évalué à 1.

            Salut,

            En fait j'ai contourné le problème....

            Mandrake 9.1 + samba + cups + Qemu (on partage l'imprimante)
            Virtuel WinNT + imprimante réseau (l'hôte virtuel y accède par le réseau)

            A+

Revenir en haut de page