从 Ubuntu 16.04 升级到 18.04 后 Cron 作业不再起作用

从 Ubuntu 16.04 升级到 18.04 后 Cron 作业不再起作用

在从 Ubuntu 16.04 升级到 18.04 之前,我有许多 cron 作业运行良好。升级后,我可以在终端中或通过单击 GUI“配置计划任务”中的“运行选定任务”来运行所有定义的作业(使用 crontab -e),但所有这些作业都不会在预定的时间(或任何其他时间)执行...再说一次,我可以使用终端或提到的 GUI 完美地执行所有定义的作业(调用 R 脚本),没有任何问题。

输出cat /var/log/syslog | grep cron

Jul 25 16:16:41 usernameVB crontab[10530]: (username) LIST (username)
Jul 25 16:16:50 usernameVB crontab[10535]: (username) LIST (username)
Jul 25 16:16:59 usernameVB crontab[10545]: (username) LIST (username)
Jul 25 16:17:01 usernameVB CRON[10549]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Jul 25 16:17:08 usernameVB crontab[10553]: (username) LIST (username)
... (more of the LIST lines)

如何让 cron 作业在定义的时间运行?

编辑:添加了 sudo systemctl status cron.service 的输出:

$sudo systemctl status cron.service
[sudo] password for username: 
● cron.service - Regular background program processing daemon
   Loaded: loaded (/lib/systemd/system/cron.service; enabled; vendor preset: ena
   Active: active (running) since Mon 2018-07-23 02:42:23 EDT; 2 days ago
     Docs: man:cron(8)
 Main PID: 734 (cron)
    Tasks: 1 (limit: 4915)
   CGroup: /system.slice/cron.service
           └─734 /usr/sbin/cron -f

Jul 24 10:17:01 usernameVB CRON[30421]: pam_unix(cron:session): session opene
Jul 24 10:17:01 usernameVB CRON[30422]: (root) CMD (   cd / && run-parts --re
Jul 24 10:17:01 usernameVB CRON[30421]: pam_unix(cron:session): session close
Jul 25 02:17:01 usernameVB CRON[17013]: pam_unix(cron:session): session opene
Jul 25 02:17:01 usernameVB CRON[17013]: pam_unix(cron:session): session close
Jul 25 13:17:01 usernameVB CRON[3767]: pam_unix(cron:session): session opened
Jul 25 13:17:01 usernameVB CRON[3768]: (root) CMD (   cd / && run-parts --rep
Jul 25 13:17:01 usernameVB CRON[3767]: pam_unix(cron:session): session closed
Jul 25 16:17:01 usernameVB CRON[10548]: pam_unix(cron:session): session opene
Jul 25 16:17:01 usernameVB CRON[10548]: pam_unix(cron:session): session close
lines 1-19/19 (END)

编辑 2:我使用$crontab -e打开的命令创建了作业/tmp/crontab.Rnzw6Y/crontab。内容如下所示(其中几个在不同时间/日期调用 R 脚本)。

45 15 * * 1-5 /usr/bin/R --vanilla --quiet < /home/username/code/scripts/R_script_1.R 2>&1 | tee -a "/home/username/log/R_script_1.R - `date +\%Y-\%m-\%d\ \%H:\%M:\%S`.log.txt" # JOB_ID_26

让我指出的是,在终端运行这个命令很好:

/usr/bin/R --vanilla --quiet < /home/username/code/scripts/R_script_1.R 2>&1 | tee -a "/home/username/log/R_script_1.R - `date +\%Y-\%m-\%d\ \%H:\%M:\%S`.log.txt"

在从 16.04 升级到 18.04 之前,一切都运行良好。

答案1

首先,我在 Ubuntu 上运行了该命令。

crontab -e

第二步我这样做了:

* * * * * cd /var/www/html && php artisan schedule:run >> /dev/null 2>&1

相关内容