98 lines
2.3 KiB
Markdown
98 lines
2.3 KiB
Markdown
---
|
||
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.
|
||
|
||
Il est nécessaire de créer un disque par VM :
|
||
|
||
~~~
|
||
# vmctl create "/home/vm/OpenBSD.img" -s 4G
|
||
~~~
|
||
|
||
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 :
|
||
|
||
~~~
|
||
# vmctl status
|
||
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 ~.`
|
||
|
||
~~~
|
||
# vmctl console 1
|
||
Connected to /dev/ttyp7 (speed 9600)
|
||
|
||
(I)nstall, (U)pgrade, (A)utoinstall or (S)hell?
|
||
~~~
|
||
|
||
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.
|
||
|
||
## 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.
|