4 způsoby, jak zkontrolovat, zda cron funguje na Linuxu

cron je plánovač úloh pro operační systémy Linux a Unix. Dodává se předinstalovaný ve všech distribucích Linuxu a je nejvhodnější pro automatizaci opakujících se úloh.

Aby cron správně fungoval, musíte pravidelně kontrolovat, zda nástroj ve vašem systému funguje správně. Můžete to udělat čtyřmi různými způsoby, včetně kontroly stavu služby cron, zkoumání protokolů cron, spuštění testovací úlohy cron a výpisu běžících procesů ve vašem systému.

Co je cron?

Tichá obsluha úloh, cron, automatizuje a plánuje systémové úlohy. Uživatelé, kteří konfigurují a udržují softwarová prostředí, využívají cron k plánování úloh, jako jsou příkazy nebo skripty shellu – nazývané také úlohy cron – tak, aby se spouštěly pravidelně v pevně stanovených časech nebo intervalech.

cron automatizuje úlohy údržby nebo správy systému, které možná budete muset často provádět.

V Linuxu je k dispozici několik implementací. Verze, kterou budete mít, závisí na vaší distribuci. „Vixie cron“, pojmenovaný po svém původním vývojáři Paulu Vixie, je běžný a výchozí na Debianu a Ubuntu. Arch nemá žádnou verzi cronu ve prospěch časovačů systemd.

cronie je fork Vixie cronu, který je k dispozici jako standardní balíček Arch. Chcete-li jej nainstalovat, použijte pacman:

 sudo pacman -S cronie 

Poté jej spusťte a povolte pomocí:

 sudo systemctl start cronie.service
sudo systemctl enable cronie.service

Verzi cronu nainstalovanou ve vašem systému můžete zjistit vyhledáním jeho manuálové stránky:

 man cron 

Jak zkontrolovat, zda cron funguje na Linuxu

Zde je několik způsobů, jak můžete zkontrolovat, zda cron funguje správně:

  16 nejlepších soukromých aplikací pro prohlížení Instagramu bez lidského ověření

1. Zkontrolujte stav služby cron v systému Linux

Jedním ze způsobů, jak zkontrolovat, zda cron funguje, je zkontrolovat stav služby cron spuštěním základního příkazu Linuxu. Otevřete terminál Linux stisknutím Ctrl + Alt + T a pomocí příkazu systemctl zkontrolujte stav cronu:

 sudo systemctl status cron 

Pokud vidíte následující výstup, znamená to, že cron je aktivní a ve vašem systému běží správně.

Ale co když je cron v neaktivním stavu, jak je uvedeno níže?

Službu můžete spustit takto:

 sudo systemctl start cron.service 

Po spuštění služby cron ji povolte, aby se spustila pokaždé, když se systém restartuje:

 sudo systemctl enable cron.service 

2. Zkontrolujte protokoly cron v systému Linux

Dalším způsobem, jak zkontrolovat, zda cron funguje správně, je prozkoumání souborů protokolu. protokoly cron jsou v Linuxu uloženy v adresáři /var/log/syslog.

syslog je protokol, který systémy Linux používají k centralizaci protokolů dat událostí. Protokoly jsou pak přístupné k provádění auditů, monitorování, odstraňování problémů, hlášení a dalších nezbytných provozních úkolů IT.

Protokoly úloh cron můžete zobrazit v souboru syslog spuštěním následujícího příkazu:

 grep 'cron' /var/log/syslog 

Uvidíte podobný výstup indikující, že cron běží správně a jeho protokoly se ukládají do souboru protokolu:

Protože složka syslog obsahuje spolu s protokoly cron další systémové protokoly, může být trochu složité zkoumat v souboru pouze protokoly související s cronem. Můžete to vyřešit vytvořením samostatného souboru protokolu, který ukládá pouze položky cron, které se objevují v souboru syslog.

  Jak deaktivovat pozastavený účet PlayStation

V tomto příkladu použijeme nano editor, ale můžete použít jakýkoli editor, který vám vyhovuje.

Otevřete následující soubor pomocí nano:

 nano /etc/rsyslog.d/50-default.conf 

Najděte řádek, který začíná:

 #cron.* 

Odkomentujte tento řádek odstraněním znaku hash (#). Poté uložte a ukončete soubor stisknutím Ctrl + X, poté stiskněte Y a stiskněte Enter.

Restartujte službu rsyslog zadáním tohoto příkazu:

 sudo service rsyslog restart 

Nyní obdržíte protokoly v souboru cron.log umístěném v adresáři /var/log.

Pokud váš terminál nedokáže načíst žádné protokoly, může to znamenat, že cron neběží. V takovém případě potvrďte, zda cron funguje nebo nepoužívá jiné metody.

3. Spuštění úlohy cron na Linuxu

Můžete také zkontrolovat, zda cron funguje, jednoduše vytvořením testovací úlohy cron a jejím provedením. Pokud úloha při provádění úkolu uspěje, znamená to, že funguje dobře.

Nejprve musíte vytvořit skript Bash. Skriptování Bash vám umožňuje automatizovat každodenní úkoly na Linuxu.

Vytvořme Bash skript, který vypíše „můj cronjob funguje!“ do souboru TXT. Chcete-li vytvořit soubor, nejprve zjistěte svůj aktuální pracovní adresář pomocí tohoto příkazu:

 pwd 

Vytvořte soubor v aktuálním adresáři pomocí dotykového příkazu:

 touch file.txt 

Poté vytvořte soubor Bash pomocí nano:

 nano script.sh 

Přidejte do souboru následující obsah:

 #! /usr/bin/bash
echo "my cronjob is working!" >> /home/username/file.txt

Ujistěte se, že jste uvedli správné umístění textového souboru, který jste vytvořili. Uložte a ukončete soubor stisknutím Ctrl + X, poté Y a stiskněte Enter.

  Jak se připojit ke skupině v aplikaci Line Chat

Udělte oprávnění ke spuštění skriptu Bash:

 chmod +x script.sh 

Nyní vytvořte úlohu cron pro spuštění skriptu. Chcete-li to provést, otevřete soubor crontab pomocí:

 crontab -e 

Na konec souboru zadejte následující řádek.

 * * * * * /path/to/script.sh 

Pět hvězdiček odpovídá času provedení, kdy první hvězdička představuje minuty (0-59), druhá představuje hodiny (ve 24hodinovém čase, takže 13:00 je 13, půlnoc začíná v 0), třetí hvězdička znamená den (0-7, 0 a 7 jsou neděle), čtvrtá označuje měsíc a poslední hvězdička označuje rok.

V souboru je také uveden název spustitelného souboru a jeho cesta.

Po uložení a zavření souboru se na terminálu zobrazí zpráva „crontab: install new crontab“.

Chcete-li zkontrolovat, zda úloha cron fungovala nebo ne, přejděte do adresáře file.txt a vytiskněte její obsah na terminálu pomocí cat:

 cat file.txt 

To znamená, že cron funguje dobře.

4. Zkontrolujte Spuštěné procesy v systému Linux

Dalším způsobem, jak můžete zkontrolovat, zda démon cron funguje, je výpis běžících procesů ve vašem systému. Toho lze dosáhnout pomocí příkazu ps. Démon cron se zobrazí ve výstupu jako crond.

 ps aux | grep cron 

To potvrzuje, že proces cron běží na vašem systému Linux.

Automatizujte a plánujte systémové úlohy pomocí cron

cron je jedním z nejdůležitějších nástrojů v Linuxu, který umožňuje systému efektivně pracovat. Někdy musíte při řešení problémů se systémem zkontrolovat, zda cron funguje.

Můžete toho dosáhnout buď kontrolou protokolů cron nebo zobrazením běžících procesů ve vašem systému. Stav cronu můžete také zkontrolovat pomocí nástroje systemctl. Kromě toho vám spuštění testovací úlohy cronu může také říci, zda je služba spuštěna nebo ne.

Hladká práce cronu vám umožňuje automatizovat a plánovat každodenní systémové úlohy. Většina úloh cronu je automaticky vytvářena nainstalovanými aplikacemi. Automatizace a plánování úloh zlepšuje celkový výkon systému a udržuje jej v dobrém stavu.