Skip to main content

Kuinka muokata Linux Crontab -tiedostoa aikatauluttamaan työtä

Ubuntu Linux 12.04 LTS perusteet, osa 2 / 8: ensimmäinen käynnistys (Saattaa 2025)

Ubuntu Linux 12.04 LTS perusteet, osa 2 / 8: ensimmäinen käynnistys (Saattaa 2025)
Anonim

Demoni nimeltä Linux cron suorittaa prosessit säännöllisin väliajoin. Se tarkistaa järjestelmän tietyt kansiot skriptit toimimaan useissa kansioissa kuten /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly ja /etc/cron.monthly. On myös tiedosto nimeltä / etc / crontab.

Scripttien sijoittaminen Cron-kansioihin

Voit yksinkertaisesti sijoittaa komentosarjat asiaankuuluviin kansioihin, jotta ne voivat suorittaa säännölliset välein.

Avaa esimerkiksi pääteikkuna ja suorita seuraava ls-komento:

ls / etc / cron *

Näet luettelon ohjelmista tai komentosarjoista, jotka suoritetaan tunneittain, päivittäin, viikoittain ja kuukausittain.

Näiden kansioiden ongelmat ovat, että ne ovat hieman epämääräisiä. Esimerkiksi, päivittäin tarkoittaa, että käsikirjoitus kulkee kerran päivässä, mutta sinulla ei ole valtaa aikaa, jolloin komentosarja toimii kyseisenä päivänä.

Tällöin crontab-tiedosto tulee sisään.

Muokkaamalla crontab-tiedostoa saat komentosarjan tai ohjelman suoritettavaksi täsmällisellä päivämäärällä ja kellonajalla, jonka haluat suorittaa.

käyttöoikeudet

Crontab-komento edellyttää, että käyttäjällä on oikeudet muokata crontab-tiedostoa. Käytettävissä on periaatteessa kaksi tiedostoa, joiden avulla voidaan hallita crontab-käyttöoikeuksia:

  • /etc/cron.allow
  • /etc/cron.deny

Jos tiedosto /etc/cron.allow on olemassa, käyttäjän, joka haluaa muokata crontab-tiedoston, on oltava kyseisessä tiedostossa. Jos cron.allow-tiedostoa ei ole, mutta tiedostossa on /etc/cron.deny, käyttäjä ei saa olla kyseisessä tiedostossa. Jos molemmat tiedostot ovat olemassa, niin /etc/cron.allow ohittaa tiedoston /etc/cron.deny. Jos tiedostoa ei ole olemassa, se riippuu järjestelmän kokoonpanosta, voiko käyttäjä muokata crontabia.

Rootkit-käyttäjä voi aina muokata crontab-tiedostoa. Voit käyttää su-komentoa pääkäyttäjän tai sudo-komennon suorittamiseen crontab-komennon suorittamiseksi.

Muokkaa Crontab-tiedostoa

Jokainen käyttäjä, jolla on tarvittavat käyttöoikeudet, voi luoda oman crontab-tiedostonsa. Cron-komento etsii periaatteessa kaikkia crontab-tiedostoja ja kulkee niiden läpi.

Voit tarkistaa, onko sinulla crontab-tiedostoa suorittamalla seuraava komento:

crontab -l

Jos sinulla ei ole crontab-tiedostoa, viesti "ei crontab for ", muuten crontab-tiedostosi tulee näkyviin (tämä toiminto eroaa järjestelmästä toiseen, joskus se ei näy lainkaan ja muina aikoina se näkyy," älä muokkaa tätä tiedostoa ").

Luo tai muokkaa crontab-tiedostoa suorita seuraava komento:

crontab -e

Avaava tiedosto sisältää paljon tietoa, mutta keskeinen osa on esimerkki juuri ennen kommenttien loppua (kommentit on merkitty riveillä, jotka alkavat #).

# m h dom mon dow -komento

0 5 * * 1 tar -zcf /var/backups/home.tgz / home /

Crontab-tiedoston jokaiselle riville sopii 6 tietoa:

  • Päivän minuutti komennon suorittaminen (m)
  • Päivän tunti, jona komento on ajettava (h)
  • Kuukauden päivä, jolloin komento on ajettava (dom)
  • Kuukausi, jolloin komento on ajettava (mon)
  • Viikonpäivä on komento ajaa (dow)
  • Käsky

Jokaiselle kohteelle (lukuun ottamatta komentoa) voit määrittää jokerimerkin. Katso seuraava esimerkki crontab-rivi:

30 18 * * * tar -zcf /var/backups/home.tgz / home /

30 minuutin, 18 tunnin ja minkä tahansa päivän, kuukauden ja viikonpäivän tämä crontab-merkintä zip ja tar kotihakemisto / var / backups kansioon.

Jotta komento voidaan suorittaa 30 minuutin kuluttua joka tunti, suorita seuraava komento:

30 * * * * komento

Jotta komento toimisi joka minuutti viimeisten 6 kk: n aikana, suorita seuraava komento:

* 18 * * * komento

Sinun on siis oltava varovainen asettamalla crontab-komentoja.

Esimerkiksi:

* * * 1 * komento

Tämä käsky kulkee joka minuutti joka tunti jokaisena viikonpäivänä tammikuussa.

Komennon suorittaminen kello 5: ssä 1. tammikuuta tee seuraavaa komentoa varten crontab-tiedostolle:

0 5 1 1 * komento

Kuinka poistaa Crontab-tiedosto

Useimmiten et halua poistaa crontab-tiedostoa, mutta haluat poistaa joitain rivit crontab-tiedostosta.

Jos kuitenkin haluat poistaa käyttäjän crontab-tiedoston, suorita seuraava komento:

crontab -r

Turvallisempi tapa tehdä tämä on suorittaa seuraava komento:

crontab -i

Käyttöjärjestelmä pyytää tarkistusta ennen sen poistamista crontab-tiedostosta.