Hier ist eine Anleitung, wie du per Cronjob Proxmox VE auf Updates überprüfst, diese installierst und anschließend neu startest.
Schritt 1: Skript erstellen
Erstelle ein Bash-Skript, das die folgenden Schritte durchführt:
- Update der Paketlisten.
- Installation der verfügbaren Updates.
- Neustart des Systems, wenn Updates installiert wurden.
Beispiel-Skript
Speichere das folgende Skript unter /root/proxmox-update.sh
:
#!/bin/bash
# Protokoll-Datei
LOG_FILE="/var/log/proxmox-update.log"
echo "==== $(date) ====" >> $LOG_FILE
echo "Starte Paketlisten-Update..." >> $LOG_FILE
# Paketlisten aktualisieren
apt-get update >> $LOG_FILE 2>&1
# Prüfen, ob Updates verfügbar sind
UPDATES=$(apt-get --just-print upgrade | grep "Inst " | wc -l)
if [ $UPDATES -gt 0 ]; then
echo "Es sind $UPDATES Updates verfügbar. Installation wird gestartet..." >> $LOG_FILE
# Updates installieren
apt-get -y dist-upgrade >> $LOG_FILE 2>&1
if [ $? -eq 0 ]; then
echo "Updates erfolgreich installiert. System wird neu gestartet..." >> $LOG_FILE
# System neu starten
reboot
else
echo "Fehler beim Installieren der Updates!" >> $LOG_FILE
exit 1
fi
else
echo "Keine Updates verfügbar." >> $LOG_FILE
fi
echo "==== Ende ====" >> $LOG_FILE
exit 0
Schritt 2: Skript ausführbar machen
Setze die erforderlichen Berechtigungen für das Skript:
chmod +x /root/proxmox-update.sh
Schritt 3: Cronjob einrichten
Bearbeite die Cron-Tabelle mit folgendem Befehl:
crontab -e
Füge die folgende Zeile hinzu, um das Skript z. B. täglich um 2:00 Uhr auszuführen:
0 2 * * * /root/proxmox-update.sh
Schritt 4: Protokoll überprüfen
Das Skript schreibt alle Logs in /var/log/proxmox-update.log
. Du kannst diese Datei überprüfen, um sicherzustellen, dass die Updates erfolgreich installiert und das System neu gestartet wurde:
tail -f /var/log/proxmox-update.log
Sicherheitshinweis
- Automatische Updates und Neustarts können riskant sein, insbesondere bei einem Produktivsystem. Stelle sicher, dass keine wichtigen VMs laufen, die von einem Neustart beeinträchtigt werden könnten.
- Du kannst den Neustart optional mit einem weiteren Check absichern, z. B. nur bei Kernel-Updates oder wenn eine bestimmte Bedingung erfüllt ist.