feat: die Sicherung laesst sich jetzt zurueckspielen -- und wurde es auch
Bis hierhin war sie GEPRUEFT, nicht ERPROBT. sichern.ps1 packt sein Archiv aus,
oeffnet die Datenbank, zaehlt, laedt hoch, holt zurueck und vergleicht die
Pruefsumme. Das beantwortet "ist die Datei heil?".
Es beantwortet nicht die Frage, auf die es ankommt: "kommt daraus wieder ein
laufender Dienst?" Dazwischen liegen Handgriffe, die man sonst zum ersten Mal
an dem Abend macht, an dem man sie unter Druck macht -- wie das Volume heisst,
dass der Container stehen muss, wem die Dateien gehoeren muessen, dass thumbs/
und webp/ abgeleitet sind und neu gerechnet werden wollen.
Ein Backup, das man nie zurueckgespielt hat, ist kein Backup, sondern eine
Datei.
DIE UEBUNG IST DER STANDARD, und sie ist der eigentliche Gewinn: Wegwerf-
Volume anlegen, Archiv hineinspielen, einen ZWEITEN Container davorhaengen
(ohne veroeffentlichten Port -- der Uebungslauf soll sich mit nichts anlegen,
was schon laeuft), auf /health warten, nachzaehlen, und dann der Teil, auf den
es ankommt: drei zufaellige Dateien DURCH den Dienst holen und ihr SHA-256
gegen den vergleichen, der in der Datenbank steht. Danach alles abraeumen, im
finally -- ein liegengebliebenes Uebungs-Volume mit 300 MB findet sonst niemand
wieder.
Gelaufen, nicht behauptet:
4452 Medieneintraege, 316,3 MB, 2 Token, 2 Benutzer, 0 im Papierkorb
4452 Dateien -- gleich viele wie Eintraege
ok items/velum2.png 113567 B
ok items/flesh-dolphin-2star.png 3623 B
ok items/burgermeat.png 4269 B
Die Uebung ist bestanden.
Der echte Dienst lief die ganze Zeit weiter und war danach unveraendert
(health 200, dasselbe Volume, 4542 Dateien).
DER ERNSTFALL verlangt ein getipptes ZURUECKSPIELEN und sagt vorher, was
passiert. Er loescht thumbs/ und webp/ mit: Abgeleitetes stehenzulassen waere
schlimmer als es neu zu rechnen -- die Galerie zeigte sonst die Vorschau einer
Datei, die dort nicht mehr liegt. Loeschen und Einspielen laufen in EINEM
Container-Aufruf, damit dazwischen niemand den Dienst wieder startet. Geht
etwas schief, sagt das Skript, dass der Container steht, und wie man ihn
startet.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
+35
@@ -803,6 +803,41 @@ nach. Eigene Art mit eigenem Zeichen; die Filterleiste kennt jetzt auch
|
||||
`/api/exists?pfad=…` statt über den Pfad, mit dem Grund als Kommentar daneben.
|
||||
Syntaktisch gegengeprüft (`luac -p`).
|
||||
|
||||
### ✅ Fertig — die Sicherung ist zurückgespielt worden
|
||||
|
||||
Bis hierhin war sie **geprüft**, nicht **erprobt**. `sichern.ps1` packt das
|
||||
Archiv aus, öffnet die Datenbank, zählt, lädt hoch, holt zurück und vergleicht
|
||||
die Prüfsumme — das beantwortet „ist die Datei heil?". Es beantwortet nicht
|
||||
„kommt daraus wieder ein Dienst?".
|
||||
|
||||
Dazwischen liegen Handgriffe, die man sonst zum ersten Mal an dem Abend macht,
|
||||
an dem man sie unter Druck macht: wie das Volume heißt, dass der Container
|
||||
stehen muss, wem die Dateien gehören müssen, dass `thumbs/` und `webp/`
|
||||
abgeleitet sind.
|
||||
|
||||
`tools/zurueckspielen.ps1` macht beides — und die **Übung ist der Standard**:
|
||||
Wegwerf-Volume, Archiv hinein, ein *zweiter* Container davor, drei zufällige
|
||||
Dateien **durch den Dienst** geholt und ihr SHA-256 gegen die Datenbank
|
||||
geprüft, danach alles abgeräumt. Der laufende Dienst wird nicht angefasst.
|
||||
|
||||
Am 11.08.2026 gelaufen, mit dem Archiv von 23:07:
|
||||
|
||||
```
|
||||
4452 Medieneinträge, 316,3 MB, 2 Token, 2 Benutzer, 0 im Papierkorb
|
||||
4452 Dateien -- gleich viele wie Einträge
|
||||
ok items/velum2.png 113567 B
|
||||
ok items/flesh-dolphin-2star.png 3623 B
|
||||
ok items/burgermeat.png 4269 B
|
||||
|
||||
Die Uebung ist bestanden.
|
||||
```
|
||||
|
||||
Der Ernstfall (`-Echt`) verlangt ein getipptes `ZURUECKSPIELEN`, hält den
|
||||
Container an, ersetzt `media.db`, `files/` und `papierkorb/`, **löscht
|
||||
`thumbs/` und `webp/`** (Abgeleitetes stehenzulassen wäre schlimmer: die
|
||||
Galerie zeigte die Vorschau einer Datei, die dort nicht mehr liegt), startet
|
||||
wieder und zählt selbst nach.
|
||||
|
||||
### ⬜ Als Nächstes
|
||||
|
||||
**Der Vergleichsmaßstab ist weg.** Am 11.08.2026 sind die Lite-Container
|
||||
|
||||
Reference in New Issue
Block a user