Thomas. Skrevet 4. april 2010 Del Skrevet 4. april 2010 Hei, har et problem med at den ene cronjoben min kjører to ganger rett etter hverandre. Hvordan finner jeg ut hva som skjer? Hvor ligger konfigurasjonene til cronjobs? Hvordan fikse slik at den kun kjører 1 gang? Lenke til kommentar
kpolberg Skrevet 4. april 2010 Del Skrevet 4. april 2010 Har du lagt inn jobben som bruker?I så fall er det jo bare å sjekke crontab -l eventuelt crontab -e. Hvis ikke ligger de vel under /etc som alle andre konfigurasjons filer. /etc/cron/cron.daily eller tilsvarende. Lenke til kommentar
Thomas. Skrevet 4. april 2010 Forfatter Del Skrevet 4. april 2010 Har du lagt inn jobben som bruker?I så fall er det jo bare å sjekke crontab -l eventuelt crontab -e. Hvis ikke ligger de vel under /etc som alle andre konfigurasjons filer. /etc/cron/cron.daily eller tilsvarende. Har lagt de inn med Plesk. Men hvordan legger man inn manuelt egentlig? Lenke til kommentar
kpolberg Skrevet 4. april 2010 Del Skrevet 4. april 2010 logg inn via ssh, skriv crontab -e. Du vil da mest sannsynligvis få opp "vi" hvor du kan legge inn nye cron jobber. * * * * 4 init 6 :wq Lenke til kommentar
Thomas. Skrevet 4. april 2010 Forfatter Del Skrevet 4. april 2010 Okei, da har jeg lagt de inn med SSH Men trur jeg fjernet de som var der fra før, er det noe mulighet for å gjennopprette disse? Lenke til kommentar
kpolberg Skrevet 4. april 2010 Del Skrevet 4. april 2010 Aldri brukt plesk, så jeg vet ikke om den har noen form for versjonskontroll på innstillinger? Men det er eneste måten jeg kan tenke meg. Lenke til kommentar
Thomas. Skrevet 4. april 2010 Forfatter Del Skrevet 4. april 2010 (endret) Aldri brukt plesk, så jeg vet ikke om den har noen form for versjonskontroll på innstillinger? Men det er eneste måten jeg kan tenke meg. Er vel ikke så farlig Men er det noe jeg må restarte for at crontabene tar effekt? Eller tar dem effekt automatisk? Og hvordan kan jeg finne ut hvem ip-adresse som kjører cronjobene? Endret 4. april 2010 av Thomas. Lenke til kommentar
Kagee Skrevet 4. april 2010 Del Skrevet 4. april 2010 Crontab-daemonen kjører hele tiden, så de skulle bli oppdatert. Hva mener du med "hvilke ipadresser"? Crontab kjører oppgaver på forskjellige fastsatte tidspunkter, det er ikke noe som må startes av en forespørsel til en webserver... Lenke til kommentar
Thomas. Skrevet 4. april 2010 Forfatter Del Skrevet 4. april 2010 Crontab-daemonen kjører hele tiden, så de skulle bli oppdatert. Hva mener du med "hvilke ipadresser"? Crontab kjører oppgaver på forskjellige fastsatte tidspunkter, det er ikke noe som må startes av en forespørsel til en webserver... Åja, for sku gjerne sperret tilgang til disse scriptene for brukere. Kun la crontab-daemonen få tilgang. Bruker lighttpd. Vet du hvordan dette kan gjøres? Lenke til kommentar
HawP Skrevet 5. april 2010 Del Skrevet 5. april 2010 Okei, da har jeg lagt de inn med SSH Men trur jeg fjernet de som var der fra før, er det noe mulighet for å gjennopprette disse? Hvis du la de inn med plesk; de kan ikke da ha blitt lagt inn med et annet brukernavn enn det du logger inn med via ssh? I såfall vil du ikke se jobbene du definerte i plesk. Er vel ikke så farlig Men er det noe jeg må restarte for at crontabene tar effekt? Eller tar dem effekt automatisk? Hvis cron jobber defineres/endres på riktig måte tar de effekt i løpet av 1 minutt. Crontab-daemonen kjører hele tiden, så de skulle bli oppdatert. Hva mener du med "hvilke ipadresser"? Crontab kjører oppgaver på forskjellige fastsatte tidspunkter, det er ikke noe som må startes av en forespørsel til en webserver... Åja, for sku gjerne sperret tilgang til disse scriptene for brukere. Kun la crontab-daemonen få tilgang. Bruker lighttpd. Vet du hvordan dette kan gjøres? Du har ikke muligens istedet fått definert en "event-driven" jobb (eller liknende) da, siden du spør om "hvilke ip adresser som kjører cronjobbene"? F.eks. at et script kjøres hvis gitte kriterier blir oppfylt... Lenke til kommentar
Thomas. Skrevet 5. april 2010 Forfatter Del Skrevet 5. april 2010 (endret) Du har ikke muligens istedet fått definert en "event-driven" jobb (eller liknende) da, siden du spør om "hvilke ip adresser som kjører cronjobbene"? F.eks. at et script kjøres hvis gitte kriterier blir oppfylt... De mener f.eks en av disse? 45 * * * * /usr/bin/lynx -source http://example.com/cron.php 45 * * * * /usr/bin/wget -O - -q -t 1 http://www.example.com/cron.php 45 * * * * curl --silent --compressed http://example.com/cron.php Vis jeg bruker lynx så kan jeg sjekke om det er servern som kjører den? (serveren sin ip) Endret 5. april 2010 av Thomas. Lenke til kommentar
HawP Skrevet 5. april 2010 Del Skrevet 5. april 2010 De mener f.eks en av disse? 45 * * * * /usr/bin/lynx -source http://example.com/cron.php 45 * * * * /usr/bin/wget -O - -q -t 1 http://www.example.com/cron.php 45 * * * * curl --silent --compressed http://example.com/cron.php Vis jeg bruker lynx så kan jeg sjekke om det er servern som kjører den? (serveren sin ip) Det der ser jo ut om ordinære cron jobber. Og de vil da kjøres som brukeren som "eier" de (dvs. brukernavnet som definerte de) på maskinen de er definert på. Og jobber som "går ut på internett" vil bruke ip'en til maskinen som "source ip", ikke noe spesielt med cron jobber i så måte. Lenke til kommentar
Kagee Skrevet 6. april 2010 Del Skrevet 6. april 2010 (endret) Du har ikke muligens istedet fått definert en "event-driven" jobb (eller liknende) da, siden du spør om "hvilke ip adresser som kjører cronjobbene"? F.eks. at et script kjøres hvis gitte kriterier blir oppfylt... De mener f.eks en av disse? 45 * * * * /usr/bin/lynx -source http://example.com/cron.php 45 * * * * /usr/bin/wget -O - -q -t 1 http://www.example.com/cron.php 45 * * * * curl --silent --compressed http://example.com/cron.php Vis jeg bruker lynx så kan jeg sjekke om det er servern som kjører den? (serveren sin ip) Du kan sjekke at det er serveren sin IP som kaller scriptet i cron.php på serveren example.com, ja. Dette må du da sjekke med PHP-kildekoden i cron.php, det har ingenting med crontaboppføringen din å gjøre. Ville det ikke vært bedre å kjøre dette phpscriptet "på serveren", "45 * * * * /path/to/php-cli /path/to/cron.php" i stedet for å åpne det i en nettleser/lynx/wget/curl? Endret 6. april 2010 av Kagee Lenke til kommentar
AlecTBM Skrevet 6. april 2010 Del Skrevet 6. april 2010 (endret) Jeg har lest en del av spørsmålene dine og må bare spørre. Har du fått ansvaret for en Cent OS server ut av det blå? Hvis dette er et opplærings prosjekt så vil jeg anbefale deg å starte med en lettere distro som Ubuntu Server, evt Debian før du starter med noe som Cent OS Hvis du virkelig har ansvaret for denne servern for en større prosjekt så burde du gi deg før du blir gjort til latter og heller lære deg en lettere distro før du går over til Cent OS Lykke til Endret 6. april 2010 av AlecTBM Lenke til kommentar
Thomas. Skrevet 6. april 2010 Forfatter Del Skrevet 6. april 2010 Du kan sjekke at det er serveren sin IP som kaller scriptet i cron.php på serveren example.com, ja. Dette må du da sjekke med PHP-kildekoden i cron.php, det har ingenting med crontaboppføringen din å gjøre. Jepp, slik jeg løste det. Brukte wget -q. Lenke til kommentar
Thomas. Skrevet 6. april 2010 Forfatter Del Skrevet 6. april 2010 Ville det ikke vært bedre å kjøre dette phpscriptet "på serveren", "45 * * * * /path/to/php-cli /path/to/cron.php" i stedet for å åpne det i en nettleser/lynx/wget/curl? Jo, hadde det gått ann å sperre tilgang for vanlige brukere som bruker nettsiden til diverse mapper med lighttpd. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå