2017-01-20 22:45:17 +01:00
|
|
|
|
---
|
|
|
|
|
title: Howto vmm
|
|
|
|
|
categories: virtualisation openbsd
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
OpenBSD intègre un système de virtualisation (écrit from
|
|
|
|
|
scratch). Celui est encore largement en cours de développement, cette
|
|
|
|
|
documentation est susceptible de se retrouver obsolète par moment.
|
|
|
|
|
|
|
|
|
|
Avoir des VM peut être intéressant pour faire un lab réseau sur sa
|
|
|
|
|
machine de travail.
|
|
|
|
|
|
|
|
|
|
# Documentation
|
|
|
|
|
|
|
|
|
|
* <http://man.openbsd.org/OpenBSD-current/man4/vmm.4>
|
|
|
|
|
* <http://man.openbsd.org/OpenBSD-current/man5/vm.conf.5>
|
|
|
|
|
* <http://man.openbsd.org/OpenBSD-current/man8/vmd.8>
|
|
|
|
|
* <http://man.openbsd.org/OpenBSD-current/man8/vmctl.8>
|
|
|
|
|
|
|
|
|
|
# Support matériel
|
|
|
|
|
|
|
|
|
|
Il faut que le processeur supporte la virtualisation et que celle ci
|
|
|
|
|
soit activée dans le bios/efi.
|
|
|
|
|
|
|
|
|
|
Par exemple si celle-ci n'est pas activée dans le bios :
|
|
|
|
|
|
|
|
|
|
~~~
|
|
|
|
|
$ dmesg | grep vm
|
|
|
|
|
vmm disabled by firmware
|
|
|
|
|
vmm at mainbus0 not configured
|
|
|
|
|
~~~
|
|
|
|
|
|
|
|
|
|
~~~
|
|
|
|
|
$ dmesg | grep vm
|
|
|
|
|
vmm0 at mainbus0: VMX/EPT
|
|
|
|
|
~~~
|
|
|
|
|
|
|
|
|
|
# Mise en place
|
|
|
|
|
|
|
|
|
|
Vmd utilise un fichier de conf (*/etc/vm.conf*).
|
|
|
|
|
|
|
|
|
|
~~~
|
|
|
|
|
# cp /etc/examples/vm.conf /etc/vm.conf
|
|
|
|
|
# vim /etc/vm.conf
|
|
|
|
|
~~~
|
|
|
|
|
|
|
|
|
|
On définit dans la conf l'emplacement des sets que l'on va
|
|
|
|
|
télécharger. Ensuite on définit un switch (pour le réseau) et enfin la
|
|
|
|
|
ou les vm.
|
|
|
|
|
|
2017-01-20 23:39:54 +01:00
|
|
|
|
Il est nécessaire de créer un disque par VM :
|
|
|
|
|
|
|
|
|
|
~~~
|
|
|
|
|
# vmctl create "/home/vm/OpenBSD.img" -s 4G
|
|
|
|
|
~~~
|
|
|
|
|
|
2017-01-20 22:45:17 +01:00
|
|
|
|
Pour télécharger les sets :
|
|
|
|
|
|
|
|
|
|
~~~
|
|
|
|
|
$ cd /var/www/sets/
|
|
|
|
|
$ wget --no-parent -r https://ftp.openbsd.org/pub/OpenBSD/snapshots/amd64/*
|
|
|
|
|
~~~
|
|
|
|
|
|
|
|
|
|
On peut activer et démarrer vmd
|
|
|
|
|
|
|
|
|
|
~~~
|
|
|
|
|
# rcctl enable vmd
|
|
|
|
|
# rcctl start vmd
|
|
|
|
|
~~~
|
|
|
|
|
|
|
|
|
|
Si on a activé une vm, on peut la voir :
|
|
|
|
|
|
|
|
|
|
~~~
|
2017-01-21 00:37:23 +01:00
|
|
|
|
# vmctl status
|
2017-01-20 22:45:17 +01:00
|
|
|
|
ID PID VCPUS MAXMEM CURMEM TTY NAME
|
|
|
|
|
1 88909 1 1024MB 169MB /dev/ttyp7 vm.evolix.net
|
|
|
|
|
~~~
|
|
|
|
|
|
|
|
|
|
Enfin on peut prendre un shell (pour procéder à l'installation). Cela utilise cu(1) donc si jamais on veut quitter : `<entrée> puis ~.`
|
|
|
|
|
|
|
|
|
|
~~~
|
2017-01-21 00:37:23 +01:00
|
|
|
|
# vmctl console 1
|
2017-01-20 22:45:17 +01:00
|
|
|
|
Connected to /dev/ttyp7 (speed 9600)
|
|
|
|
|
|
|
|
|
|
(I)nstall, (U)pgrade, (A)utoinstall or (S)hell?
|
|
|
|
|
~~~
|
2017-01-20 23:39:54 +01:00
|
|
|
|
|
|
|
|
|
Lorsqu'on a installé, on peut copier le disque de la vm et utiliser la copie pour une autre VM pour ne pas avoir à faire une deuxième installation.
|
2017-01-21 00:37:23 +01:00
|
|
|
|
|
|
|
|
|
## Réseau
|
|
|
|
|
|
|
|
|
|
Pour le réseau, en wifi il faut faire du NAT car on ne peut pas
|
|
|
|
|
bridger l'interface wifi à cause d'une limitation dans le standard
|
|
|
|
|
802.11.
|
|
|
|
|
|
|
|
|
|
Pour faire cela, le mieux est de passer par une interface
|
|
|
|
|
vether0.... à compléter.
|