linux - Moodle 2.5 (openSuse) cron 作业停止运行,我找不到它,或日志,Moodle 的 cron 在哪里?

标签 linux apache cron moodle opensuse

我安装了 Moodle 2.3,运行良好。 升级到 Moodle 2.5,现在通知页面显示 Cron 作业未在 24 小时内运行。

因此,cron 停止运行。 我通过浏览器/URL 运行它,它花了一段时间但从未完成,服务器卡住,我不得​​不重新启动它。我假设这不应该发生,但我一直害怕再次运行 cron。

现在,我在哪里可以看到 cron 作业?我如何查看 cron 作业是否已经存在但停止运行,我在哪里可以找到日志,这个 cron 将在哪个用户下运行?

这是一个 openSuse 服务器

我尝试了这些命令:

  1. crontab -u apache2 -e
  2. crontab -u apache -e
  3. crontab -u www-data -e
  4. crontab -u root -e <- 这会打开一个新文件,并说一个文件不存在,因此将创建一个。

它们都不起作用。

请帮我找到任何现有的 cron 作业、日志、moodle 2.5 的 cron 用户(不是 rootapachewww-data 等),我想看看他们为什么停下来,或者我可以通过某种方式让他们返回。

最佳答案

1。检查网络服务器的用户

通常,cron 作业使用网络服务器的同一用户运行(查找:Get apache linux user from php)。在类似 debian 的发行版上是 www-data,在 OpenSuse 上我认为是 wwwrun

2。检查定义的 cron 作业

在那之后,您可以像您已经说过的那样检查 cron 作业(无论如何,Moodle 在安装时没有定义 cron 作业,它们可能事先没有定义,或者某些东西或某人删除了作业?)

$ sudo crontab -u wwwrun -e

或:

$ sudo -u wwwrun crontab -e

通常 Moodle 的 cron 作业看起来类似于这样一行:

*/15 * * * * /usr/bin/php  /path/to/moodle/admin/cli/cron.php >/dev/null

但它也可以列在文件中(仔细阅读 Cron on Moodle Wiki )。

3。检查 cron 作业是否正常运行

要检查 cron 是否正常工作,请查看:Reasons why crontab does not work .

注意事项

在设置 cronjob 之前我会小心,如果它会杀死你的服务器.. :) 我会尝试直接从命令行运行脚本,看看是否一切正常。像这样:

sudo -u wwwrun /usr/bin/php /path/to/moodle/admin/cli/cron.php

关于linux - Moodle 2.5 (openSuse) cron 作业停止运行,我找不到它,或日志,Moodle 的 cron 在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19799671/

相关文章:

linux - gdb 错误 - 文件不是可执行格式 : File format not recognized

linux - 在没有编译器的 Ubuntu 机器上安装 dkms

apache - Hadoop的cloudera发行版是否使用控制脚本?

apache - 如何基于环境变量在 Apache 配置中包含外部 httpd.conf

linux - 当需要用户输入时,Emacs --batch 在 cron 中运行会挂起吗?

linux - 输入错误的 mv 命令

java程序使操作系统难以格式化可移动磁盘

java - 如何通过 Apache Olingo V4 Java API 使用字符串枚举

php - 如何运行 artisan 命令 schedule :run on hosting server? (Laravel)

php - vBulletin 等脚本如何在不使用 cron 作业的情况下启动定期维护作业?