Démon v Linuxu volal cron běží procesy v pravidelných intervalech. Zkontroluje určité složky ve vašem systému, aby skripty byly spuštěny v řadě složek včetně /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly a /etc/cron.monthly. K dispozici je také soubor nazvaný / etc / crontab.
Umístění skriptů do složek Cron
Můžete jednoduše umístit skripty do příslušných složek a nechat je běžet v pravidelných intervalech.
Například otevřete okno terminálu a spusťte následující příkaz ls:
ls / etc / cron *
Zobrazí se seznam programů nebo skriptů, které se spouštějí hodinově, denně, týdně a měsíčně.
Problémem s těmito složkami je, že jsou trochu nejasné. Například, denně znamená, že skript bude spuštěn jednou denně, ale nemáte kontrolu nad časem, kdy bude skript spuštěn během daného dne.
Zde přichází soubor crontab.
Úpravou souboru crontab můžete získat spuštěný skript nebo program přesné datum a čas, kdy chcete spustit.
Oprávnění
Příkaz crontab vyžaduje, aby uživatel měl oprávnění k úpravě souboru crontab. V podstatě existují dva soubory, které se používají ke správě oprávnění crontab:
- /etc/cron.allow
- /etc/cron.deny
Pokud soubor /etc/cron.allow existuje, uživatel, který chce upravit soubor crontab, musí být v daném souboru. Pokud soubor cron.allow neexistuje, ale existuje soubor /etc/cron.deny, uživatel nesmí v tomto souboru existovat. Pokud existují oba soubory, pak /etc/cron.allow přepíše soubor /etc/cron.deny. Pokud žádný soubor neexistuje, záleží na konfiguraci systému, zda uživatel může upravit crontab.
Uživatel root může vždy upravit soubor crontab. Můžete buď použít příkaz su pro přepnutí na uživatele root nebo příkaz sudo pro spuštění příkazu crontab.
Úprava souboru Crontab
Každý uživatel, který má příslušná oprávnění, může vytvořit vlastní soubor crontab. Příkaz cron v podstatě hledá všechny soubory crontab a prochází každým z nich.
Chcete-li zkontrolovat, zda máte soubor crontab, spusťte následující příkaz:
crontab -l
Pokud nemáte soubor crontab, zobrazí se zpráva "no crontab for Chcete-li vytvořit nebo upravit soubor crontab, spusťte následující příkaz: crontab -e Otevřený soubor má spoustu informací, ale klíčovou součástí je příklad těsně před koncem části komentáře (komentáře jsou označeny řádky začínajícími čísly #). Příkaz # m h dom mon dow 0 5 * * 1 tar -zcf /var/backups/home.tgz / home / Existuje 6 informací, které se vejde do každého řádku souboru crontab: Pro každou položku (kromě příkazu) můžete zadat zástupný znak. Podívejte se na následující příklad crontab řádek: 30 18 * * * tar -zcf /var/backups/home.tgz / home / Za 30 minut, 18 hodin a každý den, měsíc a den v týdnu bude tato položka crontab zipovat a přetékat domovský adresář do složky / var / backups. Chcete-li dostat příkaz ke spuštění po 30 minutách za každou hodinu, spusťte následující příkaz: 30 * * * * příkaz Chcete-li dostat příkaz ke spuštění každou minutu po 6 hod., Spusťte následující příkaz: * 18 * * * příkaz Proto musíte být opatrní při nastavování příkazů crontab. Například: * * * 1 * příkaz Tento příkaz bude spuštěn každou minutu každé hodiny každého dne v týdnu v lednu. Chcete-li spustit příkaz v pondělí 5. ledna, měli byste na následující příkaz do souboru crontab: Většinu času nechcete odstranit soubor crontab, ale můžete chtít odstranit některé řádky z souboru crontab. Pokud však chcete odebrat soubor uživatele crontab, spusťte následující příkaz: crontab -r Bezpečnějším způsobem je spustit následující příkaz: crontab -i Operační systém požádá o ověření dříve, než odebere soubor crontab.
Jak odebrat soubor Crontab