Files
windows-updater/docs/configuration.md

5.4 KiB

Konfiguration

Alle Einstellungen werden in der Datei config.ini vorgenommen, die sich im selben Verzeichnis wie das Script befindet. Als Vorlage dient config.example.ini.

Übersicht aller Optionen

[General]

Option Typ Standard Beschreibung
LogPath String C:\logs\windows-updater Verzeichnis für Log-Dateien (eine Datei pro Tag)
LogRetentionDays Integer 365 Anzahl Tage, nach denen alte Log-Dateien gelöscht werden
DryRun Boolean false Nur prüfen welche Updates verfügbar sind, ohne zu installieren

[WindowsUpdate]

Option Typ Standard Beschreibung
UseMicrosoftUpdate Boolean true Microsoft Update verwenden (inkl. Office, .NET, Treiber). Bei false nur Windows Update
ExcludeKBs String (leer) Kommagetrennte Liste von KB-Artikeln die übersprungen werden sollen (z.B. KB1234567,KB7654321)
ExcludeDrivers Boolean false Treiber-Updates ausschließen
RetryCount Integer 3 Anzahl Wiederholungsversuche für fehlgeschlagene Updates

[Winget]

Option Typ Standard Beschreibung
Enabled Boolean false Winget-Updates aktivieren (winget upgrade --all). Wird automatisch übersprungen, wenn winget nicht verfügbar ist

[Reboot]

Option Typ Standard Beschreibung
Enabled Boolean false Automatischen Neustart nach Updates aktivieren
Mode String immediate Neustart-Modus: immediate (sofort), delayed (verzögert), scheduled (geplante Uhrzeit)
DelayMinutes Integer 5 Verzögerung in Minuten (nur bei Mode = delayed)
ScheduledTime String 03:00 Uhrzeit im Format HH:mm (nur bei Mode = scheduled). Liegt die Uhrzeit in der Vergangenheit, wird der nächste Tag verwendet

[Notification]

ntfy

Option Typ Standard Beschreibung
NtfyEnabled Boolean false ntfy-Benachrichtigungen aktivieren
NtfyUrl String https://ntfy.sh URL des ntfy-Servers
NtfyTopic String windows-updates ntfy-Topic-Name
NtfyToken String (leer) Zugangs-Token (leer lassen wenn nicht benötigt)
NtfyPriority String default Priorität: min, low, default, high, urgent

E-Mail

Option Typ Standard Beschreibung
EmailEnabled Boolean false E-Mail-Benachrichtigungen aktivieren
SmtpServer String (leer) SMTP-Server Adresse
SmtpPort Integer 587 SMTP-Port
SmtpUseSsl Boolean true SSL/TLS für SMTP verwenden
SmtpUsername String (leer) SMTP-Benutzername (leer für anonyme Authentifizierung)
SmtpPassword String (leer) SMTP-Passwort
EmailFrom String (leer) Absender-Adresse
EmailTo String (leer) Empfänger-Adresse(n), kommagetrennt
EmailHtmlReport Boolean true HTML-formatierten Report mit Update-Tabelle senden

[Hooks]

Option Typ Standard Beschreibung
PreUpdateScript String (leer) Pfad zu einem PowerShell-Script, das VOR den Updates ausgeführt wird
AbortOnPreHookFailure Boolean false Update-Prozess abbrechen wenn das Pre-Hook-Script fehlschlägt
PostUpdateScript String (leer) Pfad zu einem PowerShell-Script, das NACH den Updates ausgeführt wird

[History]

Option Typ Standard Beschreibung
Enabled Boolean false Update-History-Tracking aktivieren
HistoryPath String C:\logs\windows-updater\update-history Basispfad für die History-Datei (Dateiendung wird automatisch gewählt: .xlsx wenn ImportExcel verfügbar, sonst .csv)

Boolean-Werte

Folgende Werte werden als true erkannt (Groß-/Kleinschreibung egal):

  • true, 1, yes

Alles andere wird als false interpretiert.

Beispiel-Konfigurationen

Minimal (nur Windows Updates)

[General]
LogPath = C:\logs\windows-updater
DryRun = false

[WindowsUpdate]
UseMicrosoftUpdate = true

Mit E-Mail Benachrichtigung

[General]
LogPath = C:\logs\windows-updater
DryRun = false

[WindowsUpdate]
UseMicrosoftUpdate = true
ExcludeDrivers = true

[Notification]
EmailEnabled = true
SmtpServer = smtp.example.com
SmtpPort = 587
SmtpUseSsl = true
SmtpUsername = user@example.com
SmtpPassword = geheim123
EmailFrom = updater@example.com
EmailTo = admin@example.com
EmailHtmlReport = true

[Reboot]
Enabled = true
Mode = delayed
DelayMinutes = 10

Vollständig mit ntfy und History

[General]
LogPath = C:\logs\windows-updater
LogRetentionDays = 365
DryRun = false

[WindowsUpdate]
UseMicrosoftUpdate = true
ExcludeKBs = KB1234567,KB7654321
ExcludeDrivers = true
RetryCount = 3

[Winget]
Enabled = true

[Reboot]
Enabled = true
Mode = scheduled
ScheduledTime = 03:00

[Notification]
NtfyEnabled = true
NtfyUrl = https://ntfy.mein-server.de
NtfyTopic = windows-updates
NtfyToken = tk_mein_token
NtfyPriority = default

EmailEnabled = true
SmtpServer = smtp.example.com
SmtpPort = 587
SmtpUseSsl = true
SmtpUsername = user@example.com
SmtpPassword = geheim123
EmailFrom = updater@example.com
EmailTo = admin@example.com,ops@example.com
EmailHtmlReport = true

[Hooks]
PreUpdateScript = C:\scripts\pre-update.ps1
AbortOnPreHookFailure = true
PostUpdateScript = C:\scripts\post-update.ps1

[History]
Enabled = true
HistoryPath = C:\logs\windows-updater\update-history