How to use the vmdk in VirtualBox on Mac?

Hi All!

I noticed there is a vmdk available for download for hassio. Since I have been wanting to get hassio up and running on a mac mini for a while (but failed so far), I figured I give this a try, but I am failing still.

Guess I am doing something wrong, hopefully someone can help me:
I have downloaded and installed VirtualBox on OSX, then created a new machine with Ubuntu 64-bit and 1024mb memory.

Then, indicated the downloaded VMDK as a the disc for the virtual machine. However, when I do start that machine up I get the error message: ā€œFATAL: No bootable medium found! System halted.ā€

So, I figured I had to install an OS first. So, downloaded Ubuntu 18.04.1TLS Server iso and installed it on a VDI. Once that booted, shutdown the VM, added the VMDK and rebooted. No errors this time, but dont see anything HASS relatedā€¦ and ā€˜docker psā€™ tells me docker is not installed or running?

I guess I am missing something (and not yet very knowledgable with VMā€™s), but not a clue what?

Hope someone can point me in the right directionā€¦

OK, got a step further, but not yet sure if everything is now the way it should be:

I now know that it is not needed to first create a VM with a blank linux install, like I did.
Just creating a new VM with the downloaded VMDK as the disc is enough, provided you have set it up as linux 64-bit and enabled UEFI (check the EFI boot checkbox in the settings for the VM).

Now, I get a HassOS boot Menu in the VM, but nothing seems to happen no matter what I do, it shows the menu:
1: Autoboot
2: Boot System 0
3: Boot System 1
4: Shell

Only when I hit 4 [Enter] does something seem to happen, I get a shell.

However, I noticed a screen seemed to flash by when I selected the Autoboot option. This is what I was able to capture:
07

I checked that the VMDK file was readable and writable by everyone. But not sure if this is something I am doing wrong, or there is something missing/wrong with the VMDK?

Anybody have a guess?

1 Like

I just tried this, and I think the thing you may be missing is that you have to select Enable EFI (special OSes only) in the system tab of the settings for the VM. This gets the VMDK to boot.

I think you also need to select the Bridged network adapter to see the machine from your host. Just type hassio.local:8123 in the browser on your host.

Thanks @gpbenton,

I do have that EFI setting enabled, indeed thats what causes the vmdk to boot. But, as soon as the vmdk boots, I get that boot screen and nothing further seems to happen. I could not access the hassio.local instance. But I have not messed with the network adapter, Iā€™ll have a look, thanks for the suggestion!

Could not get it to work yet unfortunately. I did check that EFI is checked, and seeing the HassOS boot menu tells me that that is working. However, after that I cannot access http://hassio.local:8123. Also, if I enter the shell and try ā€˜docker psā€™, nothing shows up apart from a ā€œdocker: No such file or directoryā€ message. So, I think nothing has actually been started up.

The only difference I can see is that I use Other Linux (64-bit) rather than ubuntu. And Iā€™m running with a Linux host rather than a Mac.

can you maybe tell what the boot proces looks like on your screen? Do you get to see that HassOS Boot Menu as well or not at all maybe?

I am not sure how to debug this further or what the expected behavior is, other than an accessible HASS instance on http://hassio.local:8123

Maybe something I can do on the shell to see get a status of something?

It starts up with a HASSOS page, and then immediately goes to a normal Linux type startup log. There is not scrollback in the window, so I canā€™t capture exactly what comes out, but there is no further input required.

ok, started from scratch bij re-downloading the vmdk. Setup a VM with ā€œother linux 64 bitā€ and the rest as before: 1024gb ram, EFI on, 2 vcpu.

Now, the autoboot screen does not show and it looks like hass is starting, but no matter the network settings I try, I cannot access hassio.local:8123. Nor, when in NAT mode, can I access the ip of the VM (that I found in the virtualbox log). Also ping does not work.

I tried setting port forwarding rules for NAT, as well as setting up the bridged mode, but both failed so far.

@gpbenton, when you suggested bridged mode, I can choose various devices in the ā€œnameā€ dropdown. I tried Wifi (airport) and Bridge0 (the others are ports on my mac that are not in use, like thunderbolt.

Anything else that requires attention in the network area?

Can you log in to the hassio console? Username is root

sorry n00b, how do I do that? I can see a running log on the VM window, but canā€™t seem to access anything else that I am aware of (basically only hassio.local:8123

I tried ssh into the ip of the vm, but no connection can be established?

When the VirtualBox has finished booting, hit enter in the window, you should get a prompt

Welome to HassOS
hassio login:

Enter root and you should get to the hassio utils

1 Like

ah, yes I can, thanks!

when I then enter ā€œha infoā€, I get some json that seems to indicate everything is ok. So, I guess a network config screw-up on my part is the cause here :slight_smile:

Good News :smile:

I think the network configuration is likely to be the next problem. The interface you select should be the one that your Mac uses to connect to the network, but I donā€™t know enough about Macs to suggest one.

If you type login at the hassio > prompt you get to a command line and can use ping to see if you can access other nodes on the network.

1 Like

Well, before I dive into that one, I wanna say: Thank you for helping me! Awesome!

1 Like

Progress!

Yes, when I login on the console, I can ping both IPā€™s on my LAN as well as dns names on the internet succesfully.

Additionally, I have set the network configuration to NAT on the VMā€™s settings, then under the ā€œadvanced settingsā€ for network, I created a port forwarding rule from :8123 to :8123 and now I can access home assistant from the browser but only when entering http://:8123

So, the hassio.local name does not work (yet) ,it seems.

makes sense: forwarding ports from the host to the guest to reach those services running on the guest. I can also install add-ons, so going from the guest vm out to the internet is working as well.

However, not sure if that can explain why the dns (or is it bonjour?) is not working for me

There is this note on the install page

If your router doesnā€™t support mDNS, then youā€™ll have to use the IP address of your Pi instead of hassio.local. For example, http://192.168.0.9:8123. You should be able to find the IP address of your Pi from the admin interface of your router.

ah, did not know that mDNS is whats exposing the hassio.local address. So when using the vmdk, not only does the router on the lan have to support it, but also VirtualBox or something. Iā€™ll dive into it some more to see what I can do there. THanks again!