Sudarome Linux programinės įrangos ir įrankių, naudojamų kaip septynių mirtinų nuodėmių sąrašo vadovas, sąrašą. Kaip ir ankstesniuose straipsniuose, mes naudojame tinginystę kaip pasiteisinimą kalbėti apie automatizavimo įrankius sistemoje Linux. Vienas iš jų anachrone. Šiame straipsnyje pamatysime, kaip konfigūruojama anakrontab. anacrontab yra tas, kuris nurodo anacron, ką ir kada daryti.
Anacrone užduočių data fiksuojama dienomis ir, jei kompiuteris neveikia tuo metu, kai atliekama užduotis, jis paleidžiamas paleidus.
Anakrontab konfigūracija
Iš pradžių anakron ieško užduočių, kurias reikia atlikti, sąrašo kataloge /etc/anacrontab
. Užduotys turi būti parašytos tokiu formatu:
período retraso identificador del trabajo comando donde:
- laikotarpį: Darbo atlikimo dažnis. Jis gali būti išreikštas dienomis (santrumpa anglų k.) laikotarpiu (@daily, @weekly arba @monthly – diena, savaitė ar mėnuo) arba skaičiais (1 – diena, 7 – savaitė, 30 – mėnuo ir bet koks skaičius – savavališkas dienų laikotarpis.
- uždelsimas: Laikas, kurį reikia laukti prieš pradedant darbą. Pavyzdžiui, 360 užduočiai atlikti 6 valandą ryto.
- darbo identifikatorius: užduoties pavadinimas, skirtas atskirti jį nuo kitų klaidų ir rezultatų ataskaitose
- komanda: Tai instrukcija, kurią anacron turi įvykdyti nurodytu momentu.
.
Kadangi mes ketiname naudoti anacron užduotims, kurios nėra susijusios su sistemos administravimu, mes pakartosime cron naudojamus katalogus vietiniame vartotojo aplanke. mes tai darome su
mkdir -p ~/.local/etc/anacrontab: ~/.local/etc/cron.daily ~/.local/etc/cron.weekly ~/.local/etc/cron.daily ~/.var/spool/anacron
Taip sukuriame katalogus, skirtus skirtingiems dienos, savaitės ir mėnesio scenarijų išsaugojimui, taip pat vietą, kur bus išsaugota paskutinė anacron vykdymo ataskaita.
Galiausiai liepiame anakron naudoti vietinius vartotojo aplankus, o ne sistemos aplankus.
anacron -fn -t ~/.local/etc/anacrontab -S ~/.var/spool/anacron
Dabar mes ketiname redaguoti konfigūracijos failą. Tai darome iš terminalo su:
nano ~/.local/etc/anacrontab:
Atsidariusiame dokumente pridedame šias eilutes:
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
Šios eilutės atlieka tas pačias funkcijas, kurias jau paaiškinome crontab. Nurodykite, kad turėtumėte naudoti Bash kaip komandų interpretatorių ir kuriuose kataloguose rasite vykdomuosius failus. Išsaugome dokumentą su gegužės + 0 ir uždarome su Shift + X.
Mūsų sukurtų cron aplankų pavadinimas ir vieta yra savavališkas pasirinkimas. Pasirinkau pasilikti numatytuosius, kad nesupainiočiau skaitytojų, kuriems reikia papildomos informacijos iš kitų šaltinių. Kol scenarijaus kelias nurodytas acrontab, galite naudoti pageidaujamą aplanką ir saugyklos kelią. Tas pats pasakytina ir apie darbo identifikatorių.
Yra dar du kintamieji, kuriuos galime konfigūruoti:
- START_HOURS_RANGE
- RANDOM_DELAY
: nustato laiko intervalą, per kurį prasidės užduotys (ty vykdykite užduotis tik sekančiomis valandomis).
: Tai apibrėžia didžiausią atsitiktinę delsą, pridedamą prie vartotojo nustatytos užduoties delsos (numatytasis nustatymas yra 45).
Kuo skiriasi cron ir anakron?
cron yra tai, kas sistemose ir dariniuose yra žinoma kaip a demonas tai yra programa, kuri veikia fone ir be vartotojo įsikišimo. Jis skirtas serveriams, tai yra įranga, kuri veikia beveik nuolat, niekam nereikia į ją kreipti dėmesio, tačiau reikalauja dažnų priežiūros darbų.
anakron yra įprasta programa labiau tinka staliniams kompiuteriams Jie neveikia nuolat. Štai kodėl, skirtingai nei cron, kur mažiausias laiko vienetas yra minutė, jis veikia mažiausiai vieną dieną.
Dėl tos pačios priežasties cron neįtraukia alternatyvų, jei kompiuteris neįjungtas.arba kol anacron prisijungimo metu atlieka laukiančias užduotis. Radęs nustatytu laiku nepradėtą užduotį, sulaukęs uždelsimo laukelyje nurodyto minučių skaičiaus, vykdys komandos laukelyje nurodytą komandą. Tada jis užregistruos datą laiko žymos faile.