我的cron工作中有一些错误,我不知道为什么。我的cron工作是:
当我的cron作业尝试启动我的脚本但我不理解Error: bad username
错误时,我收到了这些错误,因为mc
是我系统中的有效用户并获得了该文件夹的权限
错误:
Apr 2 21:34:55 Debian-78-wheezy-64-minimal /usr/sbin/cron[27104]: (CRON) INFO (pidfile fd = 3)
Apr 2 21:34:55 Debian-78-wheezy-64-minimal /usr/sbin/cron[27105]: (CRON) STARTUP (fork ok)
Apr 2 21:34:55 Debian-78-wheezy-64-minimal cron[27105]: Error: bad username; while reading /etc/crontab
Apr 2 21:34:55 Debian-78-wheezy-64-minimal /usr/sbin/cron[27105]: (*system*) ERROR (Syntax error, this crontab file will be ignored)
Apr 2 21:34:55 Debian-78-wheezy-64-minimal /usr/sbin/cron[27105]: (CRON) INFO (Skipping @reboot jobs -- not system startup)
答案 0 :(得分:1)
我认为它所抱怨的错误用户名是cd
行@reboot
。
系统crontab就像用户crontab,除了你需要在时间和日期字段之后以及命令之前提供用户名。
通常有5个时间和日期字段,但可以用单个字段@reboot
(或@daily
,@weekly
和其他几个选项)替换它们。您仍然需要用户名字段。
在@reboot
后添加用户名(我不知道您是否需要root
,mc
或其他
(我不能100%肯定我的解释;我还没有尝试在系统crontab中使用@
字段。)
除此之外,将您的个人crontab(而非/etc/crontab
)用于您希望在自己的帐户下运行的命令通常是一个好主意。假设您的用户名为mc
,您可以创建如下文件:
1 * * * * some_command
然后将该文件提供给crontab
命令。
通过将个人命令放入/etc/crontab
,您可能会弄乱文件的其余部分,并可能损坏整个系统。您必须root
来编辑/etc/crontab
;不要将root
帐户用于任何不需要它的帐户。
答案 1 :(得分:0)
您可能已损坏了crontab
文件。使用crontab -e
进行编辑,然后尝试在结尾处添加一个空的新行。