Cron & crontab, a mhínítear

Lucaine foilsithe tamall ó shin rang teagaisc den scoth ar cron agus crontab is dóigh liom gur fiú é a roinnt. Is cineál coibhéiseach é Cron le Tascanna Sceidealta i Windows, ach go ndéantar é a láimhseáil ón teirminéal. Is féidir leo siúd ar fearr leo comhéadan amhairc an aidhm chéanna a bhaint amach, é seo a fheiceáil mír eile.

Cad é cron?

Tagann an t-ainm cron ó chronos na Gréige a chiallaíonn "am." I gcóras oibriúcháin Unix, is bainisteoir próisis chúlra rialta (deamhan) é cron a ritheann próisis nó scripteanna go tráthrialta (mar shampla, gach nóiméad, lá, seachtain, nó mí). Sonraítear na próisis a chaithfear a chur i gcrích agus an t-am a gcaithfear iad a fhorghníomhú sa chomhad crontab.

Conas a oibríonn sé

Tosaíonn an deamhan cron ó /etc/rc.d/ o /etc/init.d ag brath ar an dáileadh. Ritheann Cron sa chúlra, seiceann sé an tábla tascanna crontab gach nóiméad / etc / crontab o en / var / spól / cron ar thóir tascanna atá le cur i gcrích. Mar úsáideoir is féidir linn orduithe nó scripteanna a chur le tascanna le cron chun roinnt próiseas a uathoibriú. Tá sé seo úsáideach mar shampla chun nuashonrú córais nó córas cúltaca maith a uathoibriú.

Alt gaolmhar:
Rang Teagaisc: Suiteáil Pacáistí .tar.gz agus .tar.bz2

Cad é Crontab?

Is comhad téacs simplí é Crontab a stórálann liosta d’orduithe atá le déanamh ag am a shonraíonn an t-úsáideoir. Seiceálfaidh Crontab an dáta agus an t-am ar cheart an script nó an t-ordú a fhorghníomhú, na ceadanna forghníomhaithe agus déanfaidh sé é sa chúlra. Is féidir le gach úsáideoir a chomhad crontab féin a bheith aige, i ndáiríre an / etc / crontab glactar leis gurb é comhad crontab an úsáideora fréimhe é, nuair a bhíonn gnáthúsáideoirí (agus fiú fréimhe) ag iarraidh a gcomhad crontab féin a ghiniúint ansin úsáidfimid an t-ordú crontab.

Is é Crontab an bealach is éasca le tascanna cron a bhainistiú ar chórais ilúsáideoirí, mar úsáideoir córais shimplí nó mar fhréamh-úsáideoir.

Ag baint úsáide as crontab

Táimid ag tosú le sampla simplí.

Táimid chun an nuashonrú ar chóras a uathoibriú, chun deireadh a chur leis an gcruachás "Caithfidh mé nuashonrú a dhéanamh i gcónaí agus ní maith liom é sin!"

Alt gaolmhar:
Orduithe a bheith eolach ar an gcóras (crua-earraí agus roinnt cumraíochtaí bogearraí a aithint)

Ar dtús báire déanfaimid script. Glaofar ar an script seo le cron agus beidh na treoracha go léir a theastaíonn uainn a dhéanamh ann, dá bhrí sin is gá é a thástáil i roinnt cásanna agus ar bhealaí éagsúla sula n-áireofar é in cron, script nuashonraithe shimplí mar seo:

#! / bin / bash #script update example #choose your dose # debian-ubuntu # apt-get update & apt-get -y uasghrádú #fedora #yum -y nuashonrú #Arch #pacman --noconfirm -Syu

Bain an # ó do líne distro. I gcás gur Ubuntu / Debian é, tosaíonn sé le apt-get.

Sábhálann muid an script mar update.sh (m.sh. eolairí scripteanna do theach). Athraímid ceadanna forghníomhaithe na scripte sin le:

chmod a + x ~ / scripts / update.sh

Reáchtálaimid an script cúpla uair chun a fhíorú go ritheann gach rud go réidh, déanaimid an méid atá riachtanach a mhodhnú (ní mór nach mbeidh earráidí ann, nó mura ndéanfaidh cron ach earráid arís agus arís eile). Anois chun an tasc a chur lenár crontab.

Cuir tascanna le crontab

Déanaimid eagrán an crontab a fhorghníomhú le crontab -e, i roinnt distros (mar shampla Ubuntu) tugann sé rogha dúinn an t-eagarthóir téacs a theastaíonn uainn a roghnú, an chuid eile atá fágtha againn le vi. Féachfaidh an comhad crontab rud éigin mar seo.

# mh dom mon dow ordú úsáideora

áit:

  • m comhfhreagraíonn sé don nóiméad a fhorghníomhófar an script, tá an luach idir 0 agus 59
  • h an t-am cruinn, a láimhseáiltear an fhormáid 24 uair an chloig, tá na luachanna idir 0 agus 23, agus 0 ag 12:00 meán oíche.
  • bronntanas tagraíonn sé do lá na míosa, mar shampla is féidir leat 15 a shonrú más mian leat rith gach 15 lá
  • dow ciallaíonn lá na seachtaine, is féidir é a bheith uimhriúil (0 go 7, áit a bhfuil 0 agus 7 Dé Domhnaigh) nó an chéad 3 litir den lá i mBéarla: mon, tue, wed, thu, fri, sat, sun.
  • faoi ​​úsáideoir sainmhíníonn sé an t-úsáideoir a fhorghníomhóidh an t-ordú, is féidir é a fhréamh, nó úsáideoir difriúil fad a bheidh cead aige an script a fhorghníomhú.
  • orduithe tagraíonn sé don ordú nó do chonair iomlán na scripte a fhorghníomhú, mar shampla: /home/usuario/scripts/update.sh, má ghlaonn sé script caithfidh sé a bheith inrite

Le bheith soiléir míníodh cúpla sampla de thascanna cron:

15 10 * * * úsáideoir /home/usuario/scripts/update.sh

Reáchtálfaidh sé an script update.sh ag 10:15 am gach lá

15 22 * * * úsáideoir /home/usuario/scripts/update.sh

Reáchtálfaidh sé an script update.sh ag 10:15 gach lá

00 10 * * 0 fréamh apt-get -y nuashonrú úsáideoir fréimhe

Reáchtálfaidh sé nuashonrú gach Domhnach ag 10:00 am

45 10 * * nuashonrú fréimhe gréine apt-get -y

Reáchtálfaidh úsáideoir fréimhe nuashonrú gach Domhnach (Sun) ag 10:45 am

30 7 20 11 * úsáideoir /home/usuario/scripts/update.sh

An 20 Samhain ag 7:30 rithfidh an t-úsáideoir an script

30 7 11 11 úsáideoir gréine /home/usuario/scripts/pastel_con_velitas.sh

Ar an 11 Samhain ag 7:30 am agus is é sin Dé Domhnaigh, déanfaidh an t-úsáideoir ceiliúradh ar a sysadmin (is é sin, mise)

01 * * * * úsáideoir /home/usuario/scripts/molestorecordatorio.sh

Meabhrúchán annoying gach nóiméad de gach uair an chloig gach lá (NÍL moltar).

Is féidir iad a láimhseáil fós raonta speisialta:

30 17 * * 1,2,3,4,5

Ag 5:30 san iarnóin gach lá ó Luan go hAoine.

00 12 1,15,28 * *

Ag 12 meánlae gach chéad, cúigiú déag agus 28ú de gach mí (oiriúnach don phárolla)

Má tá sé seo mearbhall, láimhseálann crontab teaghráin speisialta chun na raonta seo a shainiú.

Rith @reboot uair amháin, ag am tosaithe
Ní ritheann @yearly ach uair sa bhliain: 0 0 1 1 *
@annually céanna le @yearly
Ritheann @monthly uair sa mhí, an chéad lá: 0 0 1 * *
@weekly Seachtainiúil an chéad nóiméad den chéad uair an chloig den tseachtain. 0 0 * * 0 ″.
@daily go laethúil, ag 12:00 A.M. 0 0 * * *
@midnight céanna le @daily
@ uair an chloig ag an gcéad nóiméad de gach uair an chloig: 0 * * * *

Tá a úsáid an-simplí.

@hourly user /home/user/scripts/molestorecordatorio.sh @monthly user /home/user/scripts/backup.sh @daily root apt-get update && apt-get -y uasghrádú

Anuas ach ní a laghad:

Bainistíocht poist Cron

comhad crontab

Cuir comhad atá sainithe ag an úsáideoir in ionad an chomhaid crontab atá ann

-e crontab

Cuir comhad crontab an úsáideora in eagar, beidh tasc nua crontab ag gach líne nua.

crontab -l

Liostaigh tascanna crontab uile an úsáideora

cronab -d

Scrios crontab an úsáideora

crontab -c dir

Sainmhínítear eolaire crontab an úsáideora (caithfidh sé seo ceadanna úsáideora a scríobh agus a fhorghníomhú)

crontab -u úsáideoir

réimír chun crontab úsáideora eile a láimhseáil, samplaí:

$ sudo crontab -l -u root $ sudo crontab -e user2 #crontab -d -u úsáideoir

Is féidir an uirlis seo, cosúil le go leor eile, a fheiceáil níos doimhne agus níos mionsonraithe i:

Go raibh maith agat Lucain!

Cloíonn ábhar an ailt lenár bprionsabail eitic eagarthóireachta. Chun earráid a thuairisciú cliceáil anseo.

48 trácht, fág mise

Fág do thrácht

Ní thabharfar do sheoladh r-phoist a fhoilsiú.

*

*

  1. Freagrach as na sonraí: Miguel Ángel Gatón
  2. Cuspóir na sonraí: SPAM a rialú, bainistíocht trácht.
  3. Legitimation: Do thoiliú
  4. Na sonraí a chur in iúl: Ní chuirfear na sonraí in iúl do thríú páirtithe ach amháin trí oibleagáid dhlíthiúil.
  5. Stóráil sonraí: Bunachar sonraí arna óstáil ag Occentus Networks (EU)
  6. Cearta: Tráth ar bith is féidir leat do chuid faisnéise a theorannú, a aisghabháil agus a scriosadh.

  1.   Íomhá áitritheora Alvaro Ortiz a dúirt

    Ugh ... rud beag mearbhall.

  2.   tonic a dúirt

    Tá * / 30 ar iarraidh (i réimse na miontuairiscí) a ritheann gach 30 nóiméad ...

    1.    erm3nd a dúirt

      Ní raibh mé ach ag trácht air seo go dtí gur shocraigh mé athbhreithniú a dhéanamh ar na tuairimí 😀
      Is píosa faisnéise an-tábhachtach é an modhnóir seo agus rud an-úsáideach.

      1.    Cic a dúirt

        Dia duit!
        Anois táim ag tástáil cumraíochta gach 45 nóiméad.

        * / 45 * * * *, agus déantar an treoir ag 45 nóiméad gach uair AGUS gach uair an chloig. Sé sin le rá:

        Ritheann sé ag 3:45, ansin 4:00, 4:45, ansin 5:00, 5:45, 6:00, 6:45, agus mar sin de.

        Tá rud éigin cearr agam? Cad is féidir liom a dhéanamh chun é a dhéanamh ach gach 45 nóiméad, nó uair amháin ar a laghad ag 45 nóiméad gach uair an chloig.

    2.    Cic a dúirt

      Dia duit!
      Anois táim ag tástáil cumraíochta gach 45 nóiméad.

      * / 45 * * * *, agus déantar an treoir ag 45 nóiméad gach uair AGUS gach uair an chloig. Sé sin le rá:

      Ritheann sé ag 3:45, ansin 4:00, 4:45, ansin 5:00, 5:45, 6:00, 6:45, agus mar sin de.

      Tá rud éigin cearr agam? Cad is féidir liom a dhéanamh chun é a dhéanamh ach gach 45 nóiméad, nó uair amháin ar a laghad ag 45 nóiméad gach uair an chloig.

  3.   Dríodair a dúirt

    Dia duit Super úsáideach an fhaisnéis a shoiléiriú conas a oibríonn cron.
    Bearta

  4.   Dríodair a dúirt

    le haghaidh *

  5.   Hunter a dúirt

    Ar fheabhas, go raibh maith agat as soiléiriú a dhéanamh ar an gcaoi a n-oibríonn cron .. déanaimis lámh bheag a chur 🙂

  6.   Jacob a dúirt

    An líne seo de réir mar a thuigim go ndéanfar í a fhorghníomhú ag 10:15 in, ceartaigh mé má tá mé mícheart
    Bhuel ansin deir sé 10:15 am
    15 22 * * * úsáideoir /home/usuario/scripts/update.sh

  7.   agustín a dúirt

    Dia dhuit! eolas an-mhaith.
    Chun Script a fhorghníomhú gach leathuair an chloig, is é an líne ba chóir a chur le CronTab: "30 * * * * root Scrip.sh" Ceart? Go raibh míle maith agat!

  8.   úsáidimis linux a dúirt

    Más cuimhin liom i gceart, chuige sin caithfidh tú / 30 * * * * root Scrip.sh a chur.
    Is é sin, cuir an / roimh 30.
    Cheers! Pól.

  9.   Jonathan a dúirt

    Dia duit, thaitin do phost leat, tá sé an-iomlán ach theastaigh uaim rud éigin a chur ort.
    Tá trioblóid agam leis an gceannas seo agus ceann cosúil le "at".

    Ba mhaith liom script a reáchtáil ag am áirithe agus a chur

    ag -f /home/mi_user/Desktop/script.sh 18:08 sampla

    agus nach ndéantar an script a fhorghníomhú ar an scáileán, is é sin, sa chríochfort, an ndéantar é a fhorghníomhú sa chúlra?

    Agus le cron a tharlaíonn an rud céanna domsa, déanaim an comhad crontab a chur in eagar le "crontab -e"

    ag an deireadh cuirim an líne seo:

    46 19 my_user /home/mi_user/Desk/script.sh

    agus ní dhéanann sé tada, ní thaispeánann sé an script.

    Aon mholadh? Go raibh míle maith agat agus gabh leithscéal as aon mhíchaoithiúlacht

    1.    úsáidimis linux a dúirt

      Ionas go mbeidh an teirminéal le feiceáil, b’fhéidir go mbeidh ort an teirminéal a rith agus an script a rith mar pharaiméadar.

      Mar shampla:

      lxterminal -e "my_user /home/my_user/Desk/script.sh"

      Féadfaidh an paraiméadar atá le húsáid athrú bunaithe ar an aithriseoir teirminéil a úsáideann tú.

      Tá súil agam go n-oibreoidh sé.

      Hug! Pól.

  10.   patrecas a dúirt

    Is mór againn an rannchuidiú.

    10 bpointe !!

    salú2!!

  11.   Rodolfo a dúirt

    Go raibh míle maith agat, chuidigh sé go mór liom roinnt rudaí a shoiléiriú, buíochas iomlán, as tuilleadh sonraí nó amhras rachaidh mé chuig an MAN PAGE, beannachtaí athrá.

  12.   jahir a dúirt

    Go raibh míle maith ag uncail, bhí na samplaí á léamh agus á dtástáil agam. go raibh míle maith agat ... tá sé an-intuigthe. Cheers

  13.   Geovanni a dúirt

    D'úsáid mé ubuntu Server 12.04.2 LTS, agus úsáidtear an leagan de crontab atá agam, chun liosta phoist an úsáideora a scriosadh, crontab -r (agus -l, mar a deir an lámhleabhar seo). Cinnte is trí cheist na leaganacha atá sé.

    Ar an láimh eile, níor rith mé ach crontab uair amháin agus lig an cineál seo dom mo chomhad forghníomhaithe féin a chruthú, ach níorbh é seo an ceann a bhí á fhorghníomhú. Is é an ceann a ritheann an ceann i / etc / crontab. b’fhéidir go mbainfidh duine úsáid as an trácht.

    PS (Déanaim cuardach le aimsigh agus cá bhfuil crontab ach níor fhill sé ach an seoladh thuasluaite agus comhad eile atá criptithe, mar sin más é an ceann a cuireadh chun báis an ceann i / etc / crontab, ach nuair a bhí an t-ordú crontab -e á fhorghníomhú aige, bhí an chuma ar an mianach leis na poist go léir a bhí sainithe agam) cá raibh an comhad seo á stóráil '???? Maidir leis. Déanaim logáil isteach i gcónaí le fréamh.

  14.   Sebastian a dúirt

    Ar fheabhas, an-úsáideach !!!

  15.   mmm a dúirt

    Dia duit, ba mhaith liom é seo a dhéanamh ………… «15 10 * * * root ifdown eth0»

    is é sin, ag am áirithe casann an cárta líonra ………… bhuel, chuir mé sa chrontab é agus níor oibrigh sé …… .. cad atá ar bun?

    Saludos y Gracias

  16.   Miguel a dúirt

    Chaill tú "mon" a shainiú i ndiaidh an teidil "Cuir tascanna le crontab"

    Tá an t-alt fós deas, tá cron thar a bheith úsáideach.

  17.   oscar a dúirt

    Cé chomh gleoite a bhí an post maith sin, fiafraigh díom
    Más mian liom súil a choinneáil ar na taifid a d’fhág tascanna á gcur i gcrích, cá bhfeicfidh mé iad?

    is decdir Ba mhaith liom stair na ngníomhartha a rinneadh roimhe seo den chomhad seo a fheiceáil agus ba mhaith liom a fheiceáil cé a rinne é a mhodhnú agus an dáta

    go raibh maith agat

  18.   Oscar a dúirt

    Ba mhaith liom stair mhodhnúcháin seo a sheiceáil

    conas is féidir liom é a dhéanamh

    go raibh maith agat

  19.   Andres Ledo a dúirt

    Dea-maidin,

    Sílim go ndearna tú botún sa script ubuntu, gur chuir tú uasghrádú ap-get -y in ionad uasghrádú apt-get -y. (Tá t fágtha agat).

    A Beannacht.

    1.    úsáidimis linux a dúirt

      Mar sin atá. Go raibh maith agat!
      Hug! Pól

  20.   Gabriel a dúirt

    Ba mhaith liom a fháil amach conas comhad cron a chruthú le go mbeidh mé in ann an t-am a shonrú nuair a dhéantar é, an eolaire, srl.

  21.   Valentin a dúirt

    Go raibh maith agat as an oibríocht agus na horduithe bunúsacha le haghaidh cron a shoiléiriú, anois le siamsaíocht a chur ort féin ar feadh beagán.

  22.   Sander a dúirt

    Aon uair a fhéachaim ar fhaisnéis ar aon ábhar a bhaineann le Gnu / Linux, téim timpeall agus timpeall chun an rang teagaisc is fearr sa phobal iontach seo a fháil i gcónaí i 90% de na cásanna, sílim go dtosóidh mé anseo agus ansin in áiteanna eile.

    Maidir is

    1.    úsáidimis linux a dúirt

      Go raibh maith agat Sander! Barróg! Pól.

  23.   dario a dúirt

    dom = lá na míosa
    dow = lá na seachtaine
    tá sé níos éasca má chomhlachú tú

  24.   An Cháisc a dúirt

    Go raibh míle maith agat, an-iomlán agus mínithe go maith.

  25.   Masailín a dúirt

    Seo an rud céanna a thug mo mhúinteoir Córais Oibriúcháin dúinn, ní athraím tada, anois feicim cén fáth go bhfuil an rang chomh dona .-. Bhuel, tá sé seo mar an gcéanna le hobair bhaile xD

  26.   Marcelo a dúirt

    Measta,

    Ceist, an féidir fad tasc a theorannú?
    Mar shampla, tá tasc agam a athdhéanann é féin gach 5 nóiméad, ar athrá má tá an tasc sin fós gníomhach, lig dó é a mharú agus a rith arís.

    Go raibh maith agat,
    Marcelo.-

    1.    úsáidimis linux a dúirt

      Dia duit, Marcelo!

      Sílim go mbeadh sé níos fearr má ardaíonn tú an cheist seo inár seirbhís ceisteanna agus freagraí ar a dtugtar Iarr ar FromLinux ionas gur féidir leis an bpobal iomlán cabhrú leat le d’fhadhb.

      Le barróg, Pablo.

  27.   aj a dúirt

    post maith.
    Cad é an t-ordú in aghaidh an teirminéil tascanna a chur leis an crontab (gan dul isteach sa chrontab agus iad a chur de láimh le 'crontab -e' nó 'crontab' a chur in ionad an crontab le 'comhad crontab').
    Is é an smaoineamh script sheachtrach a chruthú chun na tascanna a chur leis an crontab
    Go raibh maith agat

    1.    david a dúirt

      feictear dom go bhféadfá ‘macalla’ a úsáid cibé rud is mian leat a chur leis ’| cat >> 'cosán cronotab (/ etc / cronotab)' «

  28.   Raphael Vera a dúirt

    Conas a rithfeadh slonn gach 3 lá go díreach

  29.   José Antonio a dúirt

    Dia duit.

    Tá fadhb agam post cron a dhéanamh.

    Rithim an tasc seo a leanas le cronta -e:

    01 * * * * root /home/user/script/mfile.sh

    ach ní dhéantar an tasc. Dheimhnigh mé go bhfuil cead forghníomhaithe ag myfile.sh agus go bhfuil fréamh ag an úsáideoir a fhorghníomhaíonn é.

    Rithim an tasc céanna i / etc / crontab agus tar éis an tseirbhís a atosú, ní oibríonn sé domsa ach an oiread.
    Is é atá in ábhar myfile.sh ná ordú a dhéanann DB a nuashonrú agus má rithim é sa chonsól oibríonn sé.
    aon smaoineamh cén fhadhb a d’fhéadfadh a bheith ann?

    1.    fredd a dúirt

      Is dóigh nach bhfuil na ceadanna uile ag úsáideoir an bhunachar sonraí agus ar dtús beidh ort na hathróga comhshaoil ​​a easpórtáil ó d’inneall bunachar sonraí.
      Mar shampla i db2 rachadh an líne seo go dtí tús na scripte
      . / baile / db2inst1 / sqllib / db2profile

      Cúis eile a d’fhéadfadh a bheith leis ná go n-éilíonn an script nasc leis an mbunachar sonraí, an nasc leis an mbunachar sonraí a dhéanamh laistigh den script

  30.   LA3 a dúirt

    Ní raibh a fhios agam go raibh orm an cró a atosú, bhí mé ag troid leis seo ar feadh tamaill

  31.   kenya a dúirt

    Beidh a fhios acu conas a chur in iúl go reáchtáiltear an tasc gach deireadh den mhí, ag an am a léirítear .. is é an mionsonra nach féidir liom a bhaint amach mar is eol dom go dtógann sé an lá deireanach de gach mí .. ??? Bhí orm iad a scríobh síos ceann ar cheann ach nuair a thagann deireadh mhí Feabhra go bhfuil sé biciesto tá sé casta dom.

  32.   Íosa a dúirt

    lá maith!!

    Conas a stopfaidh mé an próiseas atá á chur i gcrích sa chrontab?

  33.   Íosa a dúirt

    próiseas * …………

  34.   Julianna a dúirt

    An bhféadfadh sé a bheith gur féidir leat cabhrú liom? script eu tenho um le minha authored nach n-oibríonn aon crontab! jб dei na ceadanna go léir, gan aon cron nó úsáideoir sonrach príobháideach atá in ann é a fhorghníomhú - ní tharlaíonn aon rud is mó! Ba mhaith liom a fháil amach an féidir leat cabhrú liom, ní oibríonn cron ar roinnt rudaí eile! Vlws

  35.   Anthox a dúirt

    Conas a chuirfeá tasc le rith gach lá deireanach den mhí (laethanta: 31-30-28)?

  36.   tfercho a dúirt

    Mar is eol duit cheana, úsáidtear an su command chun úsáideoir a athrú i consól. Má úsáidim an t-ordú su mar seo: athraíonn “d’úsáideoir” an t-úsáideoir ach gan na socruithe cearta “úsáideoir”, má rithim su mar: “su-user” athraigh an t-úsáideoir trí na socruithe úsáideora a luchtú. Le cron cuirim an t-úsáideoir in iúl, ach conas a dhéanaim cumraíochtaí an úsáideora seo a luchtú?

  37.   Rob a dúirt

    Agus más mian liom é a stopadh?

  38.   regi a dúirt

    Dia duit,
    Níl a fhios agam cad atá á dhéanamh agam mícheart, ach leanaim na céimeanna agus ní dhéantar aon rud a fhorghníomhú. Rinne mé iarracht:
    59 * * * * / usr / bin / gedit
    * * * * * / usr / bin / gedit
    * * * * * fréimhe / usr / bin / gedit
    * * * * * usr / bin / test.sh.
    * * * * * fréimhe usr / bin / test.sh.

    agus rud ar bith ar chor ar bith. Ní fhorghníomhaíonn sé rud ar bith. Tá mé tar éis atosaigh agus gach rud.

  39.   Ferqos a dúirt

    go raibh maith agat go mór