Konfigurationen av anachrontab. Linux och dödssynder del fyra

anacron man page

Anacron låter dig köra program även om det angivna datumet har passerat.


Vi gör en lista över programvara och verktyg för Linux som används som en guide till listan över de sju dödssynderna. Liksom i de tidigare artiklarna använder vi lathet som en ursäkt för att prata om automationsverktyg i Linux. En av dem i anakron. I den här artikeln kommer vi att se hur konfigurationen av anacrontab är. anacrontab är den som talar om för anacron vad den ska göra och när den ska göras.

I anacron är datumet för uppgifterna fastställt i dagar och, om datorn inte är igång när en uppgift körs, startar den när den startar.

Anacrontab-konfigurationen

Initialt letar anacron efter listan över uppgifter som ska utföras i katalogen /etc/anacrontab. Uppgifterna ska skrivas i följande format:

período retraso identificador del trabajo comando donde:

  • period: Frekvens med vilken arbetet ska utföras. Det kan uttryckas i dagar (dess förkortning på engelska) period (@daily, @weekly eller @monthly för dag, vecka eller månad) eller med siffror (1 för dag, 7 för vecka, 30 för månad och valfritt tal för en godtycklig period av dagar.
  • dröjsmål: Hur lång tid det tar att vänta innan jobbet påbörjas. Till exempel 360 för att utföra en uppgift klockan 6 på morgonen.
  • jobbidentifierare: Namn som tilldelats jobbet för att skilja det från andra i fel- och resultatrapporter
  • .

  • Comando: Det är instruktionen som anacron måste utföra vid det angivna ögonblicket.

Eftersom vår avsikt är att använda anacron för uppgifter som inte har med systemadministration att göra, vi kommer att replikera katalogerna som används av cron i vår lokala användarmapp. vi gör det med

mkdir -p ~/.local/etc/anacrontab: ~/.local/etc/cron.daily ~/.local/etc/cron.weekly ~/.local/etc/cron.daily  ~/.var/spool/anacron

Med detta skapar vi katalogerna för att spara de olika dagliga, veckovisa och månatliga skripten, samt platsen där rapporten om den senaste körningen av anacron kommer att sparas.

Slutligen säger vi till anacron att använda våra lokala användarmappar istället för systemmappar.

anacron -fn -t ~/.local/etc/anacrontab -S ~/.var/spool/anacron

Nu ska vi redigera en konfigurationsfil. Vi gör det från terminalen med:

nano ~/.local/etc/anacrontab:

I dokumentet som öppnas lägger vi till dessa rader:

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

Dessa linjer fyller samma funktioner som vi redan förklarat för crontab. Ange att du ska använda Bash som kommandotolk och i vilka kataloger du ska hitta de körbara filerna. Vi sparar dokumentet med maj + 0 och vi stänger det med Skift + X.

Namnet och platsen för cron-mapparna vi skapar är ett godtyckligt val. Jag har valt att behålla de förinställda för att inte förvirra läsare som behöver ytterligare information från andra källor. Så länge sökvägen till skriptet anges i acrontab kan du använda önskad mapp och lagringssökväg. Detsamma gäller jobbidentifieraren.

Det finns två andra variabler som vi kan konfigurera:

  • START_HOURS_RANGE
  • : Ställer in tidsintervallet inom vilket jobb ska starta (dvs kör jobb endast under följande timmar).

  • RANDOM_DELAY
  • : Detta definierar den maximala slumpmässiga fördröjningen som läggs till den användardefinierade fördröjningen för ett jobb (standard är 45).

Vad är skillnaden mellan cron och anacron?

cron är vad som i system och derivat är känt som en daemon det vill säga ett program som körs i bakgrunden och utan användarinblandning. Den är avsedd för servrar, det vill säga utrustning som fungerar nästan permanent utan att någon behöver uppmärksamma den, men som kräver frekventa underhållsuppgifter.

anacron är ett normalt program mer lämplig för stationära datorer De är inte på kontinuerligt. Det är därför, till skillnad från cron, där den minsta tidsenheten är minuten, fungerar den med en minsta frekvens på en dag.

Av samma anledning inkluderar cron inte alternativ ifall datorn inte är påslagen.
eller medan anacron går igenom de väntande uppgifterna vid inloggning. När den hittar ett jobb som inte startat vid den inställda tiden, kommer det att utföra kommandot som anges i kommandofältet efter att ha väntat på det antal minuter som anges i fördröjningsfältet. Det kommer sedan att logga datumet till en tidsstämpelfil.


Lämna din kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade med *

*

*

  1. Ansvarig för data: AB Internet Networks 2008 SL
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.