Avatar billede linux_noob Nybegynder
13. september 2011 - 18:40 Der er 5 kommentarer og
1 løsning

fejl i crontab

Hej med jer,

jeg har lige opsat en server med den nyeste version af Ubuntu server.
Jeg har fået sat den op som webserver og det hele kører smukt. :)
Dog vil jeg gerne sætte den op til at køre et cronjob og det gør jeg ved at skrive følgende: sudo crontab -e og min editor er nano.
Jeg angiver så:

0,30 * * * * root /var/www/task.php KodeSomSkalBruges


Task.php skal så skrive i min databasen at den har udført og derved kan jeg holde øje med om det er kørt.

Køre jeg task.php manuelt virker den, men crontab gør ikke ?
Kan det være noget med permissions ? Hvor og hvordan kan jeg evt. se en fejl log ? er det min "kode" efter task.php den ikke kan finde ud af pga. mellemrum ?

Håber der er en af jer hajer der kan hjælpe mig.

Ps. jeg har prøve en del guide via div forum's inkl. crontab på min egen user, men uden held.
Avatar billede lassebm Nybegynder
13. september 2011 - 20:09 #1
Hvor ofte vil du kører det?

Prøv at fjern root og erstat det med . (punktum), da root ikke er en kommando eller applikation.
Eks: ./var/www/task.php KodeSomSkalBruges

Kræver så der er executeable flags på task.php, ellers skal du kalde php i stedet.

php /var/www/task.php KodeSomSkalBruges
Avatar billede linux_noob Nybegynder
14. september 2011 - 12:04 #2
Det er skrevet i "root" crontab med sudo crontab -e
De 4 der står i forvejen er angive således:

17 *    * * *  root    cd / && run-parts --report /etc/cron.hourly

25 6    * * *  root    test -x /usr/sbin/anacron || ( cd / && run-parts --repo$

47 6    * * 7  root    test -x /usr/sbin/anacron || ( cd / && run-parts --repo$

52 6    1 * *  root    test -x /usr/sbin/anacron || ( cd / && run-parts --repo$

Og den jeg så har prøvet med sidst ser således ud:

1-59 * * * * /var/www/task.php Minkodeblabla

Task.php er bare en række sqlkald som vedligeholder databasen, så den skal bruge en php compiler til at afvikle scriptet.
Avatar billede linux_noob Nybegynder
14. september 2011 - 12:06 #3
ups...

17 *    * * *  root    cd / && run-parts --report /etc/cron.hourly

25 6    * * *  root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )

47 6    * * 7  root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )

52 6    1 * *  root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
Avatar billede linux_noob Nybegynder
14. september 2011 - 12:17 #4
hvis jeg prøver at skrive /var/www/task.php kodeblabla
Så skriver den adgang nægtet ?
Avatar billede linux_noob Nybegynder
14. september 2011 - 14:42 #5
0-59 * * * * php -q /var/www/task.php kodeblabla

Det var løsningen på mit problem
Avatar billede lassebm Nybegynder
17. september 2011 - 11:27 #6
Præcis, som jeg skrev skal du kalde den med php og ikke med root som du havde gjort tidligere. Om -q parameteren er nødvendig, som du har på, aner jeg faktisk ikke, men kan tænkes. :)

Godt du fik det til at virke.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester