Cron Vs Anacron: Bii o ṣe le Ṣeto Awọn iṣẹ Lilo Anacron lori Lainos
Ninu nkan yii, a yoo ṣalaye cron ati anacron ati tun fihan ọ bi o ṣe le ṣeto anacron lori Linux. A yoo daradara bo lafiwe ti awọn iṣẹ-ṣiṣe meji wọnyi.
Lati seto iṣẹ-ṣiṣe kan ni akoko ti a fifun tabi nigbamii, o le lo awọn aṣẹ ‘ni’ tabi ‘ipele’ ati lati ṣeto awọn aṣẹ lati ṣiṣẹ leralera, o le lo awọn ohun elo cron ati anacron.
Cron - jẹ daemon ti a lo lati ṣiṣe awọn iṣẹ ṣiṣe ti a ṣeto gẹgẹbi awọn ifẹhinti eto, awọn imudojuiwọn ati ọpọlọpọ diẹ sii. O dara fun ṣiṣe awọn iṣẹ ṣiṣe eto lori awọn ero ti yoo ṣiṣẹ 24X7 nigbagbogbo bi awọn olupin.
Awọn aṣẹ/awọn iṣẹ-ṣiṣe ni a kọ sinu awọn iṣẹ cron eyiti a ṣe eto ni awọn faili crontab. Faili crontab eto aiyipada jẹ/ati be be/crontab, ṣugbọn olumulo kọọkan tun le ṣẹda faili crontab tiwọn ti o le ṣe ifilọlẹ awọn aṣẹ ni awọn akoko ti olumulo n ṣalaye.
Lati ṣẹda faili crontab ti ara ẹni, tẹ iru atẹle:
$ crontab -e
Bii o ṣe le Ṣeto Anacron ni Lainos
A lo Anacron lati ṣiṣẹ awọn aṣẹ ni igbakọọkan pẹlu igbohunsafẹfẹ ti a ṣalaye ni awọn ọjọ. O ṣiṣẹ diẹ ti o yatọ si cron; dawọle pe ẹrọ kan kii yoo ni agbara ni gbogbo igba.
O jẹ deede fun ṣiṣe lojoojumọ, ọsẹ, ati awọn iṣẹ eto eto oṣooṣu deede nipasẹ cron, lori awọn ero ti kii yoo ṣiṣẹ 24-7 gẹgẹbi awọn kọǹpútà alágbèéká ati awọn ẹrọ kọǹpútà.
A ro pe o ni iṣẹ ṣiṣe ti a ṣeto (gẹgẹ bi iwe afọwọkọ afẹyinti) lati wa ni ṣiṣe pẹlu lilo cron ni gbogbo ọganjọ, o ṣee ṣe nigbati o ba sùn, ati tabili tabili/kọǹpútà alágbèéká rẹ wa ni pipa nipasẹ akoko yẹn. Iwe afọwọkọ afẹyinti rẹ kii yoo ṣiṣẹ.
Sibẹsibẹ, ti o ba lo anacron, o le ni idaniloju pe nigbamii ti o ba ni agbara lori deskitọpu/kọǹpútà alágbèéká lẹẹkansii, iwe afọwọkọ afẹyinti yoo wa ni pipa.
Bii Anacron ṣe n ṣiṣẹ ni Lainos
a ṣe akojọ awọn iṣẹ anacron ni/ati be be lo/anacrontab ati pe awọn iṣẹ le ṣe eto nipa lilo ọna kika ni isalẹ (awọn asọye inu faili anacrontab gbọdọ bẹrẹ pẹlu #).
period delay job-identifier command
Lati ọna kika loke:
- akoko - eyi ni igbohunsafẹfẹ ti ipaniyan iṣẹ ti a sọ ni awọn ọjọ tabi bi @daily, @weekly, tabi @monthly fun ẹẹkan fun ọjọ kan, ọsẹ, tabi oṣu. O tun le lo awọn nọmba: 1 - lojoojumọ, 7 - lọsẹẹsẹ, 30 - oṣooṣu ati N - nọmba awọn ọjọ. idaduro
- - o jẹ nọmba awọn iṣẹju lati duro ṣaaju ṣiṣe iṣẹ.
- iṣẹ-id - o jẹ orukọ iyasọtọ fun iṣẹ ti a kọ sinu awọn faili log.
Lati wo awọn faili apẹẹrẹ, tẹ:
$ ls -l /var/spool/anacron/ total 12 -rw------- 1 root root 9 Jun 1 10:25 cron.daily -rw------- 1 root root 9 May 27 11:01 cron.monthly -rw------- 1 root root 9 May 30 10:28 cron.weekly
- pipaṣẹ - o jẹ aṣẹ tabi afọwọkọ ikarahun lati ṣe.
- Anacron yoo ṣayẹwo ti o ba ti ṣiṣẹ iṣẹ kan laarin akoko ti a ṣalaye ninu aaye asiko naa. Ti kii ba ṣe bẹ, o ṣe pipaṣẹ ti a sọ ni aaye aṣẹ lẹhin ti nduro nọmba awọn iṣẹju ti a ṣalaye ninu aaye idaduro.
- Lọgan ti a ba ti ṣiṣẹ iṣẹ naa, o ṣe igbasilẹ ọjọ ni faili timestamp kan ninu itọsọna/var/spool/anacron pẹlu orukọ ti a ṣalaye ninu aaye id-iṣẹ (orukọ faili timestamp).
Jẹ ki a wo apẹẹrẹ bayi. Eyi yoo ṣiṣẹ iwe-akọọlẹ /home/aaronkilik/bin/backup.sh lojoojumọ:
@daily 10 example.daily /bin/bash /home/aaronkilik/bin/backup.sh
Ti ẹrọ naa ba wa ni pipa nigbati a ba nireti iṣẹ backup.sh lati ṣiṣẹ, anacron yoo ṣiṣẹ ni iṣẹju mẹwa 10 lẹhin ti ẹrọ naa wa ni titan laisi nini lati duro fun awọn ọjọ 7 miiran.
Awọn oniyipada pataki meji wa ninu faili anacrontab ti o yẹ ki o ye:
- START_HOURS_RANGE - eyi ṣeto ibiti akoko ninu eyiti awọn iṣẹ yoo bẹrẹ (ie ṣiṣe awọn iṣẹ lakoko awọn wakati wọnyi).
- RANDOM_DELAY - eyi n ṣalaye idaduro aifọwọyi ti o pọ julọ ti a ṣafikun olumulo ti a ṣalaye ti idaduro iṣẹ kan (nipa aiyipada o jẹ 45).
Eyi ni bi faili anacrontab rẹ ṣe le ṣee ṣe.
# /etc/anacrontab: configuration file for anacron # See anacron(8) and anacrontab(5) for details. SHELL=/bin/sh PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin HOME=/root LOGNAME=root # These replace cron's entries 1 5 cron.daily run-parts --report /etc/cron.daily 7 10 cron.weekly run-parts --report /etc/cron.weekly @monthly 15 cron.monthly run-parts --report /etc/cron.monthly @daily 10 example.daily /bin/bash /home/aaronkilik/bin/backup.sh
Atẹle yii jẹ ifiwera ti cron ati anacron lati ṣe iranlọwọ fun ọ lati loye igba ti o le lo eyikeyi ninu wọn.
Iyatọ nla laarin cron ati anacron ni pe cron n ṣiṣẹ daradara lori awọn ero ti yoo ṣiṣẹ lemọlemọ lakoko ti a ti pinnu anacron fun awọn ẹrọ ti yoo ni agbara ni ọjọ kan tabi ọsẹ kan.
Ti o ba mọ ọna miiran, ṣe alabapin pẹlu wa ni lilo fọọmu asọye ni isalẹ.