Init.d 与 Cron——使用哪一个?

Init.d 与 Cron——使用哪一个?

我正在编写一个愚蠢的小脚本,用于在 (Debian Lenny) 服务器启动时向人们发送电子邮件。目前,我已使用 update-rc.d 将其设置为 init.d 脚本,但后来我意识到我可以使用 cron 作业来代替。对于这样的任务,使用 cron 作业还是 init.d 更好?

我还没有真正测试过脚本是否在启动时运行,但它应该可以工作。还没有尝试过重新启动,但根本问题是我们随机让服务器重新启动一次,然后又随机关闭/断电一次,所以我们想知道这是电源故障还是其他原因。这至少会让我们知道服务器何时重新启动。

答案1

因为这听起来像一个运行并完成的脚本,所以我会说 /etc/rc.local 或 cron (time:@reboot) 绝对是可行的方法。

另一方面,任何保持守护进程的东西都应该有自己的初始化脚本。如果没有其他的,确保它能正常关闭。

答案2

/etc/rc.local每次启动时,在所有其他 init 脚本运行之后执行。这是另一个易于实现的选项。

答案3

Cron 是一个基于时间的系统。有很多方法可以实现它。在 lenny 中,您可以使用 /etc/rc.local 中的脚本。此文件将在进程结束时运行,即在发送邮件所需的所有网络启动之后。

相关内容