Muokataan sivua Komentojen ajastaminen
Siirry navigaatioon
Siirry hakuun
Kumoaminen voidaan suorittaa. Varmista alla olevasta vertailusta, että haluat saada aikaan tämän lopputuloksen, ja sen jälkeen julkaise alla näkyvät muutokset.
Nykyinen versio | Oma tekstisi | ||
Rivi 7: | Rivi 7: | ||
at now + 2 min | at now + 2 min | ||
tuloksena saat komentokehotteen 'at>'. Voit kirjoittaa siihen vaikkapa komennon "cal > kuukausi.txt" (ilman lainausmerkkejä). Paina | tuloksena saat komentokehotteen 'at>'. Voit kirjoittaa siihen vaikkapa komennon "cal > kuukausi.txt" (ilman lainausmerkkejä). Paina enter ja sitten Ctrl+D niin pääset takaisin komentotulkkiin. Nyt voit tarkistaa että tiedostoa kuukausi.txt ei vielä ole. Komennolla atq näet että työsi on odottamassa. Parin minuutin kuluttua tiedoston kuukausi.txt pitäisi ilmestyä. | ||
Saman asian kuin edellä voit tehdä putkea hyödyntäen: | Saman asian kuin edellä voit tehdä putkea hyödyntäen: | ||
Rivi 53: | Rivi 53: | ||
Cron ei aja komentoja - tietenkään - silloin kun tietokone ei ole käynnissä, kun siinä ajetaan jotakin muuta käyttöjärjestelmää tai kun ajankohta puuttuu (kesäikaan siirtymisen takia). Se ei myöskään huolehdi siitä, että tällaisen tauon aikana tapahtumaan säädetyn työt tulisivat ajetuksi sen jälkeen, kun Linux taas käynnistetään. Jos näin halutaan tapahtuvan, pitää asentaa ''anacron''. | Cron ei aja komentoja - tietenkään - silloin kun tietokone ei ole käynnissä, kun siinä ajetaan jotakin muuta käyttöjärjestelmää tai kun ajankohta puuttuu (kesäikaan siirtymisen takia). Se ei myöskään huolehdi siitä, että tällaisen tauon aikana tapahtumaan säädetyn työt tulisivat ajetuksi sen jälkeen, kun Linux taas käynnistetään. Jos näin halutaan tapahtuvan, pitää asentaa ''anacron''. | ||
Anacron huolehtii siis ajamatta | Anacron huolehtii siis ajamatta jäneiden cron-töiden ajamisesta myöhemmin, kun tietokone on taas päällä. Sen asentaminen kannattaa, ellei kone yleensä ole päälle kaikki päivät vuorokauden ympäri. Oletusasetukset ovat yleensä riittävät, mutta erikoisemmassa käytössä (esimerkiksi jos käytössä on tärkeitä omia cron-töitä), sen olemassaolo voi olla hyvä huomioida skriptejä kirjoitettaessa. Myös viivettä koneen käynnistyksen ja töiden ajamisen välillä voi haluta säätää. | ||
=== Yleiset työt === | === Yleiset työt === | ||
Rivi 68: | Rivi 68: | ||
=== Ajan esitysmuoto === | === Ajan esitysmuoto === | ||
Crontab-tiedoston rivi koostuu yleensä kahdesta kentästä, viisiosaisesta aikakentästä ja siitä komennosta, joka on tarkoitus ajastaa. Osat ovat järjestyksessä '''minuutti''', '''tunti''', '''kuukaudenpäivä''', '''kuukausi''' ja '''viikonpäivä''' - sunnuntai on sekä päivä 0 että 7. Tähti tarkoittaa, että mikä tahansa arvo kelpaa, viisi tähteä siis asiaa joka tehdään joka minuutti (kannattaa tietenkin varmistua, ettei suoritettava asia kestä yli minuuttia!). | Crontab-tiedoston rivi koostuu yleensä kahdesta kentästä, viisiosaisesta aikakentästä ja siitä komennosta, joka on tarkoitus ajastaa. Osat ovat järjestyksessä '''minuutti''', '''tunti''', '''kuukaudenpäivä''', '''kuukausi''' ja '''viikonpäivä''' - sunnuntai on sekä päivä 0 että 7. Tähti tarkoittaa, että mikä tahansa arvo kelpaa, viisi tähteä siis asiaa joka tehdään joka minuutti (kannattaa tietenkin varmistua, ettei suoritettava asia kestä yli minuuttia!). | ||
Rivi 87: | Rivi 77: | ||
tarkoittaa että joka kuu ('*'), kun on 13. päivä ja perjantai ('5', viikon viides päivä), lähetetään meiliä kello 7:30 (minuutikenttä '30', tuntikenttä '7'). | tarkoittaa että joka kuu ('*'), kun on 13. päivä ja perjantai ('5', viikon viides päivä), lähetetään meiliä kello 7:30 (minuutikenttä '30', tuntikenttä '7'). | ||
Yksinkertaisimmillaan aikakentän osa on pelkkä numero, eli "30 * * * *" tarkoittaa komentoa joka suoritetaan "aina puolelta". Se voi olla myös numeroluettelo tai aikaväli, "29,30,31 * * * *" ja "29-31 * * * *" tarkoittavat | Yksinkertaisimmillaan aikakentän osa on pelkkä numero, eli "30 * * * *" tarkoittaa komentoa joka suoritetaan "aina puolelta". Se voi olla myös numeroluettelo tai aikaväli, "29,30,31 * * * *" ja "29-31 * * * *" tarkoittavat molemma "puolelta sekä minuutti ennen ja jälkeen". Välejä voi luetellakin, "10-19,30-39,50-59 * * * *" suorittaisi komennon aina kymmenen kertaa minuutin välein ja pitäisi sitten kymmenen minuutin tauon. Tasavälienkin ilmaisemiseen on lyhennysmerkintä. "*/2 * * * *" tarkoittaa "tasan", "kaksi yli", "neljä yli" ja niin edelleen. "10-20/3 * * * *" on sama kuin "10,13,16,19 * * * *". | ||
Kaikki nämä kentät voi yhdistää. Esimerkiksi "*/5 8-16 * * 1-5" tekisi jotain viiden minuutin välein "työaikaan", ts. maanantaista perjantaihin kello 8-16. | Kaikki nämä kentät voi yhdistää. Esimerkiksi "*/5 8-16 * * 1-5" tekisi jotain viiden minuutin välein "työaikaan", ts. maanantaista perjantaihin kello 8-16. | ||
Rivi 115: | Rivi 105: | ||
Koneen yleiseen toimintaan ja ylläpitoon kuuluvat ajastetut komennot ovat tiedostossa /etc/crontab ja hakemistoissa /etc/cron.d/, /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly ja /etc/cron/monthly. | Koneen yleiseen toimintaan ja ylläpitoon kuuluvat ajastetut komennot ovat tiedostossa /etc/crontab ja hakemistoissa /etc/cron.d/, /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly ja /etc/cron/monthly. | ||
at-komennolla ajastetut komennot on tallennettu hakemistoon /var/spool/at. Vastaavasti käyttäjien crontabit ovat hakemistossa /var/spool/cron. Kumpaankin hakemisoon lukuoikeus on vain rootilla. | at-komennolla ajastetut komennot on tallennettu hakemistoon /var/spool/at. Vastaavasti käyttäjien crontabit ovat hakemistossa /var/spool/cron. Kumpaankin hakemisoon lukuoikeus on vain rootilla. | ||
[[Luokka:Järjestelmä]] | [[Luokka:Järjestelmä]] | ||
[[Luokka: | [[Luokka:Vinkit]] | ||
[[Luokka:Komentorivi]] | [[Luokka:Komentorivi]] |