Cron job not executing

5,172

I hate to ask the obvious, but is /etc/mycron/myscript.sh executable? You can check with:

ls -l /etc/mycron/myscript.sh

Should generally see 3 x's. If not, try:

chmod -V +x /etc/mycron/myscript.sh

You can also use sh or bash to run the script, using this line in the cron instead:

sh /etc/mycron/myscript.sh
Share:
5,172

Related videos on Youtube

Eric Wilson
Author by

Eric Wilson

Updated on September 18, 2022

Comments

  • Eric Wilson
    Eric Wilson over 1 year

    I'm trying to use cron for the first time, and I'm stuck.

    I'm using Ubuntu 10.10, and the following is my /etc/crontab file. The only modification that I've made is appending the last line.

    I've verified that cron is running, and the other jobs here run, but the last one does not.

    # /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 )
    #
    21 22   * * *   root    /etc/mycron/myscript.sh > /home/me/stuff/log/cron.log
    

    I've checked $ sudo grep CRON /var/log/syslog and found evidence of the hourly jobs, but nothing for the new job.

    I've looked for cron.allow and cron.deny files, but they don't seem to exist on my machine.

  • Eric Wilson
    Eric Wilson over 12 years
    It is executable, thanks for asking. (Really) I'm curious what difference adding sh makes. (I'm trying it, I just don't have any idea what it could mean if it works.)
  • Eric Wilson
    Eric Wilson over 12 years
    OK, adding sh made it work. What was cron trying to do when it wasn't there? I'd really appreciate some insight here, otherwise I'll superstitiously add sh to cron jobs indefinitely.
  • Eric Wilson
    Eric Wilson over 12 years
    @Giles But my script was executable. I had executed it from the command line, and confirmed that all three xs were there.
  • laebshade
    laebshade over 12 years
    How about the shebang? Does the first line say: #!/bin/sh or #!/bin/bash -- this may be your problem.