186 lines
7.4 KiB
Markdown
186 lines
7.4 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 teilweise erledigt. Der Veeam-Recovery-USB `VEEAMRE` wurde am
|
|
2026-06-06 erfolgreich gebootet (Operator-Bestaetigung). Noch offen bleibt die
|
|
SMB-/Restore-Point-Sichtpruefung in der Recovery-Umgebung:
|
|
|
|
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 fuer den vollstaendigen Test: 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. Der
|
|
Recovery-USB-Boot wurde am 2026-06-06 erfolgreich getestet; offen bleibt die
|
|
SMB-/Restore-Point-Sichtpruefung in der Recovery-Umgebung.
|
|
|
|
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
|
|
|
|
- SMB-Mount und Restore-Point in der Veeam Recovery Environment 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.
|