I also had this problem. There are multiple possible causes, but if - like me - you have a Home Assistant Supervised installation, then it might be that the automatic update of supervisor failed and your system is dead. This happens from time to time and is rather frustrating. Supervised builds are only partially supported, even if you meet the ARD0014 requirements for a supervised installation.
In my case, I noticed that I was unable to access the add-ons on my system. Looking at the logs, I could see that an update to Supervisor was attempted 6 hours earlier. I was also getting the unauthorised messages. So I rebooted my system and then nothing worked - HA wouldn’t even start.
It’s not the first time for me; in these cases, the upgrade to the supervisor container fails meaning that the container is deleted and not recreated. Without the supervisor available, the rest of HA cannot start.
The only sure-fire way to get your system back is to rebuild it, but it’s actually quite easy. Here are the steps that work for me. Note that my host is Debian Bullseye running on an Intel-NUC. All of the below happens on the host.
Make sure everything is stopped:
% sudo systemctl stop hassio-supervisor.service
% sudo systemctl stop hassio-apparmor.service
% docker rm hassio_supervisor
Get the latest supervised-installer
and install it:
% wget https://github.com/home-assistant/supervised-installer/releases/latest/download/homeassistant-supervised.deb
% sudo dpkg -i homeassistant-supervised.deb
Now check that the bootstrap config is OK. If not, correct it:
% cat /etc/hassio.json
{
"supervisor": "homeassistant/amd64-hassio-supervisor",
"machine": "generic-x86-64",
"data": "/path/to/your/supervised/installation/root"
}
In my case, I had to correct the machine
and data
entries. If you had to correct anything, you need to delete the supervisor container and start it again to get the bootstrap config to take:
% sudo systemctl stop hassio-supervisor.service
% docker rm hassio_supervisor
% sudo systemctl start hassio-supervisor.service
Should be fine now! You can also check that the bootstrap config has taken correctly like this:
% docker inspect hassio_supervisor | grep Env -A10
"Env": [
"SUPERVISOR_SHARE=/path/to/your/supervised/installation/root",
"SUPERVISOR_NAME=hassio_supervisor",
"SUPERVISOR_MACHINE=generic-x86-64",
"PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
"LANG=C.UTF-8",
"S6_BEHAVIOUR_IF_STAGE2_FAILS=2",
"S6_CMD_WAIT_FOR_SERVICES=1",
"S6_SERVICES_GRACETIME=10000",
"SUPERVISOR_API=http://localhost"
],
As a postscript, you may also need to check a few services that need to be running on your host. For example, in the latest update, supervised installations have moved away from avahi-daemon
to systemd-resolved
:
% sudo systemctl stop avahi-daemon
% sudo systemctl enable systemd-resolved
% sudo systemctl start systemd-resolved
% sudo systemctl disable avahi-daemon
% sudo reboot now
The only reliable way to keep track of these is to look at the GitHub release notes for the supervised installer. There was some discussion in this forum post.
Hope that helps! I’ve become quite proficient at rebuilding my installation when a supervisor update fails. It would be good if there were some better comms around automatic updates to supervisor as it impacts supervised installations.