Preskočiť na obsah
100% lokálne

Cron na systemd timer

Premeňte výraz cron na hotovú päť systemd jednotky .timer a .service.

Vstup
Výstup

Cron na systemd timer

Vložte výraz cron — typ, ktorý by ste dali do crontabu, napríklad `0 3 * * *` alebo `*/15 9-17 * * 1-5` — a tento nástroj ho prevedie na hodnotu systemd `OnCalendar=` a potom zostaví jednotky `.timer` a zodpovedajúcu jednotku `.service` okolo neho. Migrácia servera z cronu na systemd zvyčajne znamená ruční preklad cada úlohy; tento to robí okamžite a správne vrátane rozšírenia polí pre kroky a rozsahy.

Nastavte názov jednotky a príkaz na spustenie a voliteľne používateľa a pracovný adresár, ktorý má služba používať. Náhodné oneskorenie pridá `RandomizedDelaySec=` aby sa loď serverov neobudila všetky naraz; Persistent pridá `Persistent=true` aby sa chod zmeškaný počas vypnutia stroja spustil hneď ako sa vrátil. Časová zóna pripojí názov IANA zóny k každému plánu namiesto spoliehania sa na lokálny čas systému. Vložte niekoľko cron riadkov naraz a vytvorte jeden timer s niekoľkými záznamami `OnCalendar=` — užitočné pre úlohu, ktorá kedysi mala viac ako jeden riadok crontabu.

Zapnite popis jednoduchej reči a získajte jednoradový komentár nad každým plánom, ktorý vysvetľuje kedy sa spustí, vo vašom jazyku. Nástroj tiež sleduje jedinu con konštrukciu, ktorú systemd skutočne nemôže reprodukovať: keď sú obmedzené deň v mesiaci aj deň v týždni, cron ich považuje za ALEBO, zatiaľ čo systemd OnCalendar ich vždy BEZ — keď sa to stane, je pridaný komentár s varovaniem aby sa nesúlad neodesílal bez povšimnutia. Pole mimo rozsahu alebo výraz s nesprávnym počtom polí je nahlásené ako obvyklá chyba namiesto hádania.

Všetko beží vo vašom prehliadači — výraz cron a súbor jednotky nikdy neopustia vašej zariadenie. Skopírujte výsledok, stiahnite si ho ako súbor .txt a zrubte ho do `/etc/systemd/system/`, alebo ho odošlite inému nástroju aby ste na ňom mohli pokračovať v práci.

Časté otázky

Prečo výstup obsahuje dve jednotky?
Systemd timer iba plánu; potrebuje zodpovedajúcu jednotku .service aby skutočne spustil príkaz. Nástroj generuje obe prepojené spolu s Unit=.
Môžem konvertovať viac ako jeden riadok cron naraz?
Áno. Vložte niekoľko výrazov, jeden na riadok, a stanú sa viacerými záznamami OnCalendar= v jednej jednotke timeru pre rovnaký príkaz.
Čo znamená varovanie deň-v-mesiaci/deň-v-týždni?
Cron sa spustí keď sa zhoduje jedno pole, ak sú obe obmedzené; systemd OnCalendar vyžaduje zhodujúce sa obe. Nástroj vás upozorňuje keď sa zmení harmonogram namiesto budete ho mlčky konvertovať.
Podporuje @daily, @hourly a ostatné cron makrá?
Áno, spolu s @weekly, @monthly, @yearly a @annually/@midnight, rozšírené na ich štandardné päť-polové ekvivalenty pred konverziou.
Môj výraz cron alebo príkaz niekde nahratá?
Nie. Konverzia beží úplne vo vašom prehliadači — nič čo napíšete sa neposiela na server.