Mifano 11 ya Kupanga Kazi ya Cron katika Linux


Katika makala hii, tutapitia na kuona jinsi tunavyoweza kuratibu na kuendesha kazi kwa nyuma kiotomatiki kwa vipindi vya kawaida kwa kutumia amri ya Crontab.

Kushughulika na kazi ya mara kwa mara kwa mikono ni kazi ngumu kwa wasimamizi wa mfumo na kazi kama hizo zinaweza kuratibiwa na kuendeshwa kiotomatiki nyuma bila mwanadamu kuingilia kati kwa kutumia cron daemon katika Linux au mfumo wa uendeshaji kama Unix.

[Unaweza pia kupenda: Jinsi ya Kuunda na Kusimamia Kazi za Cron kwenye Linux ]

Kwa mfano, unaweza kubadilisha zana mkondoni ili kutoa kazi za cron.

Cron huamka kila dakika na hukagua majukumu ya ratiba kwa kuhesabika - Crontab (CRON TABle) ni jedwali ambapo tunaweza kuratibu aina kama hizi za kazi zinazorudiwa.

Vidokezo: Kila mtumiaji anaweza kuwa na crontab yake ya kuunda, kurekebisha na kufuta kazi. Kwa chaguo-msingi cron imewezeshwa kwa watumiaji, hata hivyo, tunaweza kuzuia watumiaji kwa kuongeza ingizo katika /etc/cron.deny faili.

Faili ya Crontab ina amri kwa kila mstari na ina sehemu sita na kutengwa kwa nafasi au kichupo. Sehemu tano za mwanzo zinawakilisha wakati wa kufanya kazi na sehemu ya mwisho ni ya amri.

  • Dakika (shikilia thamani kati ya 0-59)
  • Saa (shikilia thamani kati ya 0-23)
  • Siku ya Mwezi (shikilia thamani kati ya 1-31)
  • Mwezi wa mwaka (shika thamani kati ya 1-12 au Jan-Des, unaweza kutumia herufi tatu za kwanza za jina la kila mwezi yaani Jan au Juni.)
  • Siku ya wiki (shikilia thamani kati ya 0-6 au Sun-Sat, Hapa pia unaweza kutumia herufi tatu za kwanza za jina la kila siku yaani Sun au Wed. )
  • Amri - /njia/kwa/amri au hati unayotaka kuratibu.

Orodhesha au udhibiti kazi kwa amri ya crontab na chaguo la -l kwa mtumiaji wa sasa.

# crontab -l

00 10 * * * /bin/ls >/ls.txt

Ili kuhariri ingizo la crontab, tumia -e chaguo kama inavyoonyeshwa hapa chini. Katika mfano hapa chini utafungua kazi za ratiba katika mhariri wa VI. Fanya mabadiliko yanayohitajika na uache kubonyeza vitufe vya :wq ambavyo huhifadhi mpangilio kiotomatiki.

# crontab -e

Kuorodhesha kazi zilizoratibiwa za mtumiaji fulani anayeitwa tecmint kwa kutumia chaguo kama -u (Mtumiaji) na -l (Orodha).

# crontab -u tecmint -l

no crontab for tecmint

Kumbuka: Mtumiaji wa mizizi pekee ndiye aliye na haki kamili ya kuona maingizo ya crontab ya watumiaji wengine. Watumiaji wa kawaida hawawezi kuona wengine.

Tahadhari: Crontab iliyo na -r kigezo itaondoa kazi kamili zilizoratibiwa bila uthibitisho kutoka kwa crontab. Tumia -i chaguo kabla ya kufuta crontab ya mtumiaji.

# crontab -r

crontab na -i chaguo itakuhimiza uthibitisho kutoka kwa mtumiaji kabla ya kufuta crontab ya mtumiaji.

# crontab -i -r

crontab: really delete root's crontab?

  • Nyota(*) - Linganisha thamani zote kwenye sehemu au thamani yoyote inayowezekana.
  • Kistarishio(-) - Ili kufafanua masafa.
  • Kufyeka (/) – sehemu ya 1 /10 ikimaanisha kila dakika kumi au nyongeza ya masafa.
  • Koma (,) - Kutenganisha vitu.

Msimamizi wa mfumo anaweza kutumia predefine cron saraka kama inavyoonyeshwa hapa chini.

  • /etc/cron.d
  • /etc/cron.daily
  • /etc/cron.hourly
  • /etc/cron.monthly
  • /etc/cron.weekly

Kazi zilizo hapa chini hufuta faili tupu na saraka kutoka /tmp saa 12:30 asubuhi kila siku. Unahitaji kutaja jina la mtumiaji kutekeleza amri ya crontab. Katika mfano hapa chini mtumiaji wa mizizi anafanya kazi ya cron.

# crontab -e

30 0 * * *   root   find /tmp -type f -empty -delete

Haja ya kubadilisha sehemu tano za amri ya cron na maneno muhimu ikiwa unataka kutumia sawa.

Katika mfano hapa chini, amri1 na amri2 zinaendesha kila siku.

# crontab -e

@daily <command1> && <command2>

Kwa chaguo-msingi, cron hutuma barua kwa akaunti ya mtumiaji inayotekeleza cronjob. Ikiwa unataka kuizima ongeza kazi yako ya cron sawa na mfano hapa chini. Kutumia >/dev/null 2>&1 chaguo mwishoni mwa faili kutaelekeza matokeo yote ya matokeo ya cron chini ya /dev/null.

 crontab -e
* * * * * >/dev/null 2>&1

hitimisho: Uendeshaji wa kazi otomatiki unaweza kutusaidia kutekeleza majukumu yetu kwa njia bora zaidi, bila hitilafu, na kwa ufanisi. Unaweza kurejelea ukurasa wa mwongozo wa crontab kwa habari zaidi kwa kuandika amri ya 'man crontab' kwenye terminal yako.