crontab

Cron-töiden määrittäminen Linuxissa

Cron-töiden määrittäminen Linuxissa
Toistuvien tehtävien automatisointi ja ajoitus työasemilla ja palvelimilla parantaa tuottavuutta ja vähentää manuaalisia toimenpiteitä ja valvontaa. Linuxille on saatavana lukuisia tällaisia ​​työkaluja, ja yksi yleisimmin käytetty niistä on ”cron”.

Tässä artikkelissa selitetään tehtävien ajoitus ja komentosarjojen suorittaminen säännöllisin väliajoin cron-töitä käyttämällä.

Mikä on Cron?

Cron on tehtävien ajoitusohjelma, joka toimii taustalla prosessina. Sitä voidaan käyttää ajoittain tiettyihin ajoitettuihin töihin käyttämällä ennalta määritettyjä sääntöjä. Cron on esiasennettu useimpiin Linux-jakeluihin tai saatavana arkistoissa manuaalisesti asennettavaksi.

Cron-esiasetukset

Cron on Ubuntussa mukana joukko ennalta määritettyjä ajastimia. Voit tarkistaa ne suorittamalla alla olevan komennon:

$ ls / etc / cron.*

Yleensä nämä kansiot ovat “/ etc / cron.tunneittain ”,“ / etc / cron.päivittäin ”,“ / etc / cron.kuukausittain ”ja” / etc / cron.viikoittain".

Laita vain haluamasi komentosarjat johonkin näistä kansioista automaattisten tehtävien suorittamiseksi tunneittain, päivittäin, kuukausittain tai viikoittain.

Huomaa, että cron käyttää oletuksena "/ bin / sh" -kuorta. Jos haluat käyttää ”/ bin / bash” -kuvaketta cron-skripteissä, sinun on käytettävä!# / bin / bash ”hashbang komentotiedoston yläosassa tai määritä kuori muuttujaksi“ SHELL = / bin / bash ”ajoitetun bash-komentosarjan ensimmäisellä rivillä. SHELL-ympäristömuuttujan korvaaminen toimii myös alla selitetyssä crontab-editorissa.

Kaikki järjestelmän ympäristömuuttujat eivät välttämättä ole alttiina cron-töille. Joten on yleensä hyvä määritellä tärkeät ympäristömuuttujat manuaalisesti cronin aikatauluttamaan komentosarjaan.

Crontab

Crontabin avulla voit määrittää omat ajoitetut tehtävät. Sen avulla voit määrittää cron-aikataulut, jotka poikkeavat neljästä yllä selitetystä tavallisesta cron-esiasetuksesta.

Voit asettaa ajoitetun tehtävän crontab-sovellukseen käynnistämällä crontab-editorin ensin alla olevan komennon avulla:

$ crontab -e

Nyt tiedoston loppuun voit lisätä merkinnän seuraavassa muodossa:

minuutti tunti päivä kuukausi arkipäivä / full / path / to / script.sh

Missä:

Alla oleva crontab-merkintä ottaa kuvakaappauksen työpöydällesi ja tallentaa sen kotihakemistoon kerran 15. maaliskuuta kello 15:13 2. maaliskuuta plus joka maaliskuun tiistai klo 15.13.

13 15 2 3 2 scrot

Voit luetella kaikki crontab-merkinnät seuraavalla komennolla:

$ crontab -l

Lisää esimerkkejä

Cron-tehtävät voidaan parhaiten selittää esimerkkien avulla, joten alla on joitain esimerkkejä, jotka ottavat säännöllisesti kuvakaappauksia työpöydältäsi ja tallentavat ne kotikansioon.

Viiden ajoitusmuuttujan lisäksi cron käyttää myös joitain erityisiä merkkijonoja töiden ajoitukseen. Nämä kielet ovat:

Alla oleva crontab-merkintä ottaa kuvakaappauksen jokaisesta uudelleenkäynnistyksestä:

@reboot scrot

Voit korvata ”@reboot” muilla yllä mainituilla erikoismerkinnöillä.

Asteriskin tai jokerimerkin käyttäminen minkä tahansa viiden muuttujan sijasta toistaa työn muuttujan kaikissa uusissa esiintymissä. Alla olevasta merkinnästä otetaan kuvakaappaus joka minuutti:

* * * * * Scrot

Joka tunti:

0 * * * * scrot

Joka päivä klo 18.00:

0 18 * * * scrot

Joka kuukausi 6. klo 18.00:

0 18 6 * * scrot

Käytä komentoa "/" suorittaaksesi komentosarjan kiinteänä 30 minuutin jaksona (suoritetaan 30 minuutin välein):

* / 30 * * * * scrot

Voit käyttää pilkuilla erotettuja muuttujia määritelläksesi komentosarjan toistuvan suorituksen säännöllisin väliajoin. Alla oleva esimerkki ottaa kuvakaappauksen työpöydältäsi uuden tunnin joka 1., 4. ja 5. minuutti.

1,4,5 * * * * scrot

Crontab-merkintöjen tarkistaminen

Crontab-merkintöjen määrittely voi olla hankalaa, mutta niiden virheenkorjaus tai niiden oikeaan aikaleimoihin tekemisen tarkistaminen on vielä hankalampaa. Yksi vaihtoehto on käyttää virtuaalikonetta ja kirjata ajoittain cron-työssä ajettavan komentosarjan aikaleimat sisällyttämällä jotain esimerkiksi "date" -komentoa ja ohjaamalla ulostulo tekstitiedostoon. Parempi ratkaisu on kuitenkin käyttää yhtä lukuisista verkossa saatavilla olevista online-cron-työpaikkojen testauspalveluista. Suosittelen antamaan cron tester -sivusto saataville tässä yritys.

Johtopäätös

Cron-töiden suorittaminen on erinomainen tapa automatisoida toistuvia tehtäviä, erityisesti palvelimilla. Työkalu on erittäin tehokas ja muokattavissa. On kuitenkin tärkeää varmistaa, että aikatauluttajan määrittely toimii oikein, varsinkin jos on kriittisiä tehtäviä.

Suosituimmat Oculus App Lab -pelit
Jos olet Oculus-kuulokemikrofonin omistaja, sinun täytyy olla tietoinen sivulatauksesta. Sivulataus on prosessi, jolla ei-kaupallista sisältöä asennet...
Top 10 Games to Play on Ubuntu
Windows platform has been one of the dominating platforms for gaming because of the huge percentage of games that are developing today to natively sup...
5 parasta arcade-peliä Linuxille
Nykyään tietokoneet ovat vakavia koneita, joita käytetään pelaamiseen. Jos et pääse uusiin korkeisiin pisteisiin, tiedät mitä tarkoitan. Tässä viestis...