A couple of years ago I installed HA in a docker container on a Raspberry Pi 3. It ran OK until about last Christmas when an update broke it. I gave up on it since then, but have now come back to it.
I can SSH into the Pi and I can get the Home Assistant Observer on http://192.168.1.39:4357. The Observer shows that it’s Connected, Supported and Healthy.
I’ve poked around at it with trepidation and am now appealing for help, please!
(It looks like there is a much easier way to install HA with ‘pip’, but I’d rather recover my existing installation than start again and reconfigure.)
You could try to extract the \config.storage folder (it’s hidden), including all (hidden) files straight from SD card (or SSD), as well as yaml’s from \config
Then copy it to a new installation (using a new SD card) and see what happens.
In case you use zigbee2mqtt, also copy \share\zigbee2mqtt folder
I just did a ha core update but it executed suspiciously quickly, which leads me to suspect that nothing happened.
I did ha core check and got: Post "http://supervisor/core/check": context deadline exceeded (Client.Timeout exceeded while awaiting headers)
which doesn’t look good!
(In parallel I thought that I’d do a new install of Raspberry Pi Lite on a fresh card, but the latest version doesn’t accept the user pi login raspberry credentials! Maybe things have changed since my first install a couple of years ago!)
Many thanks for your continuing advice ‘Wally’, I really appreciate it. At my age (83) my brain cells aren’t quite as agile as they used to be, and certainly not as agile as yours!
I tried connecting a screen, but the boot process showed no errors.
I did a ha core check and it showed some errors:
~ $ ha core check
Processing... Done.
Error: Testing configuration at /config
INFO:homeassistant.helpers.storage:Migrating core.device_registry storage from 1.2 to 1.3
INFO:homeassistant.helpers.storage:Migrating core.entity_registry storage from 1.4 to 1.7
Fatal error while loading config: 'null' is not a valid RegistryEntryDisabler
Failed config
General Errors:
- 'null' is not a valid RegistryEntryDisabler
Successful config (partial)
I’ll have a look at the core config files, but tread very carefully!
Jim
I’ve checked the logs (should have done so first!).
Looks like this is the problem. How I can fix it I don’t know (I hate Python and yamyl files anyway - I can’t get used to the indentation and much prefer curly brackets!).
2022-08-24 15:17:09 ERROR (MainThread) [root] Uncaught exception
Traceback (most recent call last):
File "/usr/local/lib/python3.9/runpy.py", line 197, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/usr/local/lib/python3.9/runpy.py", line 87, in _run_code
exec(code, run_globals)
File "/usr/src/homeassistant/homeassistant/__main__.py", line 331, in <module>
sys.exit(main())
File "/usr/src/homeassistant/homeassistant/__main__.py", line 318, in main
exit_code = runner.run(runtime_conf)
File "/usr/src/homeassistant/homeassistant/runner.py", line 121, in run
return loop.run_until_complete(setup_and_run_hass(runtime_config))
File "/usr/local/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete
return future.result()
File "/usr/src/homeassistant/homeassistant/runner.py", line 103, in setup_and_run_hass
hass = await bootstrap.async_setup_hass(runtime_config)
File "/usr/src/homeassistant/homeassistant/bootstrap.py", line 131, in async_setup_hass
await async_from_config_dict(config_dict, hass) is not None
File "/usr/src/homeassistant/homeassistant/bootstrap.py", line 241, in async_from_config_dict
await _async_set_up_integrations(hass, config)
File "/usr/src/homeassistant/homeassistant/bootstrap.py", line 534, in _async_set_up_integrations
await asyncio.gather(
File "/usr/src/homeassistant/homeassistant/helpers/entity_registry.py", line 709, in async_load
await hass.data[DATA_REGISTRY].async_load()
File "/usr/src/homeassistant/homeassistant/helpers/entity_registry.py", line 626, in async_load
disabled_by=RegistryEntryDisabler(entity["disabled_by"])
File "/usr/local/lib/python3.9/enum.py", line 384, in __call__
return cls.__new__(cls, value)
File "/usr/local/lib/python3.9/enum.py", line 702, in __new__
raise ve_exc
ValueError: 'null' is not a valid RegistryEntryDisabler
(END)
Your story is that you have an existing HA installation which broke years ago and hasn’t been touched or updated since then. The odds of there being a quick fix are non-existent. Even if it was working years ago just trying to go through that many updates at one time is going to involve a ton of work dealing with all the breaking changes.
On the flip side, there have been so many improvements to the setup and discovery processes in the past few years its hard to count them all. So many integrations are UI-configurable now they can be set up in a few steps. And many common ones support discovery now which generally means they can be set up with a single click of a button.
The logs your sharing do not suggest an easy fix. And likely once you fix whatever you’re seeing you’ll find more. Since you have a backup I would really suggest just doing a fresh install and trying to set it up again. If you find that is really difficult you can always restore your backup and pick up this process where you left off.
EDIT: I should also note backups are simple tar files. So if there is a particular part of your config you want to keep (like your automations or a dashboard) you can still preserve that in a new installation without restoring the whole thing. Just extract the tar file and pull out the YAML you want to save then paste it into your new config.