Планирање периодичних задатака помоћу Црон-а у Линук-у
црон
је Линук програм који се користи за планирање команде или скрипте да се изврши касније. Такође се може користити за планирање периодичних извршавања команди и скрипти. Програми заказани помоћу црон-а се обично називају Црон Јобс. Његова главна употреба је за задатке системске администрације као што су редовно прављење резервних копија, редовно ажурирање софтвера и други слични задаци одржавања.
Увод
црон
ради као демон у Линук-у, тј. као позадински процес. Омогућава корисницима да директно заказују послове помоћу команде цронтаб, која отвара конфигурациону датотеку под називом Црон Филе у уређивачу. За сваког корисника креирају се засебне Црон датотеке.
Креирање Црон датотеке и основне синтаксе
Тхе цронтаб
команда се може извршити са -е
означите за уређивање постојеће Црон датотеке. Ако датотека већ не постоји, биће креирана. Ако корисник први пут позива команду и ако је на Линук систему инсталирано више уређивача датотека, команда ће тражити од корисника да изабере подразумевани уређивач са листе уредника.
Након избора уређивача, креираће се и отвара црон датотека за корисника. Сада можете одредити послове у датотеци.
Општа синтакса за одређивање Црон посла је:
У основи, тхе ће се покретати у наведеном 'минуту' (0-59), 'сат' (0-23), 'дан у месецу' (1-31), месец (1-12), дан у недељи, (0-7, За недељу се може користити или 0 или 7) у Црон Јоб-у. Да поједноставимо, узмимо пример:
1 2 3 4 5 ецхо "Здраво"
Ово значи команда ехо "Здраво"
одвијаће се сваког петог дана у недељи (петак) и сваког 3. дана у месецу, сваког 4. месеца у години (април), у време 02:01 (2. сат први минут).
Ако се иста команда треба покретати сваки дан у 02:01, синтакса ће изгледати овако:
1 2 * * * ецхо "Здраво"
Тхе *
означава 'увек' или 'за све', нпр. за све месеце, за све дане у недељи итд.
Оператор команде (,
) може се користити за унос листе вредности када задатак треба да се понови. На пример:
0 2,3,4 * * * ецхо "Здраво"
Ово ће изводити програм сваког дана у 2, 3 и 4 сата ујутро.
Слично, цртица (-
) оператор може се користити за специфицирање опсега за који ће се задатак поновити. На пример:
0-20 2 * * * ехо "Здраво"
Ово ће покренути програм у 02:00, 02:01, 02:02 и тако даље до 02:20.
Коначно, имамо коса црта ( /
) оператор. Овај оператор се користи за одређивање вредности интервала према којој ће се задатак поновити. На пример. */15
у пољу минута значи да задатак треба понављати сваких 15 минута. 2-10/2
у пољу сати специфицира да се задатак понавља између 2 ујутро и 10 ујутро након сваких 2 сата (2 ујутро, 4 ујутро, 6 ујутро, 8 ујутро, 10 ујутро).
*/15 2-10/2 * * * ехо "Здраво"
Након што унесете унос у Црон датотеку, сачувајте датотеку и изађите из уређивача.
Требало би да видите а 'инсталирање новог цронтаб-а' поруку у терминалу након чувања и изласка из цронтаб датотеке.
Макрои
Одређени макрои су унапред дефинисани у Црон-у који специфицирају неке уобичајено потребне временске интервале, као што су сваки сат, сваки дан, сваки месец итд.
Да бисте покренули задатак једном дневно на почетку дана, тј. у 00:00, користите макро @даили
. Ово је еквивалентно 0 0 * * *
.
Ово можете ставити у Црон датотеку на исти начин као што је претходно описано.
На сличан начин могу се користити и други макрои, тј. @По сату
(0 минута сваког сата), @монтхли
(00:00 првог дана у месецу), @веекли
(00:00 првог дана у недељи, @годишње
(00:00 првог јануара сваке године), @рестарт
(при сваком покретању рачунара).
Закључак
У овом чланку смо научили како да додамо Црон послове за редовно извршавање у Линуку. Правилна употреба Црон Јобс-а је згодна чак и за најдосадније ручне задатке са којима се корисник суочава, нпр. редовно брисање старих дневника, архивирање свих врста хладних података (подаци којима се ретко приступа) итд.