Kysymys crontab:sta

Käytän RedHat-palvelinta ja tarvitsisin ajastaa erään ohjelman käynnistyksen. Mikäli haluan, että ohjelma käynnistetään tietyllä käyttäjällä, niin mihin se cron-komento oikeasti asetetaan? Olen kokeillut /var/spool/cron/ -hakemistoa siten, että nimeän "skriptitiedoston" käyttäjänimellä, mutta jostain syystä sitä ei kuitenkaan suoriteta.
10350
Äänestä

Muut lukivat myös

Vastaukset 10

Vanhimmat
  • Nimittäin mainitsemassani hakemistossa on esim. root-niminen skriptitiedosto ja sitä kyllä ajetaan. Mutta jos teen sinne toisen käyttäjän skriptitiedoston, niin sitä ei suoriteta. Tähän kaipailisin nyt vihjeitä.

    Äänestä

  • punainen hattu kirjoitti:

    Nimittäin mainitsemassani hakemistossa on esim. root-niminen skriptitiedosto ja sitä kyllä ajetaan. Mutta jos teen sinne toisen käyttäjän skriptitiedoston, niin sitä ei suoriteta. Tähän kaipailisin nyt vihjeitä.

    Debianissa tämä toimii esmes lisättynä suoraan tiedoston "/etc/crontab" loppuun (eli ajetaan 10 minsan välein käyttäjän "tavis" oikeuksin):

    # m h dom mon dow user command
    */10 * * * * tavis /bin/ping -c 1 google.com > /dev/null

    Toimii siis heti kun cron-daemon pakotettu lukemaan muokattu asetustiedostonsa:
    # /etc/init.d/cron restart

    Äänestä

  • /etc/crontab kirjoitti:

    Debianissa tämä toimii esmes lisättynä suoraan tiedoston "/etc/crontab" loppuun (eli ajetaan 10 minsan välein käyttäjän "tavis" oikeuksin):

    # m h dom mon dow user command
    */10 * * * * tavis /bin/ping -c 1 google.com > /dev/null

    Toimii siis heti kun cron-daemon pakotettu lukemaan muokattu asetustiedostonsa:
    # /etc/init.d/cron restart

    Tässä ehkä selvempi esimerkki taviksen oman skriptin ajosta ( /etc/crontab ):

    */10 * * * * tavis /home/tavis/jokin/hakemisto/jokinskrpti.sh

    Jos ei toimi tuo niin syy voi olla itse skriptissä, jos esmes skriptin sisällä on _suhteellisia_ polkuviittauksia muihin tiedostoihin (joita cron-daemon ei osaa paikallistaa) ?

    Äänestä

Toimiiko crontab -e

Äänestä
  • No mitä virkaa noilla /var/spool/cron/ -hakemistossa olevilla käyttäjäkohtaisilla tiedostoilla on, jos kerran /etc/crontab -tiedostoon voi myös määrittää samat asiat?

    Äänestä

  • punainen hattu kirjoitti:

    No mitä virkaa noilla /var/spool/cron/ -hakemistossa olevilla käyttäjäkohtaisilla tiedostoilla on, jos kerran /etc/crontab -tiedostoon voi myös määrittää samat asiat?

    Mielestäni käyttäjäkohtaisent cron-ajot menevät /var/spool/cron/crontabs/xyz, missä xyz on siis käyttäjän tunnus.

    Komennolla "crontab -e" voi siis muokata /var/spool/cron/crontabs/xyz-tiedostoa.

    http://www.kingcomputerservices.com/unix_101/using_cron_basics.htm

    Äänestä

  • pentti.pepsodentti kirjoitti:

    Mielestäni käyttäjäkohtaisent cron-ajot menevät /var/spool/cron/crontabs/xyz, missä xyz on siis käyttäjän tunnus.

    Komennolla "crontab -e" voi siis muokata /var/spool/cron/crontabs/xyz-tiedostoa.

    http://www.kingcomputerservices.com/unix_101/using_cron_basics.htm

    /etc/crontab on rootin cron-konffit.

    Äänestä

  • pentti.pepsodentti kirjoitti:

    Mielestäni käyttäjäkohtaisent cron-ajot menevät /var/spool/cron/crontabs/xyz, missä xyz on siis käyttäjän tunnus.

    Komennolla "crontab -e" voi siis muokata /var/spool/cron/crontabs/xyz-tiedostoa.

    http://www.kingcomputerservices.com/unix_101/using_cron_basics.htm

    Joo, OIKEA tapa tavikselle lisätä croniin omia ajastuksia on:
    $ crobtab -e

    Äänestä

  • $ crontab -e kirjoitti:

    Joo, OIKEA tapa tavikselle lisätä croniin omia ajastuksia on:
    $ crobtab -e

    Eiköhän tämä cron-asia tästä lähde selviämään kun vähän treenaa. Varmaan muuten osasyynä tuohon skriptin käynnistysongelmaan saattaa olla sekin, että sille käyttäjälle on määrätty passwd-tiedostossa seuraavasti:
    matti:x:48:48:Matti:/var/www:/sbin/nologin

    eli ei ole asetettu oletuskomentotulkkia. Jos olen yhtään oikeilla jäljillä, niin matti-käyttäjällä ei silloin voi suorittaa yhtään mitään.

    Äänestä

Kommentoi aloitusta


punainen hattu kirjoitti:

Käytän RedHat-palvelinta ja tarvitsisin ajastaa erään ohjelman käynnistyksen. Mikäli haluan, että ohjelma käynnistetään tietyllä käyttäjällä, niin mihin se cron-komento oikeasti asetetaan? Olen kokeillut /var/spool/cron/ -hakemistoa siten, että nimeän "skriptitiedoston" käyttäjänimellä, mutta jostain syystä sitä ei kuitenkaan suoriteta.

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu