11

I get the following error in my syslog:

Oct 17 13:14:03 tracker cron[873]: (*system*) ERROR (Syntax error, this crontab file will be ignored)
Oct 17 13:14:03 tracker cron[873]: Error: bad minute; while reading /etc/crontab

I don't see any bad minutes though! My crontab file is:

# /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 18   * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 18   * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 18   1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#

8 Answers8

12

Use cat -v /etc/crontab to check for unintended control characters.

4

Cron tab requires at least the first and last lines of the file not to be actual cron instructions. You can put comments instead - such as those below in a file:

# START CRON JOB LIST
* * * * * /path/to/script/script1.sh
0 3 * * 0 /path/to/script/script2.sh
5 0 * * 1 /path/to/script/script3.sh
# END CRON JOB LIST

Install it like so

sudo crontab -u user /path/to/cron/file

This should work for you.

Al Zziwa
  • 141
2

I have faced a similar issue with this error:

crontab: installing new crontab
"/tmp/crontab.MswKCq":0: bad minute
errors in crontab file, can't install.
Do you want to retry the same edit? n
crontab: edits left in /tmp/crontab.MswKCq

Googled all round and found that this was the error due to the no space in log folder for cron i.e in /var. Make sure to run df -h /var/ and see if there is enough space there.

1

I have same error on Ubuntu 16.04. Problem have with empty assignment to MAILTO

MAILTO=

The problem I found with the help of chkcrontab

orgoj
  • 111
1

For anyone having issues on a Mac you can check your crontab for non-printing characters by typing

crontab -l | cat -e

or

sudo crontab -l | cat -e

if you have a root crontab.

1

various online systems (eg cron.help) said that 0/5 was "every 5 minutes" but crontab doesn't actually like that and I needed to do */5

0

solution is very simple but hidden mate.

goto

/var/spool/cron/crontabs/root

edit your crontab file via notepad++ then press CTRL+F then goto Replace tab.

then write in. Find with \r Replace with (this input should empty make sure no space etc)

then click replace all button. There you go mate you issue resolve ;)

0

I have same issue. But my case is I use the windows file to replace the file

/var/spool/cron/crontabs/root.

My solution is:

apt install dos2unix
dos2unix /var/spool/cron/crontabs/root

or you use python code like

str.replace("\r\n", "\n")

to fix it. Hope you doing well.

Tank
  • 1