Thursday, May 31, 2018

linux - UBUNTU: why my crontab isn't running the code?



I've configured manually the /etc/crontab to add an event that runs on day 9 every months...



The Cron is running, but it didn't runned my code yet...
My code is at the last line:




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 )
23 9 9 * * root wget "http://www.mysite.com/url.api?dowhat=mensalcheck" --no-cache --read-timeout=1600 -O "/var/log/mysite.com/$(date "+url-api.%d-%m-%y.log")"

Answer



To make sure your cron is run, use "crontab -e" or "sudo crontab -e" to edit your cron jobs. Then when you're done editing and saved the file, crontab will install the new cronjob properly to be executed the next time.



So, use sudo crontab -e and make sure you at least do one modification to the file.




Also cron usually has no PATH variable, meaning it does know where to find wget, so the best is to put /usr/bin/wget.


No comments:

Post a Comment

linux - How to SSH to ec2 instance in VPC private subnet via NAT server

I have created a VPC in aws with a public subnet and a private subnet. The private subnet does not have direct access to external network. S...