If you have script that echo a string and if the “mail” program is enabled and configured crontab will email the output. To disable add ‘>/dev/null 2>&1’ at the end of script. This will capture all of the commands output.
30 * * * * notBraiamsBackup.sh >/dev/null 2>&1
Couple of days ago I wrote a post Stop ubuntu from Hibernating, fixing crontab but the problem wasn’t solved. Cron was running (I checked the log) but my python script wasn’t being executed.
What I found out was when putty session to my server is closed the home directory is unmounted, I believe. My home directory contained all my python scripts.
The cron was trying to run scripts that didn’t exist, so nothing was happening. So what I did was move all my python scripts to the directory /var/ and changed the crontab to execute scripts that are located in there and I hadn’t had any issues since.
Recently I was having issues with cron not executing between the times of 10pm to 9am and when I didn’t access the server for an extended period of time. The issue I found was that my server was hibernating/sleeping at those times and cron doesn’t execute if that happens. My ubuntu server doesn’t have a GUI so everything needs to be configured in the command line. So here is what I did.
edit the grub file:
$ sudo nano /etc/default/grub
Add the kernel options “acpi=off apm=off” to the GRUB_CMDLINE_LINUX_DEFAULT:
$ sudo update-grub
Reboot your computer.
turn off ubuntu server hibernation