Weboldal keresés

Cron Jobs létrehozása és kezelése Linuxon


A Cron a Linux egyik leghasznosabb eszköze és a fejlesztők kedvence, mert lehetővé teszi automatizált parancsok futtatását meghatározott időszakokban, dátumokon és időközönként általános célú és feladatspecifikus szkriptek használatával. A leírás alapján elképzelhető, hogy a rendszergazdák hogyan használják a biztonsági mentési feladatok, a címtártisztítás, az értesítések stb. automatizálására.

A Cron feladatok a háttérben futnak, és folyamatosan ellenőrzik az /etc/crontab fájlt, valamint az /etc/cron.*/ és a /var/spool/cron/ fájlokat. könyvtárakat. A cron fájlokat nem szabad közvetlenül szerkeszteni, és minden felhasználónak egyedi crontabja van.

Akkor hogyan kell cron-feladatokat létrehozni és szerkeszteni? crontab parancsokkal. A crontab a cron feladatok létrehozására, szerkesztésére, telepítésére, eltávolítására és listázására használt módszer.

A cron feladatok létrehozásának és szerkesztésének parancsa ugyanaz és egyszerű. És ami még menőbb, hogy nem kell újraindítania a cront új fájlok létrehozása vagy a meglévők szerkesztése után.


crontab -e

Cron szintaxis

Csakúgy, mint bármely nyelv esetében, a cron használata sokkal könnyebb, ha megérti a szintaxisát, és két formátumot kell ismernie:


A B C D E USERNAME /path/to/command arg1 arg2
OR
A B C D E USERNAME /root/backup.sh

A fenti cron szintaxis magyarázata:

  • A: Percek tartomány: 0–59
  • B: Óra tartomány: 0–23
  • C: Napok tartomány: 0–31
  • D: Hónapok tartomány: 0–12
  • E: A hét napjai tartomány: 0–7. Hétfőtől kezdve a 0 vagy a 7 a vasárnapot jelenti
  • USERNAME: cserélje ki ezt a felhasználónevére
  • /path/to/command – Az ütemezni kívánt szkript vagy parancs neve

Ez nem minden. A Cron 3 operátor szimbólumot használ, amelyek lehetővé teszik több érték megadását egy mezőben:

  1. Csillag (*): meghatározza egy mező összes lehetséges értékét
  2. A (,) vessző: az értékek listáját adja meg
  3. Szójel (-): értékek tartományát adja meg
  4. Elválasztó (/): lépésértéket ad meg

Most, hogy ismeri a Cron szintaxisát és operátorait, lássunk néhány cron példát.

Példák a Cron munkára

A cron parancsok futtatásának első lépése a crontab telepítése a következő paranccsal:


crontab -e

Futtassa a /root/backup.sh fájlt minden nap 3 órakor:


0 3 * * * /root/backup.sh

Futtassa a script.sh fájlt 16:30-kor minden hónap második napján:

30 16 2 * * /path/to/script.sh

Futtassa a /scripts/phpscript.php programot 22:00-kor a héten:

0 22 * * 1-5 /scripts/phpscript.php

Futtassa a perlscript.pl fájlt 23 perccel éjfél után, hajnali 2-kor és 4-kor, mindennap:

23 0-23/2 * * * /path/to/perlscript.pl

Futtassa a Linux parancsot minden vasárnap 04:05-kor:

5 4 * * sun /path/to/linuxcommand

Cron opciók

Sorolja fel a cron munkákat.


crontab -l
OR
crontab -u username -l

Törölje az összes crontab-feladatot.

crontab -r

Törölje a Cron-feladatot egy adott felhasználóhoz.


crontab -r -u username

Strings a Crontabban

A karakterláncok a fejlesztők kedvenc dolgai közé tartoznak, mert időt takarítanak meg azáltal, hogy kiküszöbölik az ismétlődő írást. A Cron speciális karakterláncokkal rendelkezik, amelyek segítségével gyorsabban hozhat létre parancsokat:

  1. @hourly: Óránként egyszer fut, azaz "0 * * * *"
  2. @midnight: Futtatás naponta egyszer, azaz „0 0 * * *
  3. @daily: ugyanaz, mint éjfél
  4. @weekly: futtassa hetente egyszer, azaz „0 0 * * 0
  5. @monthly: havonta egyszer fut, azaz „0 0 1 * *
  6. @évente: Minden évben egyszer fut, azaz „0 0 1 1 *
  7. @évente: ugyanaz, mint az @évente
  8. @reboot: Minden indításkor futtassa egyszer

Például a következőképpen készíthet biztonsági másolatot a rendszeréről minden nap:

@daily /path/to/backup/script.sh

Ezen a ponton mindennel rendelkezik, amire szüksége van a rendszerfeladatok létrehozásához és kezeléséhez a Cron használatával. Mostantól megkezdheti több környezet beállítását és karbantartását ütemezett parancsok használatával.

Mennyire vagy Cron felhasználó? És vannak olyan részletek, amelyekkel hozzájárulhat a cikkhez? A vitadoboz lent található.

Ha eléggé tisztában van a Crontab működésével, használhatja ezeket a remek Crontab generátor segédprogramokat a crontab sorok ingyenes generálására.

Ezenkívül itt olvashatja az Ubuntu cikkét a Cron használatáról. Vannak benne források, amelyeket hasznosnak találhat.