Die Programme melden Fehler als ERROR-Zeile (bei Aufruf- und Store-Fehlern als error:-Zeile). Die genaue Ursache steht in der Meldung selbst; die letzte Zeile fasst nur zusammen, zum Beispiel backup failed (see the message above) oder restore failed (see the message above). Kam vorher keine eigene Meldung, nennt die letzte Zeile die Art des Fehlers, zum Beispiel restore failed: not found:
| Text | Typische Ursache |
|---|---|
| I/O error | Lesen der Quelle oder Schreiben des Stores/Ziels gescheitert; Datenträger voll (auch /tmp bzw. --index-dir), Server nicht erreichbar, Verbindung abgebrochen. |
| invalid argument or request | Falsche Option oder Kombination; der Server hat die Sitzung abgelehnt (API-Key falsch, Verzeichnis nicht in der ACL); --tls-ca unbrauchbar; ein abweichendes --hash für einen bestehenden Store. |
| not found | Quelle, Store (store.json fehlt), Backup-Name oder Run nicht gefunden; --at liegt vor dem ersten Run. |
| not supported | --snapshot on für eine Quelle, die kein LVM-Volume ist; Funktion auf dieser Plattform nicht vorhanden. |
| corrupt or inconsistent data | Ein Objekt passt nicht zu seiner ID oder Prüfsumme. scrub ausführen, aus einer Kopie repairen (Kapitel 10). |
| protocol error | TLS-Prüfung gescheitert (--tls-ca passt nicht zum Zertifikat des Servers, z. B. nach tls-init --force) oder unpassende Programmversionen. |
| decryption failed (wrong key or corrupted data) | Falscher oder fehlender Verschlüsselungs-Schlüssel; oder die Daten sind verfälscht. |
26.1 Backup-Probleme#
| Symptom | Ursache und Abhilfe |
|---|---|
| Snapshot wird ungültig / Sicherung bricht ab | --snapshot-size war zu klein für die Änderungen während der Sicherung. Wert erhöhen (--snapshot-size 20% oder 10G). |
| „Ein zweiter Agent bricht ab“ | Pro Volume läuft nur ein Agent. Überschneiden sich Cronjobs, den Zeitplan entzerren. |
Übrig gebliebene Snapshots <volume>_bkpsnap | Nach einem Absturz gewollt, damit der nächste Lauf vom selben Zeitpunkt fortsetzt. Sonst räumt der nächste Lauf Snapshots mit dem Tag bkp_agent auf; --discard-interrupted entfernt sie sofort. Ein Volume ohne dieses Tag wird nie angefasst. |
| Gast bleibt eingefroren | Der Post-Hook läuft immer, auch bei Fehler und SIGTERM. Bleibt ein Gast trotzdem stehen, virsh domfsthaw <gast> bzw. fsfreeze -u von Hand ausführen und den Hook-Befehl prüfen. --hook-timeout begrenzt die Hook-Laufzeit. |
| Sicherung sehr langsam | Mit bkp_monitor den Engpass finden (Kapitel 13): Lesen, CPU oder Schreiben. --threads erhöhen, --hash blake3 für neue Stores, Kompression senken (--level 1 oder --compression lz4), Index auf SSD (--index-dir). |
| Sicherung über eine langsame Leitung (Internet, Außenstelle) | Die Endzeile des Laufs nennt je Ziel die übertragene Menge, die Rate und den Anteil der Zeit, in dem der Agent auf das Target gewartet hat; bei einer ausgelasteten Leitung ist dieser Anteil hoch, das ist dann kein Fehler. Weniger senden hilft am meisten: --no-fs-bitmap nur verwenden, wenn eine bitgleiche Kopie nötig ist (sonst werden auch freie Bereiche übertragen), und bei zstd bleiben statt --compression lz4 (lz4 spart CPU, schickt aber mehr über die Leitung); ein höheres --max-level lässt die adaptive Kompression bei langsamer Leitung weiter steigen. |
| Jede Sicherung speichert viel Neues, obwohl sich wenig ändert | Die Quelle ändert sich verteilt (z. B. Defragmentierung, Datenbank-Reorganisation, verschlüsselte Volumes) oder die Chunk-Größe passt nicht. store-info zeigt die Chunk-Messung (Kapitel 25). |
--hash oder --chunk-size wird abgewiesen | Der Store hat ein anderes Verfahren bzw. eine andere Größe. Ohne Angabe übernimmt der Lauf die des Stores; wechseln geht nur mit --type full. |
| Exit 3 | Ein Sink mit required=no ist ausgefallen; die anderen haben ihren Run. Der nächste Lauf füllt den fehlenden Sink auf. |
Exit 75 bei bkp_agent bzw. --resume-pending | Kein Fehler: derselbe Auftrag läuft bereits. Der Lauf beendet sich sofort, ohne zu warten oder die laufende Sicherung zu stören. |
| Exit 77, im Planer „Nicht gestartet (Lizenz)“ | Die Lizenz lässt keine neuen Sicherungen zu, meist weil der Testzeitraum vorbei ist oder die Lizenz nicht erneuert wurde. bkp_license status nennt Grund und nächsten Schritt (Abschnitt „Testversion und Lizenz“). Wiederherstellen geht weiter. |
| Der Platz wird nach dem Löschen nicht frei | delete/prune geben nur Daten frei, die kein anderer Run braucht, und keine Packs jünger als --gc-min-age (24 h). Bei WORM erst nach Ablauf der Sperre. store-info --exclusive zeigt, was ein Name allein belegt. |
26.2 Restore-Probleme#
| Symptom | Ursache und Abhilfe |
|---|---|
| Exit 3, Meldungen über beschädigte Bereiche | Einzelne Chunks fehlten oder waren beschädigt und wurden mit Nullen geschrieben (Kapitel 7). scrub und repair auf dem Store ausführen, dann erneut zurückspielen oder aus einem anderen Sink lesen. |
... is not a usable block store: .../store.json: not found | --store zeigt nicht auf ein Store-Verzeichnis. Gemeint ist <out>/<store>.cbs, nicht das --out-Verzeichnis selbst. |
| decryption failed | --decrypt-key fehlt oder ist falsch. Es ist der Schlüssel des Sinks, in den gesichert wurde. |
cmp mit dem Original weicht ab | Erwartet, wenn freie Bereiche übersprungen wurden (Kapitel 3). Mit fsck und Dateivergleich prüfen oder mit --no-fs-bitmap sichern. |
| Ziel kleiner als Quelle | Ein Gerät muss mindestens so groß sein wie die Quelle (SOURCE in --list, source_size in --show-run). |
Alte Sicherungen (.infb, .csfb ...) werden nicht gefunden | Das Format von Version 1 liest nur bkp_restore_legacy (Kapitel 27). |
26.3 Update-Probleme#
| Symptom | Ursache und Abhilfe |
|---|---|
no update url configured: nothing to do | In updater.conf fehlt url. Ohne url sind Updates aus. |
| Manifest abgelehnt (abgelaufen) | Das Manifest auf dem Update-Server ist abgelaufen. Den AegisGrid-Support fragen; bis dahin laufen die installierten Programme unverändert weiter. |
| Manifest abgelehnt (Nummer zu niedrig / Replay) | Ein älteres Manifest wurde ausgeliefert. Der Server soll immer das neueste liefern; --status zeigt die zuletzt gesehene Nummer. |
| Signatur ungültig | public_key in updater.conf passt nicht zum Schlüssel des Herausgebers. Schlüssel mit dem Herausgeber abgleichen. |
... activated installations only (HTTP 403) | Der Kanal verlangt eine freigeschaltete Installation. Mit bkp_license activate und dem Freischaltcode freischalten, ohne Code mit bkp_license offline-request die Freischaltung anfragen (Kapitel „Automatische Updates“). |
... refused this installation's certificate (HTTP 403) | Das Installationszertifikat ist abgelaufen oder gesperrt. bkp_license status zeigt den Stand; mit bkp_license activate neu freischalten oder eine neue Anfrage stellen. |
| Update abgelehnt: fehlende Bibliotheken | dependencies = bundled oder auto mit einem Paket, das lib/ enthält; oder allow_package_install = yes. Die Meldung nennt die fehlenden Bibliotheken und Pakete. |
| Exit 75 | Kein Fehler: es läuft gerade ein anderer Updater, oder der Job-Planer ließ sich nicht nach seinen Jobs fragen. Der nächste Lauf versucht es wieder. |
| Kein Update, obwohl ein neues Release existiert | Das Manifest enthält kein passendes Paket für dieses System (--status zeigt das erkannte System) oder rollout_percent schließt diesen Rechner noch aus. |
| Update scheitert nach dem Umschalten | Der Updater schaltet automatisch zurück. Die Version wird nicht erneut versucht, bis eine neuere erscheint; --force erzwingt einen erneuten Versuch. |