Waarom TIMER naar CRON converteren?
Een systemd .timer en een cron-job plannen beide terugkerende opdrachten, dus beheerders die systemd verlaten, willen hetzelfde schema uitgedrukt in .CRON syntaxis. De OnCalendar= kalender-expressie laat zich voor de meeste gangbare schema's eenvoudig vertalen naar de minuut-uur-dag-maand-weekdag velden van cron.
Hoe TIMER naar CRON te converteren
crontab + handmatige mapping FREE
Voer crontab -e uit en voeg een regel toe waarvan de vijf tijdvelden overeenkomen met de timer, bijv. OnCalendar=*-*-* 02:00:00 wordt 0 2 * * * /pad/naar/opdracht.
systemd-analyze calendar FREE
Voer systemd-analyze calendar "*-*-* 02:00:00" uit om de exacte volgende uitvoeringstijden van de OnCalendar waarde te bevestigen voordat u deze vertaalt naar cron-velden.
Over deze formaten
Een .timer-bestand is een systemd-unit die plant wanneer een andere unit (meestal een bijbehorend .service-bestand) op Linux wordt uitgevoerd, en fungeert als een moderne vervanging voor…
Open .TIMER details →Een .CRON-bestand is gekoppeld aan Unraid OS Cron data, een misc-bestand.
Open .CRON details →Kwaliteit & waar op te letten
- Alleen het schema wordt overgezet; de opdracht, omgeving en gebruiker komen uit het bijbehorende
.servicebestand en moeten handmatig aan de cron-regel worden toegevoegd. - systemd extra's zoals
Persistent=(inhaalslag na downtime),RandomizedDelaySec=en nauwkeurigheidsvensters hebben geen cron-equivalent en gaan verloren. - Schema's op sub-minuut niveau of complexe
OnCalendarexpressies kunnen niet worden weergegeven in de vijf-velds syntaxis van cron op minuutniveau.
Veelgestelde vragen
Is er een automatische timer-naar-cron converter?
OnCalendar= schema handmatig aan cron-velden, eventueel ter controle met systemd-analyze calendar en crontab.guru.Waar komt de opdracht voor de cron-regel vandaan?
ExecStart= in de bijbehorende .service unit die door de timer wordt geactiveerd.Hoe converteer ik schema's in de stijl van `@daily`?
OnCalendar=*-*-* 00:00:00 is gelijk aan @daily of 0 0 * * * in cron.Werken inhaalacties nog steeds?
Persistent=true dat doet.