OpenBSD intègre un système de virtualisation (écrit de zéro). Celui-ci est encore en cours de développement, cette documentation est donc susceptible de se retrouver obsolète par moment.
Vmd est le démon responsable de l'exécution des VMs sur un hôte et s'interface avec vmm (virtual machine monitor) intégré au noyau. Il est démarré en même temps que la machine et est contrôlé avec vmctl.
Vmd utilise le fichier de conf */etc/vm.conf*, mais on préfère faire l'installation sans celui-ci, et ne l'utiliser qu'une fois la machine prête à être utilisée.
La machine démarrera sur le /bsd.rd de l'hôte, avec OpenBSD.img en premier disque, installXX.fs en second disque, 512M de RAM, et l'hôte se connectera automatiquement à la console de la VM.
* Se connecter à la console d'une VM : `vmctl console <ID|name>`
* Éteindre une VM : `vmctl stop <ID|name>`
* Mettre en pause/sortir de pause une VM : `vmctl (un)pause <ID|name>`.
* Recharger la configuration depuis */etc/vm.conf* : `vmctl reload`. Les VMs démarrées mais non présentes dans la configuration ne seront pas éteintes. Celles éteintes et présentes dans la configuration seront démarrées si elles n'ont pas l'option `disable`.
Toutes les actions sur les VMs peuvent être faites à partir de leur ID ou de leur nom.
## config_setvm: can't open tap tap: No such file or directory
Si on démarre des machines totalisant plus de 4 interfaces réseaux, vmd s'arrête et le message `config_setvm: can't open tap tap: No such file or directory` est visible dans les logs.
Cela est dû au fait que seules 4 interfaces tap sont créées par défaut, donc vmd n'arrive pas à attribuer les interfaces nécessaires aux VMs. Il faut les créer :