Files
homelab-infra/ops/windows-reinstall/docs/windows-image-backup-baseline.md
T

184 lines
7.1 KiB
Markdown

# Windows Image Backup Baseline - baerchen
Stand: 2026-06-05
Dieses Runbook beschreibt den Windows-Image-Backup-Workflow fuer den frisch
aufgesetzten Windows-11-Rechner `baerchen`. Ziel ist ein schneller Bare-Metal-
Restore von C: ueber Veeam Recovery Media und ein Image auf dem bestehenden
Unraid-SMB-Share `backups`.
## Zielbild
| Feld | Wert |
|---|---|
| Workstation | `baerchen` |
| OS | Windows 11 Pro, Build 26200 |
| Backup-Tool | Veeam Agent for Microsoft Windows |
| Installierte Version | `13.0.2.1102` |
| Backup-Art | Volume-level image backup |
| Gesicherte Volumes | C: plus EFI-/Recovery-Partitionen, keine Datenlaufwerke D:/G:/H: |
| Primaeres Ziel | `\\kallilabcore\backups\windows-images\baerchen` |
| Linux-Pfad auf Unraid | `/mnt/user/backups/windows-images/baerchen/` |
| Share-Modell | bestehender Unraid-Share `backups`, kein neuer Share |
| SMB-User | `micha` (bestehender Unraid-User mit Read/Write auf `backups`) |
| Veeam Job | `baerchen-c-image` |
| Verschluesselung | Stand erster Lauf: Veeam Storage Encryption **nicht aktiv** (`StorageEncryptionEnabled=False` im Job-Log); optional separat aktivieren und neues Full-Backup erzeugen |
| Recovery Media | USB-Stick `VEEAMRE` auf Laufwerk F: erstellt |
## Bewusste Entscheidungen
- Es wurde kein neuer Unraid-Share angelegt. Der Zielpfad lebt unter dem
bestehenden Share `backups`, weil dieser laut `docs/STORAGE_LAYOUT.md` fuer
lokale Backup-Daten vorgesehen ist.
- Es wurde vorerst kein dedizierter SMB-User `veeam-baerchen` angelegt, um
keine Unraid-Share-/User-Aenderung zu erzwingen. Der produktive Job nutzt
den bestehenden User `micha`.
- BitLocker wurde am 2026-06-05 nicht aktiviert. TPM, Secure Boot und WinRE
wurden geprueft; BitLocker bleibt ein separater Security-Schritt.
- Der Recovery-Stick ist Teil des Restore-Pfads und muss getrennt vom Rechner
aufbewahrt werden.
## Vorab-Pruefungen 2026-06-05
| Check | Ergebnis |
|---|---|
| SMB-Port `445` auf `kallilabcore` | erreichbar |
| SMB-Zielordner | angelegt |
| SMB-Schreibtest | erfolgreich, Testdatei wieder geloescht |
| Veeam Installation | erfolgreich via `winget` |
| Veeam Dienst | `VeeamEndpointBackupSvc` running |
| WinRE | Enabled |
| TPM | Present/Ready/Enabled/Activated/Owned |
| Secure Boot | True |
| BitLocker C: | FullyDecrypted, Protection Off |
## Backup-Job
Veeam Agent -> Job `baerchen-c-image`
- Backup Mode: `Volume level backup`
- Included items:
- Lokaler Datentraeger C:
- EFI System Partition
- Recovery-Partitionen
- Destination: `Shared folder`
- Shared folder: `\\kallilabcore\backups\windows-images\baerchen`
- Credentials: bestehender Unraid-SMB-User `micha`
- Compression: `Optimal`
- Storage encryption: Stand erster Lauf **nicht aktiv**
- Schedule: Workstation-Schedule in Veeam; Stand 2026-06-05: taeglich nachts
eingerichtet.
Wenn Veeam Storage Encryption spaeter aktiviert wird, ist das
Veeam-Job-Passwort nicht aus dem Repo wiederherstellbar. Es muss dann in
Vaultwarden als eigener Eintrag/Secure Note liegen und vor dem ersten
verschluesselten Full-Backup getestet werden.
## Secrets und Ablageorte
Keine Secret-Werte in dieses Repository schreiben.
| Secret | Ablage |
|---|---|
| Veeam Job Encryption Password | nur noetig, falls Veeam Storage Encryption aktiviert wird; Ziel: Vaultwarden Secure Note `Veeam baerchen backup encryption password` |
| SMB Credential fuer Backup-Ziel | bestehender Unraid/Vaultwarden-Eintrag fuer User `micha` |
| BitLocker Recovery Key | noch nicht aktiv; Ziel bei Aktivierung: `D:\30_Finanzen\BitLocker-RecoveryKey-baerchen-<DATUM>.txt`, Vaultwarden Secure Note, physischer Ausdruck |
## Recovery Media
Der USB-Stick wurde mit Veeam Recovery Media erstellt.
Erwarteter Zustand:
- Laufwerk beim Erstellen: F:
- Label: `VEEAMRE`
- Dateisystem: FAT32
- Boot-Dateien vorhanden: `boot/`, `efi/`, `sources/`, `bootmgr`,
`bootmgr.efi`, `BMRAnswerFile.xml`
Aufbewahrung: Stick beschriften mit `baerchen Veeam Recovery - 2026-06-05`
und nicht als Alltags-USB verwenden.
## Restore-Prozedur
1. Wenn C: defekt oder leer ist, `baerchen` ausschalten.
2. Veeam-Recovery-USB `VEEAMRE` einstecken.
3. Rechner vom USB-Stick booten.
4. In der Veeam Recovery Environment Netzwerk pruefen.
5. Shared Folder als Backup-Quelle oeffnen:
`\\kallilabcore\backups\windows-images\baerchen`
6. Mit SMB-User `micha` authentifizieren.
7. Veeam-Backup auswaehlen.
8. Falls der Restore Point verschluesselt ist: Veeam-Job-Encryption-Passwort
aus Vaultwarden eingeben. Der erste Full-Lauf vom 2026-06-05 ist laut Log
nicht verschluesselt.
9. Bare Metal Recovery starten und Ziel-Disk fuer Windows C: auswaehlen.
10. Vor dem finalen Restore pruefen, dass nicht D:/G:/H: als Ziel ausgewaehlt
sind.
11. Restore ausfuehren.
12. Nach erstem Boot:
- Windows startet
- Veeam Agent startet
- Laufwerksbuchstaben C:/D:/G: plausibel
- Netzwerk/DNS/Tailscale plausibel
- `reagentc /info` zeigt WinRE Enabled
## Restore-Test ohne echten Restore
Der Test ist noch offen und muss nach dem ersten erfolgreichen Backup
durchgefuehrt werden:
1. Vom USB-Stick booten.
2. Veeam Recovery Environment starten.
3. Netzwerk pruefen.
4. SMB-Ziel `\\kallilabcore\backups\windows-images\baerchen` mounten.
5. Restore Point anzeigen lassen.
6. Wenn der Restore Point verschluesselt ist: Veeam-Encryption-Passwort testen.
7. Vor Auswahl eines echten Ziel-Datentraegers abbrechen.
8. Windows normal von der internen SSD booten.
Erfolgskriterium: Recovery-Umgebung sieht das SMB-Ziel und den Restore Point,
ohne dass ein Restore gestartet wurde.
## Erster Full-Lauf 2026-06-05
Der erste manuelle Full-Lauf wurde am 2026-06-05 gestartet.
Beleg aus `C:\ProgramData\Veeam\Endpoint\baerchen-c-image\Job.baerchen-c-image.Backup.log`:
- Start: 2026-06-05 19:46:01
- Ziel-Datei: `\\kallilabcore\backups\windows-images\baerchen\baerchen-c-image\baerchen-c-image2026-06-05T194605.vbk`
- Veeam-Storage-Statistik: `BackupSize 57801080832` Bytes; Veeam-GUI zeigt
`Total backup size: 53,8 GB`
- Veeam-GUI: Restore Point Size `53,8 GB`, Backup duration `0:11:31`,
`Full backup created`
- MetaChecker: `0 errors`, `0 warnings`
- VSS Finalisierung: `job: success`
- Repository-Speicher danach: ca. 5.99 TB total, ca. 3.99 TB frei
- Job-Konfiguration im Log: `StorageEncryptionEnabled=False`
Damit ist der erste Image-Lauf technisch erfolgreich geschrieben. Noch offen
bleibt der Recovery-USB-Boot-/SMB-Test.
Hilfsskript fuer die Windows-Seite:
```powershell
.\ops\windows-reinstall\check-veeam-baerchen.ps1
```
Wenn der SMB-Pfad in der normalen PowerShell nicht erreichbar ist, aber Veeam
den Job erfolgreich schreibt, liegt das meist an getrennten Credentials:
Veeam nutzt gespeicherte Job-Credentials, waehrend die interaktive Windows-
Sitzung zusaetzlich per `net use` authentifiziert werden muss.
## Offene Punkte
- Recovery-Stick-Boot und SMB-Mount testen.
- Entscheiden, ob Veeam Storage Encryption nachtraeglich aktiviert werden soll.
Wenn ja: Passwort in Vaultwarden anlegen, Job umstellen und ein neues Full-
Backup erzeugen.
- Optional: BitLocker C: separat aktivieren und Recovery-Key an den drei
vorgesehenen Orten sichern.
- Optional: spaeter dedizierten SMB-User `veeam-baerchen` anlegen, falls die
Unraid-User-/Share-Policy wieder angefasst wird.