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スクリプトを呼び出すjutのいくつか)。
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にアップグレードするまで、これらはすべて正常に機能しました。
まず、Ubuntuでコマンドを実行しました。
crontab -e
2番目のステップでは、これを行いました。
* * * * * cd /var/www/html && php artisan schedule:run >> /dev/null 2>&1