[[Uebersicht|← Zurück zur Homepage]] # VM109 Auto-Snapshot Job **Version:** 1.0 **Datum:** 2026-06-21 **Uhrzeit:** erstellt mit Claude.ai --- ## Aufgabe Automatische stündliche Snapshots der VM 109 auf Proxmox. - **Zeitfenster:** 06:00–20:00 Uhr täglich - **Intervall:** jede volle Stunde - **Maximale Snapshots:** 6 (älteste werden automatisch gelöscht) - **RAM-Inhalt:** Nein (ohne `--vmstate`) --- ## Script **Pfad:** `/usr/local/bin/vm109_snapshot.sh` ```bash #!/bin/bash VMID=109 MAX_SNAPSHOTS=6 SNAP_PREFIX="auto_" TIMESTAMP=$(date +%Y%m%d_%H%M) SNAP_NAME="${SNAP_PREFIX}${TIMESTAMP}" qm snapshot $VMID "$SNAP_NAME" --description "Auto-Snapshot $TIMESTAMP" SNAPSHOTS=$(qm listsnapshot $VMID | grep "$SNAP_PREFIX" | awk '{print $2}' | sort) COUNT=$(echo "$SNAPSHOTS" | grep -c .) if [ "$COUNT" -gt "$MAX_SNAPSHOTS" ]; then DELETE_COUNT=$((COUNT - MAX_SNAPSHOTS)) TO_DELETE=$(echo "$SNAPSHOTS" | head -n $DELETE_COUNT) while IFS= read -r snap; do qm delsnapshot $VMID "$snap" done <<< "$TO_DELETE" fi ``` --- ## Einrichtung ```bash # 1. Script anlegen nano /usr/local/bin/vm109_snapshot.sh # 2. Ausführbar machen chmod +x /usr/local/bin/vm109_snapshot.sh # 3. Cronjob (als root auf Proxmox-Host) crontab -e ``` Cronjob-Eintrag: ``` 0 6-20 * * * /usr/local/bin/vm109_snapshot.sh ``` --- ## Logik - Snapshots erhalten Namen im Format `auto_YYYYMMDD_HHMM` - `sort` auf den Namen = chronologische Reihenfolge - Wenn COUNT > 6 → älteste werden mit `head -n` selektiert und gelöscht - Pro Tag entstehen max. 15 Snapshots (06:00–20:00), es bleiben immer 6 --- ## Hinweise - Cronjob läuft als `root` auf dem Proxmox-Host (`pve`) - Keine Logs eingebaut – bei Bedarf `>> /var/log/vm109_snap.log 2>&1` ans Script anhängen - VM 109 = HAOS (Home Assistant OS) --- --- [[Hinweise/Impressum|Impressum]] | [[Hinweise/Datenschutzerklärung|Datenschutz]]