4.8 KiB
4.8 KiB
Medi-WOL Autostart-System
Übersicht
Das Medi-WOL Autostart-System ermöglicht es, PCs automatisch zu bestimmten Zeitpunkten über Wake-on-LAN zu starten. Es verwendet die Standard-Crontab-Syntax für die Zeitplanung und integriert sich nahtlos in das bestehende Logging-System.
Funktionen
1. Autostart-Konfiguration pro PC
- Crontab-Syntax: Unterstützt alle Standard-Crontab-Ausdrücke
- Aktivierung/Deaktivierung: Einzelne PCs können unabhängig voneinander konfiguriert werden
- Standardwert: "30 7 * * Mon-Fri" (Mo-Fr um 7:30 Uhr)
2. Crontab-Syntax-Unterstützung
- Minute: 0-59
- Stunde: 0-23
- Tag: 1-31
- Monat: 1-12
- Wochentag: 0-6 (0=Sonntag) oder Mon, Tue, Wed, Thu, Fri, Sat, Sun
3. Automatische Ausführung
- Scheduler: Läuft im Hintergrund und prüft jede Minute
- Logging: Alle automatischen WOL-Ereignisse werden mit Trigger "cron" protokolliert
- Fehlerbehandlung: Robuste Fehlerbehandlung bei WOL-Ausführung
Verwendung
1. PC mit Autostart hinzufügen
- Navigieren Sie zur Hauptseite
- Füllen Sie alle Pflichtfelder aus (Name, MAC, IP)
- Geben Sie den gewünschten Crontab-Ausdruck ein
- Aktivieren Sie die Checkbox "Autostart aktiv"
- Klicken Sie auf "PC hinzufügen"
2. Autostart bearbeiten
- Klicken Sie auf "Bearbeiten" bei dem gewünschten PC
- Ändern Sie den Crontab-Ausdruck oder die Aktivierung
- Klicken Sie auf "Speichern"
3. Crontab-Ausdrücke verstehen
- Hilfe: Klicken Sie auf den Link zu Crontab-Guru
- Beispiele:
30 7 * * Mon-Fri= Mo-Fr um 7:30 Uhr0 8 * * 1-5= Mo-Fr um 8:00 Uhr0 9 * * 0,6= Sa und So um 9:00 Uhr*/15 * * * *= Alle 15 Minuten
Technische Details
1. Datenbankstruktur
ALTER TABLE pcs ADD COLUMN autostart_cron TEXT DEFAULT '30 7 * * Mon-Fri';
ALTER TABLE pcs ADD COLUMN autostart_enabled BOOLEAN DEFAULT 0;
2. Scheduler-Implementierung
- Go-Routine: Läuft parallel zum Hauptserver
- Ticker: Prüft jede Minute auf auszuführende Aufgaben
- Crontab-Parser: Eigene Implementierung für häufige Anwendungsfälle
- Graceful Shutdown: Sauberes Beenden bei Server-Herunterfahrt
3. Crontab-Parser-Features
- Wildcards:
*für "alle" - Bereiche:
1-5für "1 bis 5" - Wochentage:
Mon-Frifür "Montag bis Freitag" - Einzelwerte:
30für "nur 30"
Beispiele
Geschäftliche Anwendungen
- Büro-PCs:
30 7 * * Mon-Fri- Startet alle Büro-PCs Mo-Fr um 7:30 - Server:
0 6 * * *- Startet Server täglich um 6:00 - Backup-Systeme:
0 2 * * 0- Startet Backup-Systeme sonntags um 2:00
Private Anwendungen
- Home-Office:
0 8 * * Mon-Fri- Startet Arbeits-PC Mo-Fr um 8:00 - Gaming:
0 18 * * Fri-Sun- Startet Gaming-PC Fr-So um 18:00 - Medien-Server:
0 20 * * *- Startet Medien-Server täglich um 20:00
Sicherheit und Monitoring
1. Logging
- Alle automatischen WOL-Ereignisse werden protokolliert
- Trigger wird als "cron" gekennzeichnet
- Vollständige Protokollierung in der Logs-Seite
2. Fehlerbehandlung
- WOL-Fehler werden geloggt, aber nicht an den Benutzer weitergegeben
- Scheduler läuft weiter, auch wenn einzelne WOL-Befehle fehlschlagen
- Robuste Behandlung ungültiger Crontab-Ausdrücke
3. Performance
- Scheduler prüft nur alle PCs mit aktiviertem Autostart
- Effiziente Datenbankabfragen
- Minimale Server-Belastung
Erweiterungen
Zukünftige Features
- Webhook-Integration: Benachrichtigungen bei erfolgreichen/fehlgeschlagenen Autostarts
- Erweiterte Crontab-Syntax: Unterstützung für komplexere Ausdrücke
- Zeitzonen: Lokale Zeitzonen-Unterstützung
- Bedingte Ausführung: Nur starten wenn PC offline ist
Monitoring und Alerting
- E-Mail-Benachrichtigungen: Bei fehlgeschlagenen Autostarts
- Dashboard: Übersicht aller geplanten Autostarts
- Statistiken: Erfolgsrate und Ausführungszeiten
Fehlerbehebung
Häufige Probleme
- PC startet nicht: Überprüfen Sie MAC-Adresse und Netzwerk-Konfiguration
- Falsche Zeit: Überprüfen Sie den Crontab-Ausdruck mit Crontab-Guru
- Scheduler läuft nicht: Überprüfen Sie die Server-Logs
Debugging
- Server-Logs: Zeigen alle Scheduler-Aktivitäten
- Logs-Seite: Zeigt alle WOL-Ereignisse (auch automatische)
- Crontab-Validierung: Verwenden Sie Crontab-Guru für Tests
Support
Hilfreiche Links
- Crontab-Guru - Online-Crontab-Editor und Validator
- Cron-Wiki - Detaillierte Crontab-Dokumentation
- Crontab-Examples - Häufige Crontab-Beispiele
Kontakt
Bei Fragen oder Problemen wenden Sie sich an das Medi-WOL-Entwicklungsteam.