Warum TIMER in CRON konvertieren?
Ein systemd-.timer und ein cron-Job planen beide wiederkehrende Befehle, daher möchten Administratoren, die von systemd wegwechseln, denselben Zeitplan in der .CRON-Syntax ausgedrückt haben. Der OnCalendar=-Kalenderausdruck lässt sich für die meisten gängigen Zeitpläne sauber auf die cron-Felder Minute-Stunde-Tag-Monat-Wochentag übertragen.
Wie man TIMER in CRON konvertiert
crontab + manuelles Mapping FREE
Führen Sie crontab -e aus und fügen Sie eine Zeile hinzu, deren fünf Zeitfelder dem Timer entsprechen, z. B. wird OnCalendar=*-*-* 02:00:00 zu 0 2 * * * /pfad/zum/befehl.
systemd-analyze calendar FREE
Führen Sie systemd-analyze calendar "*-*-* 02:00:00" aus, um die exakten nächsten Laufzeiten des OnCalendar-Wertes zu bestätigen, bevor Sie ihn in cron-Felder übersetzen.
Über diese Formate
Eine .timer-Datei ist eine systemd-Unit, die plant, wann eine andere Unit (normalerweise eine passende .service-Datei) unter Linux ausgeführt wird, und dient als moderner Ersatz für cron.…
.TIMER-Details öffnen →Eine .CRON-Datei ist mit Unraid OS Cron data verknüpft, einer misc-Datei.
.CRON-Details öffnen →Qualität & worauf zu achten ist
- Nur der Zeitplan wird übernommen; Befehl, Umgebung und Benutzer stammen aus der zugehörigen
.service-Datei und müssen von Ihnen selbst zur cron-Zeile hinzugefügt werden. - systemd-Extras wie
Persistent=(Nachholen nach Ausfallzeit),RandomizedDelaySec=und Genauigkeitsfenster haben keine cron-Entsprechung und gehen verloren. - Unter-Minuten- oder komplexe
OnCalendar-Ausdrücke können in der minutenbasierten Syntax von cron mit fünf Feldern nicht dargestellt werden.
Häufig gestellte Fragen
Gibt es einen automatischen Timer-zu-cron-Konverter?
OnCalendar=-Zeitplan manuell den cron-Feldern zu, optional unter Verifizierung mit systemd-analyze calendar und crontab.guru.Woher kommt der Befehl für die cron-Zeile?
ExecStart= in der passenden .service-Unit, die vom Timer aktiviert wird.Wie konvertiere ich Zeitpläne im `@daily`-Stil?
OnCalendar=*-*-* 00:00:00 entspricht @daily oder 0 0 * * * in cron.Funktionieren Nachhol-Läufe weiterhin?
Persistent=true tut.