Het gebruik van cron voor lui. Linux en hoofdzonden deel twee

slapende tijger

Als je lui bent om repetitieve taken op je computer uit te voeren, doet Cron ze voor je.

Dit is de tweede artikel uit een serie waarin we de lijst van wat de katholieke kerk 'hoofdzonden' noemt als excuus gebruiken omMeer weten over commando's en programma's van de Linux-wereld. In dit geval blijven we praten over het gebruik van cron dat zeer nuttig zal zijn voor degenen die luiheid cultiveren.

Aangezien we leven in een tijd van mensen die gemakkelijk te beledigen zijn, wil ik, voordat ik op de zaak inga, verduidelijken dat het niet mijn bedoeling is om iemands religieuze overtuigingen belachelijk te maken. Het is in ieder geval zelfspot. Ik heb een groot deel van de jaren tachtig catechismus gestudeerd, zodat ik na mijn eerste communie nooit meer een voet in een kerk zette, tenzij een familiegebeurtenis dat vereiste. Ik moet die tijd op de een of andere manier terugkrijgen.

Waar zijn cron en crontab voor?

We hadden gezegd dat cron een daemon is, dat wil zeggen een programma dat op de achtergrond draait zonder tussenkomst van de gebruiker. Op zoek naar aanvullende informatie voor dit artikel, ontdekte ik dat het vertalen van daemon (zoals Unix-systemen en afgeleiden dit type programma noemen) als daemon is een wijdverbreide foutmaar ik ga het niet corrigeren. We hebben het over zonden, er moet minstens één demon zijn.

De functie van cron is om op een vooraf bepaalde tijd een bepaalde taak uit te voeren. Meestal is dit te wijten aan systeembehoeften, hoewel gebruikers anderen kunnen aangeven door een tekstbestand te bewerken dat bekend staat als crontab.

In de vorige post hadden we gezegd dat de commando's om crontab te maken zijn:

crontab –e voor de standaardgebruiker

O

crontab –u nombre_de_usuario voor een van de anderen.

Crontab is een tekstbestand dat Cron-instructies geeft over wat te doen en wanneer.

Over het gebruik van cron via crontab

Om onze crontab te maken, moeten we rekening houden met het volgende:

  • Voor elke taak wordt één regel gebruikt.
  • De datum en het tijdstip van uitvoering van de taak moeten worden vermeld. Voor het geval het een taak is die periodiciteit vereist. Elke woensdag om 5 uur worden de overige parameters bijvoorbeeld vervangen door sterretjes (*).
  • Als u meer dan één waarde aan een bepaalde parameter wilt toewijzen, moet elke waarde worden gescheiden door een komma.
  • Parameters worden gescheiden door een spatie.
  • De map waarin de opdrachtstarter zich bevindt, moet bekend zijn

Als we bijvoorbeeld willen dat de computer van onze kinderen elke dag om 20 uur uitschakelt, zou de instructie zijn:

0 20 * * * /sbin/shutdown

Als we willen dat de sluiting alleen op zondag is, veranderen we de instructie in:

0 20 * * 0 /sbin/shutdown

Er zijn enkele sneltoetsen die ervoor zorgen dat we niet alle parameters hoeven te typen. Zij zijn:

  • @uur: Voer om het uur een commando uit. 
  • @dagelijks: Voer de opdracht aan het begin van elke dag uit.
  • @wekelijks: Voer de opdracht uit aan het begin van de eerste dag van de week.
  • @maandelijks: Voer de opdracht uit aan het begin van de eerste dag van elke maand.
  • @yearly: Voer de opdracht in de eerste minuut van het jaar uit.

Enkele voorbeelden van het gebruik van deze opdracht zijn:

@daily /bin/sh /ruta_al_script/nombre_del_script.sh voer een Bash-script uit.

@hourly /bin/python3 /ruta_al_script/nombre_del_script.py voer elk uur een python-script uit.

In alle gevallen scripts moeten uitvoerrechten hebben.

In de voorbeelden die we zagen, wordt niet alleen het commando aangegeven, maar ook het pad waar het uitvoerbare bestand zich bevindt. We gaan aan de slag met deze mappen:

  • /ben: Het bevat alle applicaties die nodig zijn voor de werking van het systeem.
  • /sbin: Dit zijn de toepassingen die de rootgebruiker nodig heeft om het systeem te beheren.
  • / Home: Waar de applicaties van elke gebruiker worden opgeslagen.
  • /usr: Applicaties en bestanden die door gebruikers zijn geïnstalleerd, worden hier opgeslagen. Ze bevatten bestanden met de namen en functies die in deze lijst worden genoemd.

In het volgende artikel zullen we zien hoe we crontab-schrijven en enkele andere automatiseringstools die beschikbaar zijn voor Linux kunnen verbeteren.


Laat je reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

*

*

  1. Verantwoordelijk voor de gegevens: AB Internet Networks 2008 SL
  2. Doel van de gegevens: Controle SPAM, commentaarbeheer.
  3. Legitimatie: uw toestemming
  4. Mededeling van de gegevens: De gegevens worden niet aan derden meegedeeld, behalve op grond van wettelijke verplichting.
  5. Gegevensopslag: database gehost door Occentus Networks (EU)
  6. Rechten: u kunt uw gegevens op elk moment beperken, herstellen en verwijderen.