Ops
Search…
Bhyve
Nanos works on Bhyve with some caveats:
  • Nanos uses ELF files so this support is intended more to run Nanos images not necessarily build them since the default file format on FreeBSD is a.out.
  • You must build Nanos from source with UEFI support:
1
make ENABLE_UEFI=1
Copied!
This was tested on FreeBSD 13.6.0.
Install bhyve firmware:
1
pkg install sysutils/bhyve-firmware
Copied!
Create a tap/bridge:
1
# ifconfig tap0 create
2
# sysctl net.link.tap.up_on_open=1
3
net.link.tap.up_on_open: 0 -> 1
4
# ifconfig bridge0 create
5
# ifconfig bridge0 addm em0 addm tap0
6
# ifconfig bridge0 up
Copied!
Create/run a Nanos VM:
1
# bhyve -AHP -s 0:0,hostbridge -s 1:0,virtio-blk,./disk.raw \
2
-s 2:0,virtio-net,tap0 -s 3:0,virtio-rnd -s 31:0,lpc \
3
-l bootrom,/usr/local/share/uefi-firmware/BHYVE_UEFI.fd \
4
-l com1,stdio nanos
Copied!
To stop the VM:
1
killall bhyve
Copied!
When building with OPS include the UEFI loader in your config.json:
1
{
2
"Uefi": true
3
}
Copied!
Last modified 4mo ago
Copy link