gpt4 book ai didi

ruby - 以编程方式编辑 crontab 并强制守护进程刷新

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:17:21 24 4
gpt4 key购买 nike

我正在尝试使用出色的 CronEdit gem 在 Ruby 中为 Crontab 编写一个 Web 前端。我浏览了 Dillon Cron 的 crontab 源代码,发现它更新了一个特定的文件,以便守护进程在下一次扫描期间刷新 cron 列表。

在 VixieCron 的 man crontab 中,它说:

Additionally, cron checks each minute to see if its spool directory’s modtime (or the modtime on /etc/crontab) has changed, and if it has, cron will then examine the modtime on all crontabs and reload those which have changed. Thus cron need not be restarted whenever a crontab file is modified. Note that the crontab(1) command updates the modtime of the spool directory whenever it changes a crontab.

是否有任何平台(Ubuntu、Red Hat、ArchLinux、Mac OS X)独立的方法来确保在手动编辑 Cron 文件后,守护进程会正确刷新它?

最佳答案

不,没有。如果您知道它是 VixieCron,则更新目录的时间戳。否则,您可能可以伪造它:在调用 crontab -e 之前设置环境变量 EDITOR(这应该为 crontab 调出一个编辑器)。

想法是将编辑器设置为某个进行更改的程序。 crontab -e 将等待编辑器终止并重新读取文件并告诉 cron 某些内容已更改。

但是,如果您有旧版本的 cron,您仍然必须重新启动它。但我怀疑您能否在运行 Linux 或 Mac OS X 的任何设备上找到如此古老的版本。

关于ruby - 以编程方式编辑 crontab 并强制守护进程刷新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1673143/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com