Installing Home Assistant Supervised on FreeNAS 11.3 (in VM)

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

3 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

Is it possible to use a USB device with this VM? For instance the Conbee 2 stick? If yes, how do I add it to the VM?

Check this topic @johnskoglund :

1 Like

I tried to convert the .vdi file:
Mac-mini-van-Bob-10:Applications bobwalberg$ Mac-mini-van-Bob-10:~ bobwalberg$ VBoxManage clonehd /Users/bobwalberg/haos_ova-7.1.vdi /Volumes/media/downloads/haos_ova-7.1.img --format raw
-bash: Mac-mini-van-Bob-10:~: command not found
Mac-mini-van-Bob-10:Applications bobwalberg$ VBoxManage clonehd /Users/bobwalberg/haos_ova-7.1.vdi /Volumes/media/downloads/haos_ova-7.1.img --format raw
VBoxManage: error: Cannot register the hard disk ‘/Users/bobwalberg/haos_ova-7.1.vdi’ {c91baf2b-1b7d-478f-b85a-4a72fc3c10f9} because a hard disk ‘/Users/bobwalberg/Downloads/haos_ova-7.1.vdi’ with UUID {c91baf2b-1b7d-478f-b85a-4a72fc3c10f9} already exists
VBoxManage: error: Details: code NS_ERROR_INVALID_ARG (0x80070057), component VirtualBoxWrap, interface IVirtualBox, callee nsISupports
VBoxManage: error: Context: “OpenMedium(Bstr(pszFilenameOrUuid).raw(), enmDevType, enmAccessMode, fForceNewUuidOnOpen, pMedium.asOutParam())” at line 191 of file VBoxManageDisk.cpp

I am sorry, I am not familiar with Macs, cannot help with it. All I know it should work exactly the same way with the same command.

Thanks! Installed today per your guidance & works great on TrueNAS 12.0-U8.

1 Like

http://<your_homeassistant_ip>:8123 hmm, is the VM the same ip?
Or must i restart Truenas?

VM virtual network adapter should get own IP-address from your local DHCP server. No restart needed, but you can do it, just in case.

Strange, there is no HA, i think there is a problem with the install! I used haos_ova-7.6.raw but i think the install on Truenas pool is empty, maybe this .raw file is not installing.


Tried to install VM with haos_ova7.6.raw

I got:

You should NOT use that image as the installation media because it is already ready to use system and it should be unpacked into the ZVOL your VM will use. So just follow the guide.