RHEL 7 – RHCSA Notes (Cheat Sheets)
– Linux může spouštět úlohy automaticky a je dodáván s nástroji pro automatické úlohy:cron, anacron, at, batch .
– úlohy cron se mohou spouštět tak často, jako každou minutu.
– Naplánovaná úloha cron je přeskočena, pokud je systém mimo provoz.
– anacron může spustit úlohu pouze jednou denně.
– Naplánované úlohy jsou zapamatovány a spuštěny při příštím spuštění systému.
– crond démon hledá naplánované úlohy ve více souborech a adresářích:
1. /var/spool/cron/ 2. /etc/anacrontab 3. /etc/cron.d
Konfigurace úloh cronu
Úlohy cron jsou definovány v /etc/crontab.
Položky crontab jsou ve tvaru:
Minutes Hours Date Month Day-of-Week command
where: Minutes = [0 to 59] Hours = [0 to 23] Date = [1 to 31] Month = [1 to 12] Day-of-Week = [0 to 6] 0=Sunday - 6=Saturday command = a script file or a shell command. Other special characters can be used: - An asterisk (*) can be used to specify all valid values. - A hyphen (-) between integers specifies a range of integers. - A list of values separated by commas (,) specifies a list. - A forward slash (/) can be used to specify step values.
Další cron adresáře a soubory
/etc/cron.d
– Obsahuje soubory se stejnou syntaxí jako /etc/crontab – přístupné pouze rootovským právům
– Ostatní cron adresáře v /etc:–
cron.hourly cron.daily cron.weekly cron.monthly
– Skripty v těchto adresářích se spouštějí každou hodinu, denně, týdně nebo měsíčně v závislosti na názvu adresáře.
– Soubor /etc/cron.allow a /etc/cron.deny soubory omezují přístup uživatelů ke cronu. Pokud žádný soubor neexistuje, cron může používat pouze root.
Obslužný program Crontab
– Jiní uživatelé než root mohou také konfigurovat cron pomocí nástroje crontab.
– uživatelem definované crontabs jsou uloženy v /var/spool/cron/[username] .
– Chcete-li vytvořit nebo upravit položku crontab:
# crontab -e
– Chcete-li zobrazit seznam položek v uživatelsky definovaném crontab:
# crontab -l
Konfigurace úloh anacronu
– úlohy anacronu jsou definovány v /etc/anacrontab .
– Úlohy jsou definovány:
Period in days : frequency of execution in days Delay in minutes - Minutes to wait before executing the job job-identifier - A unique name used in logfiles command : a shell script or command to execute
příklad souboru anacronu:
SHELL=/bin/sh PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root # the maximal random delay added to the base delay of the jobs RANDOM_DELAY=45 # the jobs will be started during the following hours only START_HOURS_RANGE=3-22 #period in days delay in minutes job-identifier command 1 5 cron.daily nice run-parts /etc/cron.daily 7 25 cron.weekly nice run-parts /etc/cron.weekly @monthly 45 cron.monthly nice run-parts /etc/cron.monthly
v a dávce
– obslužné programy at a batch se používají pro plánování jednorázových úloh.
– příkaz at provede úlohu v určitý čas.
– příkaz batch provede úlohu, když je průměrná zátěž systému nižší než 0,8.
– služba atd musí být spuštěna, aby bylo možné spouštět úlohy nebo dávkové úlohy
– při syntaxi příkazu:
# at time
– Argument čas přijímá více formátů:
HH:MM MMDDYY,MM/DD/YY or MM.DD.YY month-name day year midnight: At 12:00 AM teatime: At 4:00 PM now + time -- here time can be minutes, hours, days or weeks
– syntaxe dávkového příkazu :
# batch (at> promp is displayed)
– /etc/at.allow a /etc/at.deny soubory omezují přístup uživatele k at. Pokud žádný soubor neexistuje, cron může používat pouze root.