Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
doc:systeme:vm:qemu [02/09/2015 17:10] milou [Configuration] |
doc:systeme:vm:qemu [02/09/2015 17:21] milou [Aller plus loin : faire des tests sans pourrir sa config] |
||
---|---|---|---|
Ligne 64: | Ligne 64: | ||
===== Création de machine virtuelle ===== | ===== Création de machine virtuelle ===== | ||
- | <code bash> | + | <code root> |
cd ~/vm | cd ~/vm | ||
</code> | </code> | ||
Pour faire plus propre, on va maintenant créer un dossier pour la machine en question. | Pour faire plus propre, on va maintenant créer un dossier pour la machine en question. | ||
- | <code bash> | + | <code root> |
- | mkdir fenetresXP | + | mkdir fenetresXP</code> |
- | cd fenetresXP | + | <code root>cd fenetresXP |
</code> | </code> | ||
Ligne 77: | Ligne 77: | ||
On crée une image disque((le format qcow2 nous permet de ne pas créer directement un fichier de 20 Gio mais de n'allouer l'espace que lorsqu'il est requis)) (de 20 Gio((Pour le reste du tuto, on considèrera que 1 Gio = 2<sup>10</sup> Mio = 2<sup>20</sup> kio = 2<sup>30</sup> o)) dans notre exemple) | On crée une image disque((le format qcow2 nous permet de ne pas créer directement un fichier de 20 Gio mais de n'allouer l'espace que lorsqu'il est requis)) (de 20 Gio((Pour le reste du tuto, on considèrera que 1 Gio = 2<sup>10</sup> Mio = 2<sup>20</sup> kio = 2<sup>30</sup> o)) dans notre exemple) | ||
- | <code bash> | + | <code root> |
qemu-img create -f qcow2 base.qcow2 20G | qemu-img create -f qcow2 base.qcow2 20G | ||
</code> | </code> | ||
Ligne 99: | Ligne 99: | ||
* Active le support de l'usb | * Active le support de l'usb | ||
- | -usb | + | <code root>-usb</code> |
* Et pour ajouter les périphériques USB : | * Et pour ajouter les périphériques USB : | ||
Ligne 112: | Ligne 112: | ||
Si la commande : | Si la commande : | ||
- | lsusb | + | <code user>lsusb</code> |
Me renvoie : | Me renvoie : | ||
- | Bus 007 Device 003: ID 0b97:7772 Blahhhhhhhhhh | + | <file config retour de la commande>Bus 007 Device 003: ID 0b97:7772 Blahhhhhhhhhh |
- | Bus 007 Device 002: ID 0b97:7761 Ploum ploum | + | Bus 007 Device 002: ID 0b97:7761 Ploum ploum</file> |
Si je veux monter le port USB sur lequel est branché mon périphérique Blahhhhhhhhhh | Si je veux monter le port USB sur lequel est branché mon périphérique Blahhhhhhhhhh | ||
- | -usbdevice "host:007.003" | + | <code root>-usbdevice "host:007.003"</code> |
Si je veux monter Blahhhhhhhhhh où qu'il soit branché | Si je veux monter Blahhhhhhhhhh où qu'il soit branché | ||
- | -usbdevice "host:0b97:7772" | + | <code root>-usbdevice "host:0b97:7772"</code> |
Ligne 140: | Ligne 140: | ||
Il est fastidieux de se souvenir des options à chaque lancement, on va donc les enregistrer dans un fichier : | Il est fastidieux de se souvenir des options à chaque lancement, on va donc les enregistrer dans un fichier : | ||
- | <code bash> | + | <code root> |
touch "launch_vm.sh" | touch "launch_vm.sh" | ||
</code> | </code> | ||
On édite le fichier de sorte à ce qu'il ressemble à ça : | On édite le fichier de sorte à ce qu'il ressemble à ça : | ||
- | <code bash> | + | <file fichier launch_vm.sh> |
#!/bin/sh | #!/bin/sh | ||
qemu -m 256 -soundhw all -vga cirrus -hda ~/vm/fenetresXP/base.qcow2 $* | qemu -m 256 -soundhw all -vga cirrus -hda ~/vm/fenetresXP/base.qcow2 $* | ||
- | </code> | + | </file> |
On le rend exécutable : | On le rend exécutable : | ||
- | <code bash> | + | <code root> |
chmod a+x "launch_vm.sh" | chmod a+x "launch_vm.sh" | ||
</code> | </code> | ||
Ligne 159: | Ligne 159: | ||
On veut booter sur le CDRom d'installation, donc | On veut booter sur le CDRom d'installation, donc | ||
- | <code bash> | + | <code root> |
./launch_vm.sh -m 512 -cdrom ~/mes_isos/fenetresXP_SP3.iso -boot d | ./launch_vm.sh -m 512 -cdrom ~/mes_isos/fenetresXP_SP3.iso -boot d | ||
</code> | </code> | ||
Ligne 182: | Ligne 182: | ||
On s'assure d'être dans le dossier de la vm : | On s'assure d'être dans le dossier de la vm : | ||
- | <code bash> | + | <code root> |
cd ~/vm/fenetresXP | cd ~/vm/fenetresXP | ||
</code> | </code> | ||
On interdit les droits d'écriture sur l'image de départ | On interdit les droits d'écriture sur l'image de départ | ||
- | <code bash> | + | <code root> |
chmod 444 base.qcow2 | chmod 444 base.qcow2 | ||
</code> | </code> | ||
Et on crée une image test1.qcow2 qui ne contiendra que les modifications faîtes à base.qcow2 | Et on crée une image test1.qcow2 qui ne contiendra que les modifications faîtes à base.qcow2 | ||
- | <code bash> | + | <code root> |
qemu-img create -b base.qcow2 -f qcow2 test1.qcow2 | qemu-img create -b base.qcow2 -f qcow2 test1.qcow2 | ||
</code> | </code> | ||
Ligne 202: | Ligne 202: | ||
Avec le script suivant ''launch_vm2.sh'' : | Avec le script suivant ''launch_vm2.sh'' : | ||
- | <code bash> | + | <file config script launch_vm2.sh> |
#!/bin/bash | #!/bin/bash | ||
IMG=$1 | IMG=$1 | ||
shift; | shift; | ||
qemu -m 256 -soundhw all -vga cirrus -hda ~/vm/fenetresXP/$IMG.qcow2 $* | qemu -m 256 -soundhw all -vga cirrus -hda ~/vm/fenetresXP/$IMG.qcow2 $* | ||
- | </code> | + | </file> |
Vous lancez la machine de base (attention, en lecture seule) avec : | Vous lancez la machine de base (attention, en lecture seule) avec : | ||
- | ./launch_vm2.sh base | + | <code root>./launch_vm2.sh base</code> |
La machine de test 1 : | La machine de test 1 : | ||
- | ./launch_vm2.sh test1 | + | <code root>./launch_vm2.sh test1</code> |