Na początku stycznia miał pojawić się prawie że rutynowy artykuł o zmianach w nowej odsłonie Home Assistant, czyli 2025.1.x, ale… Nie pojawił się. Tak samo, jak nie pojawiło się wiele innych artykułów, bo ostatni artykuł pojawił się prawie 2 miesiące temu (a nawet dokładnie równo dwa miesiące temu, jak nie liczyć artykułu sponsorowanego z początku grudnia 2024). Tak wyszło, ale mam nadzieję, że uda się wrócić do regularnych publikacji. Tak więc wracamy z artykułem o nowości w Home Assistant 2025.1, ale nie takim rutynowym. I to nie tylko dlatego, że skupię się w nim tylko na jednej nowości, jednej zmianie…

Nowy system kopii zapasowych w Home Assistant 2025.1

I tak wśród nowości w Home Assistant 2025.1 pojawił się wbudowany/zintegrowany system do zarządzania kopiami zapasowymi – zarówno pod względem ich tworzenia, jak i przywracania. Można powiedzieć, że zmiana zdecydowanie na plus, zwłaszcza że dotyczy również wersji „w kontenerach” (Docker), z której korzystam.

Może nie ma tu wielu opcji, ale jednocześnie jest wszystko, co potrzebne. Przynajmniej teoretycznie.

Tak więc mamy automatyczne kopie zapasowe wykonywane wg harmonogramu. Mamy możliwość wykonania kopii zapasowej na żądanie. Mamy też wybór lokalizacji do przechowywania kopii zapasowych. Mamy wbudowane szyfrowanie, by dane były bezpieczne. No i możemy przywrócić system do wcześniej wykonanej kopii zapasowej.

Brzmi dobrze, ale jak to często bywa: diabeł tkwi w szczegółach.

Codziennie lub wybranego dnia tygodnia, byle o 4:45

Zacznę od harmonogramu. I to, co można dobrego o nim napisać, to że jest, dzięki czemu można go ustawić i przynajmniej w teorii zapomnieć o samodzielnym wykonywaniu kopii zapasowych.

Natomiast jest on dość mocno ograniczony, bo możemy wybrać, czy kopie zapasowe mają być wykonywane codziennie, czy w wybrany – jeden konkretny – dzień tygodnia. Natomiast nie możemy zmienić godziny, bo ta jest ustawiona na sztywno, na 4:45.

Niby nie jest to wielki problem, ale niekoniecznie. U mnie oznacza to, że skrypty przerzucające dane w dodatkowe lokalizacje, które uruchamiają się, gdy zazwyczaj głęboko śpię, bez zmiany w ich harmonogramie, nie byłyby w stanie ogarnąć najnowszej kopii, bo uruchamiały się między 2 i 3 w nocy.

Plus, że przynajmniej można wybrać, ile kopii ma być przechowywanych. I nawet jeśli jest to bardzo prymitywny system „retencji”, to zapewne dla większości użytkowników Home Assistant będzie wystarczający.

Różne lokalizacje dla kopii zapasowych. Może kiedyś…

Teoretycznie możemy wybrać, gdzie mają być zapisywane kopie zapasowe. Logiczne, bo trzymanie kopii zapasowych na tym samym nośniku, zwłaszcza gdy jest nim karta microSD, to proszenie się o problemy. Bo gdy padnie nośnik z Home Assistant, padnie też nośnik z kopiami zapasowymi.

Obecnie jednak wybór ten jest dość iluzoryczny, bo gdy korzystamy z chmury Nabu Casa, to faktycznie możemy wybrać zapis do chmury i/lub lokalnie. Gdy nie korzystamy z chmury, możemy „wybrać” tylko magazyn lokalny:

Na to mogę przymknąć oko i uznać, że to „choroba wieku dziecięcego” i w kolejnych aktualizacjach pojawią się zapewne nowe lokalizacje. Natomiast z powodu, o którym napisałem wyżej, uważam, że na start mogli jednak dołożyć coś jeszcze. Nawet jeśli oznaczałoby to lekkie opóźnienie we wprowadzeniu zmian w systemie kopii zapasowych.

Nadal losowe nazwy plików

Nic się nie zmieniło w nazwach plików z kopiami zapasowymi. Niestety nadal są to potworki w stylu:

  • beb94153.tar
  • 81e0b9f8.tar
  • f4391e4b.tar
  • 3b842512.tar
  • 9dde9397.tar

I póki korzystamy z przeglądania ich bezpośrednio w Home Assistant to nie przeszkadza, to w przypadku przeglądania za pomocą menedżera plików, już bywa mocno irytujące.

Szyfrowanie kopii zapasowych w Home Assistant (2025.1)

Natomiast to wszystko to tylko rozgrzewka, bo prawdziwa jazda zaczyna się, teraz, gdy dochodzimy do obligatoryjnego (obowiązkowego) szyfrowania kopii zapasowych. Co samo w sobie jest nawet godne pochwalenia.

Fajnie też, że dość duży nacisk położono na opcje związane z zabezpieczeniem klucza (hasła) szyfrowania. To też zdecydowanie mogę pochwalić.

Problematyczne szyfrowanie

Problem z tym wbudowanym i obowiązkowym szyfrowaniem mam nawet nie taki, że dla mnie ono zbyteczne, bo ja i tak szyfruje „po swojemu”. Problem jest w tym, że mamy obowiązkowe szyfrowanie, ale nie mamy niezależnego od Home Assistant narzędzia do rozszyfrowania pliku.

Nie licząc zabawy z plikiem „backup_restore.py”, by na jego bazie spróbować rozszyfrować utworzone archiwum z kopią zapasową, to obecnie jesteśmy skazani na Home Assistant, by dostać się do plików. A konkretnie jesteśmy skazani na wbudowany kreator przywracania. I niby to nie powinno być problemem, bo po to mam kopię, by przywrócić ją w Home Assistant, a więc i tak muszę wcześniej zainstalować i uruchomić Home Assistant, ale…

Ale nawet pomijając sytuację, że nie chcę już korzystać z Home Assistant, ale chcę dostać się do swoich plików (np. zdjęcia z kamer), to problemem jest samo przywracanie przy pomocy kreatora. Może to problem, który wystąpił podczas testów tylko u mnie, a może nie… Ale nie każda próba przywrócenia systemu z kopii zapasowej kończyła się powodzeniem. Ba, w większości przypadków były mniejsze lub większe braki, lub problemy, w tak przywróconym Home Assistant.

Braki i problemy, które nie pojawiały się, gdy przywracałem pliki ręcznie. Co teraz nie jest takie proste, bo jak już napisałem: mamy szyfrowanie w ramach Home Assistant, ale nie mamy (oficjalnego i wygodnego) sposobu, by odszyfrować dane, nie korzystając z kreatora przywracania wbudowanego w Home Assistant. To zdecydowanie nie powinno tak wyglądać.

Ręczne kopie bez szyfrowania i z bardziej elastycznym harmonogramem

Na szczęście dla tych, co nie potrzebują szyfrowania (zwłaszcza bez narzędzia do deszyfrowania) i/lub potrzebują bardziej elastycznego harmonogramu, cały czas można korzystać z wbudowanej w Home Assistant akcji „backup.create”:

W wyniku czego otrzymujemy wprawdzie archiwum o przypadkowej nazwie, ale wykonane w wybranym momencie i ze swobodnym dostępem do plików wewnątrz. Można też nadal korzystać z rozszerzeń w ramach HACS, typu Auto Backup.

(!) Zgłoś błąd na stronie
Pomogłem? To może postawisz mi wirtualną kawę?
LUTy dla D-Cinelike (DJI Mini 3 Pro, DJI Avata, OSMO Pocket) od MiniFly
Wdrożenie Omnibusa w sklepie na WooCommerce
Jak (legalnie) latać dronem w Kategorii Otwartej
Patryk