Přeskočit obsah

Řešení problémů

Krátké FAQ. Kompletní tabulku řešení problémů na straně hostitele pro VM přes SSH (permission-denied, ověření hostitelského klíče, chybějící proměnné šablony a další) najdete v průvodci Záloha VM přes SSH na GitHubu.

Něco není správně zapojeno

Otevřete /spike ve webovém rozhraní. Kontrola integrace hostitele prozkoumá každé připojení a CLI (Docker socket, libvirt, restic, qemu-img, rclone) a nahlásí případné chybějící části. Začněte zde, než budete předpokládat chybu: chybějící připojení nebo nedosažitelný hostitel se objeví okamžitě.

Nemohu se dostat k webovému rozhraní

BombVault obsluhuje HTTPS rovnou z krabice na portu 3443 (samopodepsaný certifikát), takže otevřete https://<your-unraid-ip>:3443. Přijměte varování o samopodepsaném certifikátu, nebo umístěte BombVault za reverzní proxy s vlastním certifikátem. Pokud běžíte s HTTP_ONLY=true, obsluhuje místo toho prosté HTTP na portu 3000 (určeno pro použití za proxy terminující TLS).

Ztratil jsem svůj APP_KEY

APP_KEY odvozuje heslo k restic repozitáři. Bez něj (a bez sady pro obnovu šifrovacího klíče) nelze šifrované zálohy obnovit. Proto vás Přehled popohání ke stažení sady pro obnovu. Viz Mimo lokalitu a obnova. Vygenerujte klíč pomocí openssl rand -hex 32 a uložte jej mimo server, dříve než se budete spoléhat na jakoukoli zálohu.

Záloha VM se nepřipojí

Záloha VM komunikuje s libvirt přes SSH, nikdy přes připojení.

  • Potvrďte, že SSH je povoleno na hostiteli a veřejný klíč BombVaultu je autorizovaný v /root/.ssh/authorized_keys (Nastavení, Integrace, SSH k hostiteli zobrazuje klíč a tlačítko Otestovat připojení).
  • Na vlastní síti br0.x nastavte LIBVIRT_HOST na svou LAN IP Unraidu (kontejner tam nemůže dosáhnout na hostitele přes host.docker.internal). Povolte Settings, Docker, Host access to custom networks.
  • Pokud jste změnili SSH port Unraidu, nastavte LIBVIRT_SSH_PORT, aby odpovídal.
  • Kompletní krok za krokem diagnóza (test dosažitelnosti, směrování VLAN, Permission denied (publickey), Host key verification failed) je v průvodci Záloha VM přes SSH.

Živý snímek VM neproběhl

Živé snímky potřebují qemu guest agent nainstalovaný ve VM a disk na /mnt/cache (nebo /mnt/diskX), nikoli /mnt/user. Na vypnuté VM se živý automaticky vrátí k šetrnému. Šetrná záloha VM vypne, zálohuje disky, poté ji znovu spustí, takže je vždy konzistentní.

Záloha selhala s "repository is already locked"

Toto je obvykle osiřelý restic zámek zanechaný, když byl kontejner aktualizován nebo restartován uprostřed operace. BombVault detekuje prokazatelně osiřelý zámek, násilně jej vyčistí a jednou zopakuje, automaticky. Pokud přetrvává, použijte Nastavení, Integrita, Odemknout pro postiženou doménu k ručnímu vyčištění zaseklého zámku. Skutečný problém se stále objeví, místo aby byl skryt. Po restartu BombVault čeká, dokud takový zámek nebude deset minut bez obnovení. Restic, který ještě běží, třeba v druhém BombVaultu nad stejným repozitářem, svůj zámek obnovuje každých pět minut.

Moje kopie mimo lokalitu neproběhla po záloze

Replikace mimo lokalitu je na základě nejlepší snahy záměrně, takže zádrhel mimo lokalitu nikdy nezhatí místní zálohu. Zkontrolujte plán mimo lokalitu pro danou doménu (Nastavení, Plány): prázdný plán replikuje po každé místní záloze, zatímco kadence odesílá méně často. Použijte Replikovat nyní na stránce Mimo lokalitu pro běh na vyžádání a sledujte indikátor replikace na Přehledu.

Obnova se přerušila dříve, než začala

Než se cokoli zastaví nebo odebere, obnova spustí předletovou kontrolu konfliktů: ověří, že statická IP kontejneru a publikované hostitelské porty jsou volné. Pokud je jeden z nich již držen jiným kontejnerem, přeruší se s jasnou, akceschopnou zprávou místo toho, aby zanechala napůl dokončenou obnovu. Uvolněte konfliktní port nebo IP, poté opakujte.

Prostý export selhal místo zapsání souboru

Pokud je šifrování age zapnuto (Nastavení), ale není nastaven platný příjemce, export selže s jasnou chybou místo zapsání prostého textu. Přidejte platného příjemce (veřejný klíč age nebo veřejný klíč SSH), nebo vypněte šifrování, pokud zamýšlíte, aby export byl prostý text. Viz Funkce.

Dump databáze selhal

Neúspěšný dump nikdy nepoloží zálohu kolem sebe; zapíše se jako vlastní neúspěšný běh a důvod říká, co spravit.

  • Odmítnuté přihlášení. Dump se přihlašuje proměnnými s heslem samotného kontejneru (POSTGRES_PASSWORD, MARIADB_ROOT_PASSWORD, MYSQL_ROOT_PASSWORD nebo jejich verzemi _FILE). Zkontrolujte je na kontejneru s databází. Proměnná _FILE ukazující na tajemství, které uživatel kontejneru nesmí číst, dopadne stejně.
  • Chybějící oprávnění. S náhodným heslem roota se dump přihlásí jen jako uživatel aplikace, obsáhne tedy jen tu jednu databázi, a MySQL 8.4 a novější ho může odmítnout úplně. Dejte kontejneru skutečné heslo roota, nebo mu dump vypněte.
  • Systémové tabulky potřebují povýšit. MariaDB odmítá dump, když její systémové tabulky pocházejí ze starší verze (chyba 1558). Přidejte proměnnou MARIADB_AUTO_UPGRADE=1 a restartujte kontejner, nebo v něm jednou spusťte mariadb-upgrade.
  • Žádný nástroj pro dump. Odlehčený nebo vlastnoručně sestavený image bez pg_dump, mysqldump či mariadb-dump dumpovat nejde. Vezměte oficiální image, nebo dump vypněte.
  • Časový limit. Dump dostane DB_DUMP_MAX_HOURS (výchozí 6), záloha kolem něj BACKUP_MAX_HOURS, a dump, který přestane postupovat, se utne po BACKUP_STALL_HOURS. Za posledním případem bývá zámek držený aplikací. Zvedněte limit, který zabral, nebo dumpujte, když je aplikace v klidu.
  • Kontejner je pozastavený nebo se restartuje. Dump mluví s běžícím serverem. Pokud se kontejner restartuje pořád dokola, jeho vlastní log řekne proč.
  • Poškozený dump se nepodařilo odstranit. Dump, který BombVault nedokázal dokončit, se zase smaže. Když se to smazání nepovede, dump zůstane v seznamu označený jako poškozený a můžete ho tam smazat.

Import selhal

Import zastaví kontejner, odsune jeho datovou složku stranou a nechá image vytvořit na jejím místě prázdnou. Selže-li krok před samotným importem, stará složka se vrátí sama. Selže-li import, kontejner si nechá čerstvou složku a stará zůstane vedle jako <datová složka>.bombvault-before-import-<časová značka>; chybová hláška běhu uvádí přesnou cestu.

Ruční návrat: zastavte kontejner, přejmenujte současnou datovou složku stranou, přejmenujte zachovanou složku zpět na původní název a kontejner spusťte. Na Unraidu to zvládne správce souborů na kartě Shares.

Záloha datové sady ZFS selhala nebo nějakou sadu přeskočila

Každý problém nese kód důvodu v hranatých závorkách a stránka Datové sady ZFS je uvádí všechny i s nápravou. Tři nejčastější:

  • snapshot-loop: snímek se k BombVaultu nedostal, protože Host Data nepředává nová připojení. Uprav kontejner, nastav Access Mode u Host Data na Read/Write - Slave a restartuj BombVault.
  • key-not-loaded: šifrovaná datová sada bez načteného klíče se přeskočí. Načti klíč pomocí zfs load-key a připoj sadu; příští záloha ji zahrne.
  • ssh-auth: server odmítl klíč BombVaultu. Karta připojení na stránce ZFS ukazuje příkaz, který ho povolí; spusť ho jednou na serveru.

Položka zůstává na "Učí se N/10"

Většina kontrol anomálií začíná po 10 úspěšných zálohách položky a počítání začne znovu po Označit jako očekávané a po změně výběru položky. Položka bez plánu se neučí a kontejner bez appdata se nemá z čeho učit, což říká i jeho odznak.

Uchovávání přestalo mazat staré zálohy jedné položky

Drží je otevřená kritická anomálie: zdroj položky je téměř prázdný, výrazně se zmenšil, nebo záloha znovu uložila většinu dat. Otevřete anomálii z odznaku u položky. Pokud data chybí nebo byla zašifrována, obnovte nejprve z odkazované poslední dobré zálohy. Pak anomálii potvrďte, nebo ji označte jako očekávanou, pokud změna pochází od vás, a další běh uklidí jako obvykle. Náhled uchovávání takovou položku označí jako ponechanou. U položky ZFS si staré zálohy ponechá jen datová sada, kterou anomálie jmenuje; ostatní datové sady stromu se pročistí jako obvykle.

Ruční čištění hlásí, že některé položky byly ponechány

Stejná příčina: čištění nechá staré zálohy položky s takovou anomálií na pokoji a uvede ji ve své zprávě. Všechno ostatní se vyčistí jako obvykle.

Import historie hlásí, že repozitář nešlo přečíst

Po aktualizaci BombVault jednou načte velikosti dřívějších záloh z každého repozitáře. Repozitář, který v tu chvíli nebyl dostupný, například nefunkční vzdálený cíl nebo nepřipojená sdílená složka, je uveden na kartě Anomálie v Nastavení, Integrita a zkouší se znovu jednou denně. Jeho položky se mezitím učí z nových záloh.

Varování o místě na disku nesouhlasí s přehledem Unraidu

Na uživatelské sdílené složce Unraidu (/mnt/user) je volné místo celého pole, ne jednoho disku. Vzdálené repozitáře se měří jen přes rclone remoty, které hlásí své volné místo; repozitáře S3, B2, REST a SFTP žádný údaj nemají a na kartě Anomálie jsou uvedeny jako neměřené.

Asistent s umělou inteligencí se nepřipojí

Stránka Server MCP uvádí, co znamená každý stavový kód a každé odmítnutí koncového bodu MCP a co s tím dělat.

Kontejner se stále restartuje nebo vypadá unhealthy

BombVault hlásí healthy/unhealthy ze svého vlastního /api/health. Nástroj pro automatické hojení (například Autoheal) jej může restartovat automaticky, pokud se engine kdy zasekne. Zkontrolujte log kontejneru a report /spike pro základní příčinu.

Stále zaseknutí?