Skip to content
Martin Matuška edited this page Jan 12, 2017 · 8 revisions

On FreeBSD 10 you will need to create a modified OmniOS ISO with enabled serial console, as there is no VGA console. On FreeBSD 11, you can use VNC to perform the guest installation.

Fetch the firmware, and place it in .config directory

fetch https://people.freebsd.org/~grehan/bhyve_uefi/BHYVE_UEFI_CSM_20151002.fd
mv BHYVE_UEFI_CSM_20151002.fd /my/vm/dir/.config/BHYVE_UEFI_CSM.fd

Download and modify OmniOS ISO

OmniOS Download Webpage: http://omnios.omniti.com/wiki.php/Installation

To enable serial console, you need to modify the ISO file. Extract using bsdtar:

fetch http://omnios.omniti.com/media/OmniOS_Text_Stable_latest.iso
mkdir omnios_iso
tar -x -C omnios_iso -f OmniOS_Text_Stable_latest.iso

Edit omnios_iso/boot/grub/menu.list (uncomment serial terminal and comment splashimage):

#
# To enable grub serial console to ttya uncomment the following lines
# and comment out the splashimage line below
# WARNING: do not enable grub serial console when BIOS console serial
#       redirection is active.
serial --unit=0 --speed=9600
terminal serial
#
# Uncomment the following line to enable GRUB splashimage on console
#splashimage /boot/grub/splash.xpm.gz
#foreground F7FBFF
#background 333333
#

Repack ISO file:

cd omnios_iso
mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot -boot-load-size 4 -boot-info-table -o ../OmniOS_Text_Stable_latest_serial.iso .

Copy ISO file to store:

mv OmniOS_Text_Stable_latest_serial.iso /path/to/vm/.iso/

Start Installation

Create machine

vm create -t windows omnios

Replace uefi="yes" with uefi="csm" in generated omnios.conf

sed -i -e 's,uefi="yes",uefi="csm",g' /path/to/vm/omnios/omnios.conf

Declare guest as generic

echo 'guest="generic"' >> /path/to/vm/omnios/omnios.conf

Start installation

vm install OmniOS_Text_Stable_latest_serial.iso

Activate serial console after install

After finishing installation, you need to enter the shell (option in the installation ISO) and activate serial console on the installed disk (again in /boot/grub/menu.lst)

zfs import rpool
vim /rpool/boot/grub/menu.list