Jak przenieść dane Home Assistant bez utraty użytkowników, historii ani ustawień

Eva Wong jest Technicznym pisarzem i stałym majsterkowiczem w ZimaSpace. Całe życie geek z pasją do homelabów i oprogramowania open-source, specjalizuje się w tłumaczeniu skomplikowanych koncepcji technicznych na przystępne, praktyczne przewodniki. Eva wierzy, że samodzielne hostowanie powinno być zabawą, a nie czymś onieśmielającym. Poprzez swoje samouczki umożliwia społeczności rozwiewanie tajemnic konfiguracji sprzętu, od budowy pierwszego NAS po opanowanie kontenerów Docker.

Przenieś dane Home Assistant, zachowując pełny stan aplikacji i pozostawiając starą instancję nietkniętą do czasu, aż zamiennik przejdzie pełną walidację.

Użytkownicy i ustawienia to nie tylko widoczne pliki YAML, a historii nie da się odtworzyć przez skopiowanie pulpitu. Migracja musi zachować katalog konfiguracji Home Assistant lub obsługiwaną kopię zapasową, bazę danych Recorder, jeśli historia ma znaczenie, ukryte dane, sekrety, niestandardowe komponenty oraz zależne od środowiska uruchomieniowego mapowania urządzeń i sieci. Najbezpieczniejsza kolejność to inwentaryzacja, spójne kopiowanie, uruchomienie w izolacji, walidacja, a następnie wycofanie źródła.

Zainwentaryzuj trwały stan i zależności zewnętrzne przed przeniesieniem

W przypadku instalacji kontenerowej traktuj cały zamontowany katalog konfiguracji Home Assistant jako podstawową jednostkę odzyskiwania zamiast wybierać kilka znanych plików. Ukryty stan w katalogu .storage, dane uwierzytelniania, rejestry integracji, pulpity, automatyzacje i domyślna baza danych Recorder mogą znajdować się w tej ścieżce. Zewnętrzne bazy MariaDB, MQTT, bramki Zigbee, magazyny sekretów lub udziały NAS należy wymienić osobno.

Instrukcja przenoszenia kontenera Home Assistant pokazuje, dlaczego przeniesienie całego katalogu konfiguracji jest bezpieczniejsze niż odtwarzanie stanu plik po pliku, oraz podkreśla konieczność zatrzymania starego kontenera przed wykonaniem surowej kopii systemu plików.

Utwórz manifest zawierający ścieżkę źródłową, ścieżkę docelową, właściciela UID/GID, lokalizację bazy danych, urządzenia USB lub szeregowe, tryb sieci, opublikowane porty, usługi zewnętrzne oraz aktualną wersję Home Assistant. Jeśli jakakolwiek zależność nie jest udokumentowana, nie usuwaj starej instancji. Migracja nie jest gotowa, dopóki nowy host nie będzie w stanie odtworzyć tej zależności na podstawie pisemnych informacji.

Utwórz spójny punkt przywracania przed skopiowaniem danych

Korzystaj z wbudowanej kopii zapasowej lub innej metody uwzględniającej stan aplikacji, jeśli Twoja instalacja ją obsługuje. Jeśli wykonujesz surowe kopiowanie kontenera, zatrzymaj Home Assistant przed skopiowaniem aktywnej bazy konfiguracji i powiązanych plików. Zwykła kopia wykonywana podczas pracy może przechwycić pliki aplikacji w różnych momentach, co jest przeciwieństwem kontrolowanej migracji.

Modernizacja systemu kopii zapasowych Home Assistant rozszerzyła obsługę przywracania na różne metody instalacji, dzięki czemu obsługiwana kopia zapasowa stanowi solidną granicę przenośności podczas zmiany środowiska uruchomieniowego. Praktyczny wniosek z przywracania kopii między instalacjami jest taki, że środowisko uruchomieniowe może się zmienić, podczas gdy stan aplikacji pozostaje granicą ciągłości.

Zachowaj dwie kopie: nietknięty punkt odzyskiwania sprzed przeniesienia oraz kopię roboczą używaną podczas migracji. Nie pozwól, aby nowa instancja Home Assistant uruchomiła się na jedynej dobrej kopii źródłowej. Jeśli środowisko docelowe przeprowadzi migrację lub zapisze nowy stan rejestru, nadal musisz mieć czystą drogę powrotu do starej wersji i starego hosta.

Odtwórz osobno zależne od środowiska mapowania sprzętu i sieci

Dane aplikacji nie odtwarzają automatycznie ścieżek urządzeń hosta. Koordynatory USB Zigbee lub Z-Wave mogą pojawić się pod inną nazwą urządzenia, dostęp Bluetooth może się różnić, sieć hosta może zmienić wykrywanie urządzeń, a zewnętrzne bazy danych lub brokerzy MQTT mogą być dostępni pod innymi adresami. Odtwórz te interfejsy jawnie, zanim uznasz niedostępną integrację za utratę danych.

Niezależna instrukcja migracji z kontenera do HAOS pokazuje, że przywrócenie stanu Home Assistant Core nie odtwarza automatycznie usług pomocniczych, takich jak MQTT, Zigbee2MQTT czy Node-RED. Jej sekwencja migracji z ponownym mapowaniem usług pomocniczych weryfikuje również ciągłość historii Recorder, dostęp koordynatora USB oraz zatrzymany, lecz zachowany stary stos jako ścieżkę wycofania.

Uruchom środowisko docelowe w kontrolowanej ścieżce LAN i unikaj uruchamiania obu instancji z tymi samymi radiami, webhookami, kontami chmurowymi lub automatyzacjami, chyba że zostały celowo odizolowane. Dwie aktywne instancje Home Assistant mogą wykonywać zduplikowane działania lub konkurować o ten sam koordynator, przez co poprawna migracja danych może wyglądać na uszkodzoną.

Zweryfikuj użytkowników, historię, ustawienia i sterowanie urządzeniami przed przełączeniem

Zaloguj się za pomocą istniejącego konta nieadministracyjnego, potwierdź konto administratora, otwórz wykresy historyczne obejmujące okres sprzed przeniesienia, sprawdź integracje, uruchom przykładowe automatyzacje i zweryfikuj po jednym urządzeniu z każdego ważnego protokołu. Następnie uruchom ponownie Home Assistant i zrestartuj hosta docelowego, aby upewnić się, że odzyskany stan przetrwa normalne cykle działania.

Powiązane wyjaśnienie ZimaSpace dotyczące ról trwałych danych Home Assistant wskazuje przydatną granicę odzyskiwania: trwałą tożsamość, konfigurację i historię należy traktować podczas przenoszenia inaczej niż pamięć podręczną lub pliki tymczasowe.

Przełącz DNS, proxy lub dostęp zdalny dopiero po pomyślnym zakończeniu testów lokalnych. Pozostaw stary host wyłączony, ale możliwy do odzyskania, przez co najmniej jeden pełny cykl normalnego użytkowania. Wycofaj go dopiero wtedy, gdy użytkownicy, historia, ustawienia, automatyzacje, radia, usługi zewnętrzne, tworzenie kopii zapasowych i ponowne uruchomienie będą działać zgodnie z oczekiwaniami; pomyślne pierwsze załadowanie pulpitu nie wystarcza, aby usunąć ścieżkę wycofania.

Wsparcie i wskazówki

Więcej do przeczytania

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.