CRON wont run sh script

Can someone tell me why my script wont fun fron cron??  It runs fine from the command line.  And the cron log doesn't output any errors either.

Here is the script:


echo "This script is starting"
echo  "Backup starting please wait..."
echo "Removing old backup..."
if [ -e "/www_backups/wwwback.tgz" ]
	rm /www_backups/wwwback.tgz
if [ -e "/www_backups/sqlbackup.sql.gz" ]
	rm /www_backups/sqlbackup.sql.gz
mysqldump -u XXXX -pXXXXXX digitald_trucking | gzip -9c > /www_backups/sqlbackup.sql.gz

tar -cvzf /www_backups/wwwback.tgz --exclude=/var/www/sqlbackups /var/www >/dev/nul
echo "Backup complete"
echo "Now emailing file"
sendEmail -f -t -u WWW Backup for DB -m backup -a /www_backups/wwwback.tgz
sendEmail -f -t -u DB backup  -m sql backup -a /www_backups/sqlbackup.sql.gz

rm /www_backups/wwwback.tgz
rm /www_backups/sqlbackup.sql.gz

Open in new window

I have given it execute permissions: 0755
and here is my crontab log

Nov 17 19:53:01 lamp /usr/sbin/cron[4539]: (root) RELOAD (crontabs/root)
Nov 17 19:54:58 lamp crontab[21890]: (root) LIST (root)
Nov 17 19:55:01 lamp /USR/SBIN/CRON[21892]: (root) CMD (sh /scripts/

Sorry I have placed XXXX's where sensitive information would be.

Is it a path problem? Permissions?
Who is Participating?
Hmmm.. I am not familiar with ubuntu/debian so I do not know anything about the dash shell.. Your sh is linked to dash, which is a debian specific shell.  That could be the problem, but since I am not familiar with it, and it runs on the command line I would say its not a problem.

I would take the sh out of your crontab file like this:
55 1,19 * * * /scripts/

and see if that helps.
Does it need to run as root?  Is it in roots crontab?

Can you post the ouotput of crontab -l

drhamel69Author Commented:
root@lamp:~# crontab -l
57 9 * * * /etc/webmin/cron/
0 3 * * * /etc/webmin/mysql/ --all
0,15 3 * * * /etc/webmin/mysql/ digitald_trucking
55 1,19 * * * sh /scripts/

here is the crontab output.  I think it runs as root.  Could the problem be that I wrote the script logged in as root and I am scheduling it with Webmin?
Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

drhamel69Author Commented:
I am almost wondering if the job is actually running but there is a problem calling the perl script SendEmail from cron.  the only notification that I get that the job runs is the emails I get generated by the 2 sendEmail lines.  Any ideas?
try putting it in crontab like

55 1,19 * * * /scripts/

You shouldn't need the sh, that is if you are running it from the command line.

also, what distro are you using?  Are you sure it shouldnt be a bash script, in that case you should have
on the first line.
also can you run this command and paste it here:

cd /bin; ls -l s*
drhamel69Author Commented:
I am running turnkey lamp.  Whichi is based of off Ubuntu.  I originally had #!/bin/sh and had it in cron without the SH.  That didn't work either.

root@lamp:/bin# ot@lamp:/bin# ls -cd /bin; ls -l s*
-bash: ot@lamp:/bin#: No such file or directory
-rwxr-xr-x 1 root root   450 Sep 30  2009 search-path
-rwxr-xr-x 1 root root 40724 Dec  4  2007 sed
-rwxr-xr-x 1 root root   538 Sep 30  2009 select_mountoptions
-rwxr-xr-x 1 root root  1485 Sep 30  2009 select_mountpoint
-rwxr-xr-x 1 root root 30568 Feb  4  2008 setfont
-rwxr-xr-x 1 root root  8431 Nov 27  2008 setupcon
lrwxrwxrwx 1 root root     4 Feb  7  2010 sh -> dash
lrwxrwxrwx 1 root root     4 Feb  7  2010 sh.distrib -> bash
-rwxr-xr-x 1 root root 24488 Apr  4  2008 sleep
-rwxr-xr-x 1 root root  3188 Sep 30  2009 stralign
-rwxr-xr-x 1 root root 48932 Apr  4  2008 stty
-rwsr-xr-x 1 root root 25540 Dec  8  2008 su
-rwxr-xr-x 1 root root 22312 Apr  4  2008 sync
-rwxr-xr-x 1 root root  1288 Sep 30  2009 sysfs-update-devnames
drhamel69Author Commented:
Thanks for eveyones help but I fixed it myself.  After all the input it made me think that I didn't have the absolute path to the sendEmail perl script.  Once I added /usr/local/bin in front of it it worked no problems.

Thanks Everyone!
drhamel69Author Commented:
drhamel69Author Commented:
Even though I figured out the solution for myself the comments by other users really made me think AND take other issues that it could have been out of the loop.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.