【问题标题】:Cron job sometimes fails with error by curlCron 作业有时会因 curl 错误而失败
【发布时间】:2018-03-09 20:16:00
【问题描述】:

我在(Ubuntu 14 Trusty)中做了一个 cron 工作,就像这样:

sudo crontab-e

then

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
    * * * * * curl --silent http://www....cron_script.php >  /dev/null

但有时,我会收到此错误消息给皇冠工作:

/etc/cron.hourly/curl:
/etc/cron.hourly/curl: line 5: bin: command not found
run-parts: /etc/cron.hourly/curl exited with return code 127

谁能告诉我为什么?如您所见,它每分钟运行一次,但每小时一次我收到该错误消息。大部分时间是每小时 XX:54 分钟。

提前致谢!

【问题讨论】:

  • 你还有其他的 crobjobs 吗?
  • 新错误消息:/home/gefco/cronjobs/curl:第 4 行:*:找不到命令

标签: bash ubuntu curl cron bin


【解决方案1】:

我认为从 crontab 运行时无法找到命令 curl,因此您需要执行 which curl 它会在您的框中为您提供它的位置。然后尝试将 curl 命令 eg--> /usr/bin/curl 的确切路径输入 cron 条目,如果这对您有帮助,请告诉我。此外,您的路径详细信息应添加到运行 crontab 的用户的 DOT/BASH 配置文件中,然后它也可以在不提供 curl 命令的完整路径的情况下工作。

【讨论】:

  • 我不是一个非常有经验的用户,所以你能告诉我,我应该在哪里插入确切的路径?谢谢。
  • 在用户的主目录中(你可以在终端上只执行 cd 命令),然后执行 ls -la 命令,它也会显示隐藏文件,你可以在那里寻找 .profile和 .bash_profile 并尝试使用这些路径详细信息编辑 .bash_profile ,然后创建一个新的服务器会话并尝试在其中使用 echo $PATH ,如果它显示值则意味着变量已成功选择。
  • 我已经尝试通过编辑我的主目录中的 cron.sh 文件:/usr/bin/curl --silent http...cronscript.php 但 cron 作业根本没有。 ..那么,我应该把它放在哪里?
【解决方案2】:

您的 crontab 不应包含以下行:

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

由于您已将路径放在 crontab 每小时脚本中,因此它每小时执行一次,这会让您出现错误

改为创建一个脚本并将两行都放在那里

#!/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
curl --silent http://www....cron_script.php

然后在 crontab 中运行脚本

* * * * * my_script.sh >  /dev/null 2>&1

Crontab 应该只包含遵循以下格式的行:

m h dom mon dow 命令

【讨论】:

  • 脚本应该放在哪里?每小时?
  • 你可以把它放在你的主目录中。只要你在 crontab 中通过路径引用它就没有关系: * * * * * /home/myname/my_script.sh
  • 只要确保脚本是可执行的 (chmod +x my_script.sh)。请注意,我已经修改了示例,为您提供了一个 bash 脚本,它应该为您开箱即用(#!/bin/bash)我认为顶部需要
  • 如果 cronjob 仍然有效并且您只是想摆脱错误,请在命令末尾添加 2>&1,错误也将发送到 /dev/null 并被忽略跨度>
  • 不,不是错误令人讨厌,而是问题本身,有时 cron 作业根本不起作用......有时它确实...... wtf....
猜你喜欢
  • 2013-07-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-07
  • 2020-03-15
  • 2016-06-04
  • 1970-01-01
相关资源
最近更新 更多