Cron to systemd timer
Bir cron ifadesini kullanıma hazır systemd .timer ve .service unit çiftine dönüştür.
Cron to systemd timer
Bir cron ifadesini yapıştır — crontab'a koyabileceğin türü, örneğin `0 3 * * *` veya `*/15 9-17 * * 1-5` — ve bu araç onu systemd `OnCalendar=` değerine dönüştürür, ardından tam `.timer` unit'ini ve eşleşen `.service` unit'ini etrafına oluşturur. Bir sunucuyu crontab'dan systemd'ye geçirmek genellikle bu çeviriyi her iş için elle yapmak anlamına gelir; bu bunu anında ve doğru bir şekilde yapar, adımlar ve aralıklar dahil olmak üzere.
Unit adını ve çalıştırılacak komutu ayarla ve isteğe bağlı olarak service'in kullanması gereken kullanıcı ve çalışma dizinini ayarla. Rastgele gecikme, sunucu filo'sunun aynı anda uyumasını önlemek için `RandomizedDelaySec=` ekler; Persistent, makine kapalıyken kaçırılan bir çalıştırmanın geri dönür dönmez tetiklenmesini sağlayan `Persistent=true` ekler. Bir saat dilimi, sistem'in yerel zamanına güvenmek yerine, her zamanlama satırına bir IANA dilimi adı ekler. Birkaç cron satırını aynı anda yapıştır ve aynı komut için birden fazla `OnCalendar=` girişi olan bir timer oluştur — eski crontab satırları olan bir iş için kullanışlı.
Düz dil açıklamasını açarak, her zamanlama üzerinde neyin çalıştığını kendi dilinde açıklayan tek satırlık bir yorum alırsın. Araç ayrıca systemd'nin gerçekten yeniden üretemediği tek cron yapısını izler: hem ayın günü hem de haftanın günü sınırlandırıldığında, cron bunu VEYA olarak ele alırken systemd'nin OnCalendar her zaman VE olarak ele alır — bunun olması durumunda, uyumsuzluğun sessizce gemi olmadığından emin olmak için bir uyarı yorumu eklenir. Aralık dışı bir alan veya yanlış sayıda alan içeren bir ifade, tahmin etmek yerine düz bir hata olarak raporlanır.
Herşey tarayıcında çalışır — cron ifadesi ve unit dosyası hiçbir zaman cihazından ayrılmaz. Sonucu kopyala, `/etc/systemd/system/` içine bırakacak şekilde .txt dosyası olarak indir veya üzerinde çalışmaya devam etmek için başka bir araca gönder.