Як рэдагаваць Linux CRONTAB Файл для планавання заданняў

ўвядзенне

Існуе дэман у Linux пад назвай хрон, які выкарыстоўваецца для запуску працэсаў праз рэгулярныя прамежкі часу.

Як гэта робіць гэта, каб праверыць пэўныя тэчкі на вашай сістэме скрыптоў для запуску. Напрыклад, ёсць папка пад назвай /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly і /etc/cron.monthly. Існуе таксама файл / і г.д. / кронтаб.

Па змаўчанні вы можаце проста змясціць скрыпты ў адпаведныя папкі, каб прымусіць іх працаваць рэгулярныя інтэрвалы.

Напрыклад адкрыць акно тэрмінала (націснуўшы CTRL, ALT і T) і выканаць наступную каманду LS :

Ls / і г.д. / хрон *

Вы ўбачыце спіс праграм або сцэнарыяў, якія выконваюцца штогадзіны, штодня, штотыдзень і штомесяц.

Праблема з гэтымі тэчкамі, што яны трохі расплывістыя. Напрыклад штодня азначае, што сцэнар будзе выконвацца адзін раз у дзень, але вы не маеце ніякага кантролю над часам, што сцэнар будзе запушчаны на працягу гэтага дня.

Гэта значыць, калі файл кронтаб прыходзіць.

Пры рэдагаванні файла кронтаба вы можаце атрымаць скрыпт або праграму для запуску на дакладную дату і час, вы хочаце, каб працаваць. Напрыклад, можа быць, вы хочаце зрабіць рэзервовую копію вашых файлаў кожную ноч у 6 гадзін вечара.

правы доступу

Кронтаб каманда патрабуе, каб карыстальнік мае дазвол на рэдагаванне файла кронтаб. Ёсць у асноўным два файла, якія выкарыстоўваюцца для кіравання дазволамі CRONTAB:

Калі файл /etc/cron.allow існуе, то карыстальнік хоча выправіць файл кронтаб павінен быць у гэтым файле. Калі cron.allow файл не існуе, але ёсць файл /etc/cron.deny, то карыстальнік не павінен існаваць у гэтым файле.

Калі абодва файла, то /etc/cron.allow перавызначаем файл /etc/cron.deny.

Калі ні адзін файл існуе, то гэта залежыць ад канфігурацыі сістэмы, ці можа карыстач рэдагаваць кронтаб.

Прывілеяваны карыстальнік заўсёды можа адрэдагаваць файл кронтаб. Вы можаце выкарыстоўваць каманду су , каб пераключыцца на суперпользователь або каманду SUDO для выканання каманды кронтаба.

Рэдагаванне файла CRONTAB

Кожны карыстальнік, які мае дазвол можа стварыць свой уласны файл кронтаб. Каманда хрон асноўным шукае існавання некалькіх файлаў кронтаба і праходзіць праз іх усіх.

Для таго, каб праверыць, ці ёсць у вас кронтаб файл запусціце наступную каманду:

кронтаб -l

Калі ў вас няма кронтаба файла паведамлення "не кронтаба для <вашеимя>» з'явіцца ў адваротным выпадку будзе адлюстроўвацца ваш файл кронтаб (гэтая функцыя адрозніваецца ад сістэмы да сістэмы, часам яна не адлюстроўвае наогул нічога і іншыя часы, ён адлюстроўвае " не рэдагаваць гэты файл ").

Для стварэння або рэдагавання кронтаб файла запусціце наступную каманду:

кронтаб -e

Па змаўчанні, калі не існуе рэдактар ​​па змаўчанні не абраны, то вам будзе прапанавана выбраць рэдактар ​​па змаўчанні для выкарыстання. Асабіста я хацеў бы выкарыстаць нана , як гэта даволі прама наперад у выкарыстанні і запускаецца з тэрміналу.

Файл, які адкрываецца вельмі шмат інфармацыі, але ключавая частка з'яўляецца прыкладам якраз перад канцом секцыі каментарыяў (каментары абазначаюцца радкі, якія пачынаюцца з #).

# Кі Dóm мон каманды DOW

0 5 * 1 дзёгаць -zcf /var/backups/home.tgz / дома /

Ёсць 6 штук інфармацыі, каб адпавядаць кожнай радку файла кронтаб:

Для кожнага элемента (за выключэннем каманды), вы можаце паказаць сімвал падстаноўкі. Паглядзіце на наступны прыклад кронтаб радок:

30 18 * * * дзёгаць -zcf /var/backups/home.tgz / дома /

То , што вышэй каманда кажа знаходзіцца ў 30 хвілін, 18 гадзін і любы дзень, месяц і дзень тыдня запусціць каманду на маланкі і ачарніць хатні каталог у тэчку / вар / рэзервовыя копіі.

Для таго, каб атрымаць каманду для запуску на 30 хвілін кожнай гадзіны, я магу запусціць наступную каманду:

30 * * * * каманда

Для таго, каб атрымаць каманду, каб запусціць кожную хвіліну міма 6 вечара я магу запусціць наступную каманду:

* 18 * * * каманда

Таму вы павінны быць асцярожныя аб наладзе вашай каманды CRONTAB.

Напрыклад:

* * * 1 * каманда

Гэтая каманда будзе працаваць кожную хвіліну, кожную гадзіну, кожны дзень, кожны тыдзень у студзені. Я сумняваюся, што гэта тое, што вы хочаце.

Для выканання каманды ў 5 гадзін раніцы 1-га студзеня вы б на наступную каманду ў файл кронтаб:

0 5 1 1 * каманда

Як выдаліць файл CRONTAB

Большая частка часу вы не хочаце, каб выдаліць файл кронтаб, але вы можаце выдаліць некаторыя радкі з файла кронтаба.

Аднак, калі вы хочаце выдаліць файл кронтаб вашага карыстальніка запусціце наступную каманду:

кронтаб -r

Больш бяспечны спосаб зрабіць гэта, каб выканаць наступную каманду:

кронтаб -i

Гэта задае пытанне "Вы ўпэўненыя?» перад выдаленнем файла кронтаб.