【问题标题】:Cron scheduled task ignoredcron 计划任务被忽略
【发布时间】:2023-03-30 19:08:01
【问题描述】:

我已经设置了一个特定的 cronjob (crontab -e),但它不像我想象的那样工作。我不明白出了什么问题。 这是我的工作(根 cron):

@reboot /path/to/my_script.sh start
25 18 * * * halt

正如预期的那样,第一行正在运行 my_script.sh,但是当服务器关闭时,什么也没有发生。 @reboot 选项是否可以单独使用?

【问题讨论】:

  • halt的完整路径?
  • 我正在尝试,但我想如果这是问题所在,我会在日志中看到一条错误消息。我这里什么都没有。
  • 感谢 devnull,就是这样。我必须养成使用完整路径的习惯...

标签: linux bash cron scheduled-tasks


【解决方案1】:

cron 中没有在关机时运行的选项。 @reboot 用于在 start

上运行脚本

如果你想在关机时运行脚本,你需要编写一个initd 脚本并将其注册到关机运行级别。 halt 的标准运行级别是 0restart 的运行级别是 6。我已经在 Debian、Gentoo 和 Redhat 系统上验证了这一点,但在 *NIX 系统上似乎也是如此。更多信息请查看this

【讨论】:

  • 感谢 hek2mgl,但您误解了它。我有一个在启动时运行的脚本,但我也想在其他时间关闭我的服务器。当我问“@reboot”是否单独工作时,我实际上是在问“@reboot”的行是否取消了以下行。
  • 不,为什么要这样。 cron 脚本中的行不是按顺序执行的,而是在事件中执行的。
  • 我不熟悉 cron "@xxxxx" 选项,所以我不确定。
  • 不客气,我不得不承认我以前什至不知道他们。但是文档对它们很清楚......
猜你喜欢
  • 1970-01-01
  • 2020-12-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-03-06
  • 2014-05-26
  • 2011-12-18
  • 1970-01-01
相关资源
最近更新 更多