Skip to content

Hoe het Linux Crontab-bestand te bewerken om taken te plannen

11 de juni de 2021
a business man working at office 482541301 57ebd9e25f9b586c351fc80d

Wat te weten

  • Geef de inhoud van crontab weer met: crontab -l
  • Bewerk de crontab met: crontab -e
  • Timing werkt met: minuut, uur, dag van de maand, maand, dag van de week. Gebruik een sterretje (*) om cron elke dag, uur, enz.

In dit artikel wordt uitgelegd hoe u cron kunt gebruiken, een daemon in Linux die processen met regelmatige tussenpozen uitvoert. Het controleert bepaalde mappen op een systeem op scripts die in een reeks mappen moeten worden uitgevoerd, waaronder /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly en /etc/cron.monthly; er is ook een bestand genaamd /etc/crontab.

Scripts in Cron-mappen plaatsen

Plaats scripts in de relevante mappen om ze met regelmatige tussenpozen te laten werken. Open bijvoorbeeld een terminalvenster en voer het volgende ls-commando uit: ls /etc/cron*

type=”code”> De opdracht geeft een overzicht van de programma’s of scripts die elk uur, dagelijks, wekelijks en maandelijks worden uitgevoerd.

Deze mappen zijn vaag. Bijvoorbeeld, dagelijks betekent dat het script eenmaal per dag wordt uitgevoerd, maar dat u geen controle heeft over de tijd dat het script gedurende die dag wordt uitgevoerd. Dat is waar het crontab-bestand binnenkomt. Door het crontab-bestand te bewerken, voert u een script of programma uit op de exacte datum en tijd waarop u wilt dat het wordt uitgevoerd.

Rechten

De opdracht crontab vereist dat een gebruiker toestemming heeft om een ​​crontab-bestand te bewerken. Er zijn twee bestanden die crontab-machtigingen beheren: /etc/cron.allow en /etc/cron.deny.

  • Als het bestand /etc/cron.allow bestaat, moet de gebruiker die het crontab-bestand wil bewerken in dat bestand worden vermeld.
  • Als het cron.allow-bestand niet bestaat, maar er wel een /etc/cron.deny-bestand is, mag de gebruiker niet in dat bestand voorkomen.
  • Als beide bestanden bestaan, overschrijft het bestand /etc/cron.allow het bestand /etc/cron.deny.
  • Als geen van beide bestanden bestaat, hangt het van de systeemconfiguratie af of een gebruiker de crontab kan bewerken.

De rootgebruiker kan het crontab-bestand altijd bewerken. U kunt de opdracht su gebruiken om over te schakelen naar de root-gebruiker of de opdracht sudo om de opdracht crontab uit te voeren.

Bewerk het Crontab-bestand

Elke gebruiker met de juiste machtigingen kan een crontab-bestand maken. De opdracht cron zoekt naar alle crontab-bestanden en doorloopt elk bestand. Om te controleren of je een crontab-bestand hebt, voer je het volgende commando uit: crontab -l

type=”code”> Als je geen crontab-bestand hebt, wordt het bericht geen crontab voor verschijnt, anders wordt uw crontab-bestand weergegeven. Deze functionaliteit verschilt van systeem tot systeem. Soms geeft het helemaal niets weer, en soms wordt het weergegeven bewerk dit bestand niet.

Linux crontab-lijst

Voer de volgende opdracht uit om een ​​crontab-bestand te maken of te bewerken: crontab -e

type=”code”> Het bestand dat wordt geopend, bevat veel informatie, maar het belangrijkste onderdeel is het voorbeeld vóór het einde van de opmerkingensectie (opmerkingen worden aangegeven met regels die beginnen met #). # mh dom mon dow commando

type=”code”> 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/

type=”code”>

Linux bewerk crontab

Er zijn zes stukjes informatie die op elke regel van het crontab-bestand passen:

  • De minuut van de dag is het commando om te lopen (m).
  • Het uur van de dag waarop de opdracht moet worden uitgevoerd (h).
  • De dag van de maand waarop de opdracht moet worden uitgevoerd (dom).
  • De maand waarin de opdracht moet worden uitgevoerd (ma).
  • De dag van de week waarop de opdracht moet worden uitgevoerd (dow).
  • Het bevel.

Voor elk item (behalve de opdracht) kunt u een jokerteken opgeven. Bekijk de volgende voorbeeld crontab-regel: 30 18 * * * tar -zcf /var/backups/home.tgz /home/

type=”code”> Na 30 minuten, 18 uur en elke dag, maand en dag van de week, zal dit crontab-item de homedirectory zippen en tarren naar de map /var/backups. Vervang in de onderstaande voorbeelden het woord commando door het commando dat u wilt uitvoeren. Voer de volgende opdracht uit om een ​​opdracht te laten uitvoeren om 30 minuten na elk uur: 30 * * * * opdracht

type=”code”> Om een ​​opdracht elke minuut na 18:00 uur te laten uitvoeren, voert u de volgende opdracht uit: * 18 * * * opdracht

type=”code”> Je moet daarom voorzichtig zijn met het instellen van crontab-commando’s. Bijvoorbeeld: * * * 1 * commando

type=”code”> Deze opdracht wordt in januari elke minuut van elk uur van elke dag van elke week uitgevoerd. Om op 1 januari om 5 uur ’s ochtends een opdracht uit te voeren, voert u de volgende opdracht in het crontab-bestand in: 0 5 1 1 * opdracht

type=”code”>

Hoe een Crontab-bestand te verwijderen

Meestal wil je het crontab-bestand niet verwijderen. Het is echter mogelijk dat u enkele rijen uit het crontab-bestand wilt verwijderen. Voer de volgende opdracht uit om het crontab-bestand van uw gebruiker te verwijderen: crontab -r

type=”code”> Een veiligere manier om dit te doen is door het volgende commando uit te voeren: crontab -i

type=”code”> Het besturingssysteem vraagt ​​om verificatie voordat het het crontab-bestand verwijdert.