Installing Home Assistant Supervised on FreeNAS 11.3 (in VM)

Tags: #<Tag:0x00007f739ac8b5d0>

After several attempts to run Home Assistant Supervised on FreeNAS 11.3 at last I found a simple way to do this:

  1. create a virtual machine in FreeNAS according to HA recommendations (32GB zvol, UEFI boot) and select VirtIO for storage and network adapter (but it may be not necessary):
    Installing Home Assistant

  2. download HA VDI image from HA installation page (link above) and unpack it from .gz

  3. convert .vdi to .raw by using Virtualbox tools:
    VBoxManage clonehd "image.vdi" "image.raw" --format RAW

  4. upload .raw image to FreeNAS

  5. run in FreeNAS shell command to copy RAW data into ZVOL of your new VM with this command:
    dd if=image.raw of=/dev/zvol/<your_pool_name>/<your_volume_name>

  6. Done. Now you can run your HA VM, use VNC for remote access and connect to HA through web interface, as usual:
    http://<your_homeassistant_ip>:8123

2 Likes

Very useful indeed. Thanks for putting together

1 Like

Looking at doing something similar directly in bhyve on FreeBSD 12.1p2. From https://wiki.freebsd.org/bhyve#Q:_Can_I_use_disk_images_from_VirtualBox_or_other_virtualization_platforms_on_bhyve.3F you can also use that to extract the raw image

$ pkg install qemu-devel
$ qemu-img convert -f vmdk -O raw virtual_box_image.vmdk bhyve_raw_image.img
1 Like

@dancem I’m using your DD command to write the raw data to the Zvol, but for me it only ends up being ~935MB of data, and when I try and boot UEFI it fails, doesn’t seem like everything is written properly or something weird. Any thoughts?

RAW image size should be near 6.5GB, so start from this. Check if image was downloaded and unpacked properly and if there is enough free space to unpack/convert.

So looking inside the .vmdk with 7zip, the total of the .img files contained within adds up to a bit over 1GB, which with ~1.28x compression ratio ZFS is reporting for the ZVOL, adds up. Looks like that 6GB file is a sparse file.

I’ve got a thread started FreeBSD VM boot configuration help with the initial output, looks like at a guess it’s not reading the partitions correctly or something.

Sorry, I cannot help with that. I am not familiar with FreeBSD and in FreeNAS it just works with minimal setup.

That’s the weird thing, unless FreeNAS 11.3 (https://www.ixsystems.com/documentation/freenas/11.3-U1/virtualmachines.html) is using bhyve under the hood, which is the same stuff I’m running. Unless it’s because I’m using a different bhyve management/configuration tool, which is entirely possible.

Idk, maybe bhyve in FreeNAS have some pre-configured settings that you may miss in your system.

Ah ha! I got it! Figured it out. Turns out I needed to enable the VNC framebuffer, and then connect to it in order to see the rest of the boot info. Looks like HassOS is setup to use some kind of framebuffer console, rather than the older/standard TTY based console. Or something like that. I’ll write this up as another Installation Option to hopefully help out others.

1 Like