Jak zkontroluji, zda Crontab funguje?

How Do I Check If Crontab Is Working

Crontab je mimořádně užitečný plánovač úloh v systémech založených na Linuxu, který vám umožňuje transformovat vaše každodenní rutinní úkoly na úlohy crontab, které lze spustit automaticky podle zadaného plánu. Protože však tento plánovač úloh pracuje tiše na pozadí, proto se většina uživatelů ptá, zda funguje nebo ne.

Občas přiřadíte úkoly zálohování systému nebo jeho aktualizaci plánovači úloh crontab. Tyto úkoly jsou považovány za velmi zásadní pro normální fungování jakéhokoli počítačového systému. Proto, pokud se z jakéhokoli důvodu zmeškají, váš systém následně přestane fungovat. Považuje se proto za nesmírně důležité kontrolovat také svůj plánovač úloh crontab, abyste zůstali informováni o tom, zda běží nebo ne a provádí úlohy, které mu byly přiřazeny či nikoli.



Proto je cílem dnešního článku naučit vás dvě metody kontroly, zda crontab funguje nebo nefunguje při používání Linux Mint 20.



Metody kontroly, zda Crontab funguje nebo ne

Následující dvě metody lze použít ke kontrole, zda crontab funguje nebo ne. První metoda je jednoduchá, zatímco druhá metoda je trochu složitá, protože má více kroků než první. Každopádně uvedeme obě níže uvedené metody:



Metoda č. 1: Kontrola stavu služby Cron

Chcete -li zkontrolovat, zda crontab funguje nebo ne, podle stavu služby Cron, musíte provést následující kroky:

Spusťte terminál v jakékoli distribuci Linuxu, se kterou pracujete. Jak již bylo uvedeno výše, použili jsme Linux Mint 20 k demonstraci obou metod kontroly, zda crontab funguje nebo ne. Proto jsme také ukázali terminál této distribuce Linuxu na obrázku níže:



Nyní pro kontrolu stavu služby Cron v Linux Mint 20 musíte zadat následující příkaz:

$ systemctl status cron

Spuštění příkazu systemctl spolu se stavovým příznakem zkontroluje stav služby Cron, jak je znázorněno na obrázku níže. Pokud je stav Aktivní (Spuštěno), pak se potvrdí, že crontab funguje naprosto dobře, jinak ne.

V našem případě crontab fungoval dobře, proto jste na výše uvedeném obrázku mohli být svědky stavu Active (Running). Pokud však váš crontab nefunguje, můžete tuto službu kdykoli spustit spuštěním následujícího příkazu ve vašem terminálu:

$ sudo service cron start

Spuštění nové služby v Linux Mint 20 vždy vyžaduje oprávnění uživatele root. Proto pokud zapomenete zmínit klíčové slovo sudo před výše uvedeným příkazem, pak na terminálu vykreslí chybovou zprávu. Pokud jste však přihlášeni k uživatelskému účtu root, pak je dobré jít i bez klíčového slova sudo.

Metoda č. 2: Spuštěním úlohy Crontab

Chcete -li zkontrolovat, zda crontab funguje nebo ne, spuštěním úlohy crontab, musíte provést následující kroky:

V této metodě nejprve vytvoříme bash skript, který spustíme jako úlohu crontab. Pokud naše úloha crontab bude fungovat, tj. Pokud se náš bash skript spustí podle očekávání, bude to znamenat, že crontab funguje naprosto v pořádku, jinak ne. Rozhodli jsme se tedy vytvořit soubor bash v našem domovském adresáři s názvem Cron.sh. Po vytvoření tohoto souboru jsme jej otevřeli a zadali skript zobrazený na obrázku níže v našem souboru bash. Tento skript jednoduše vytiskne na terminál fiktivní zprávu. Potom jsme uložili náš bash soubor a zavřeli ho.

Dalším krokem je vytvořit spustitelný soubor bash, aby naše úloha crontab měla oprávnění ke spuštění tohoto souboru bash. Aby byl náš nově vytvořený spustitelný skript bash spuštěn, spustíme na našem terminálu následující příkaz:

$ chmod +x Cron.sh

Spuštěním tohoto příkazu se na terminálu nezobrazí žádný výstup, ale ovládací prvek vám bude předán zpět, což bude znamenat, že tento příkaz byl úspěšně proveden.

Nyní vytvoříme úlohu crontab pro spuštění tohoto souboru bash. K tomu musíme otevřít soubor crontab na terminálu spuštěním níže uvedeného příkazu:

$ crontab -e

Když se soubor crontab objeví na vašem terminálu, musíte do svého souboru zadat řádek zvýrazněný na následujícím obrázku. Zadáním tohoto řádku vytvoříte úlohu crontab pro spuštění našeho souboru bash každou sekundu. Stisknutím klávesy Ctrl+ X soubor crontab uložíme a zavřeme, abychom mohli pokračovat dále.

Jakmile se tento soubor zavře, démon Cron nainstaluje nový crontab, jak je znázorněno na obrázku níže, protože jsme právě upravili soubor crontab.

Pokud náš crontab bude fungovat dobře, pak bude náš bash skript spuštěn každou sekundu. Abychom to mohli ověřit, musíme vyhledat soubor/var/log/syslog spuštěním následujícího příkazu v terminálu:

$ sudo grep –a Cron.sh / var / log / syslog

Tento soubor bude obsahovat protokol všech případů, kdy byl spuštěn váš soubor bash, což bude znamenat, že váš crontab funguje, jak je znázorněno na obrázku níže:

Závěr

V dnešním článku jsme vás naučili dva způsoby ověření, zda crontab funguje nebo ne. První metoda by pro vás měla být dostačující, pokud máte v úmyslu zkontrolovat pouze stav své služby crontab. Pokud však chcete zjistit, zda se některá konkrétní úloha crontab úspěšně provádí nebo ne, budete muset provést metodu č. 2. Tyto metody byly provedeny na Linux Mint 20, můžete však použít i jakoukoli jinou preferovanou distribuci Linuxu.