/etc/cron.d 中的作业在 ubuntu 上不起作用

问题描述 投票:0回答:2

当我在终端中运行

php /var/www/html/devices/ac1/cron_on.php
时,它可以正常工作。但是当我将其添加到
/etc/cron.d
目录中时,没有任何反应。

cron 作业

49 11 * * * root php /var/www/html/devices/ac1/cron_on.php

我也尝试过

49 11 * * * root /usr/bin/php /var/www/html/devices/ac1/cron_on.php

并尝试不使用

root

php ubuntu cron
2个回答
32
投票

要找到问题并使其发挥作用,请考虑以下事项

  • 确保
    /etc/cron.d/
    中的脚本归root所有:root (
    chown root:root /etc/cron.d/*
    )
  • 确保脚本以换行符结尾
  • 如果脚本似乎不起作用,请尝试使用简单的脚本,例如
    * * * * * root echo test >> /tmp/cron_temp
    并监控
    /tmp/cron_temp
  • service cron status
    将提供该行执行情况的提示
  • 如果执行的行似乎是罪魁祸首,请尝试以 cron 文件中的用户身份运行它
    sudo -u username <command-to-be-run>

3
投票

我发现文件名中有一个点(

.
)会导致 cron 作业无法运行。删除点,一切运行正常。

© www.soinside.com 2019 - 2024. All rights reserved.