crontab job bliver aldrig kørt?
Jeg har netop installeret Ubuntu 12.04 på en ren maskine. I min hjemmekatalog har jeg lavet et lille bash script test.sh der starter xcalc:
Jeg har gjort dette script eksekverbart:
Nu vil jeg gerne køre dette scipt hver 3 minut med cron derfor har jeg tilføjet det til /etc/crontab:
Men der sker intet. Skal jeg genstarte ubuntu for at crontab bliver opdateret?
Det lader til at crond:
http://www.unixgeeks.org/security/newbie/unix/cron-1.html
er installeret:
Nogen forslag?
#!/bin/bash
xcalc
Jeg har gjort dette script eksekverbart:
chmod +x test.h
Nu vil jeg gerne køre dette scipt hver 3 minut med cron derfor har jeg tilføjet det til /etc/crontab:
# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
# m h dom mon dow user command
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 )
#
*/3 * * * * /home/bob/scripts/simple.sh
Men der sker intet. Skal jeg genstarte ubuntu for at crontab bliver opdateret?
Det lader til at crond:
http://www.unixgeeks.org/security/newbie/unix/cron-1.html
er installeret:
# ps aux | grep crond
bob 3331 0.0 0.0 4368 836 pts/0 S+ 07:56 0:00 grep --color=auto crond
Nogen forslag?
Kommentarer5
Nu ved jeg ik om det bare er
Men i de øverste linjer, hvor der står fek.s # Unlike any other crontab you don't have to run the `crontab' "
For mig ser det ud som om du mangler et # tegn som fungerer som "comment"
Og scriptet dermed ikke fungerer.
Prøv at sæt et # tegn foran alle kommentare.
Ellers prøver scriptet jo at læse kommentarene som en kommando ?
hedder scriptet test.sh
Du er nok nødt til at have sh foran, eller ., hvad du nu syntes er "pænest".
f.eks.
*/3 * * * * . /home/bob/scripts/simple.sh
*/3 * * * * sh /home/bob/scripts/simple.sh
*/3 * * * *
Som der
Som der står i toppen af din /etc/crontab skal du have user med på linien. Hvis det er root som skal køre jobbet bliver det til
*/3 * * * * root /home/bob/scripts/simple.sh
Det er mit bud.
- Bengt
Mit bud er at cron ikke har
Hvis det blot er for at se om det viker, så skriv en linie til en fil istedet, cron er ikke beregnet til at starte X programmer.
f.eks.
#!/bin/bash
#simple.sh
date >> /tmp/simple.out
#4 jep det var xcalc som var