0

脚本deployment_worker.sh是一个控制脚本,负责每两个小时停止和启动一个服务......我认为是这样。显然,crontab 中的这一行做了其他事情,从每当我杀死他时进程从地狱很快回来的事实判断:

* */2 * * * /srv/server_ctrl/deployment_worker.sh restart

deployment_worker.sh的第 45 行:

echo "Issuing service start" >> $CONTROL_LOG

我向日志文件发出一行,该行有效地出现在日志中,我认为这意味着该文件被某人(不是我!)执行......而我想到的唯一一个是 cron 守护进程……

所以,这是我的问题:

  • 上面的 crontab 行是做什么的?
4

3 回答 3

3

每两小时运行一次:

 0   */2   *   *   *   <command-to-run>

所以它每分钟运行一次,从上午 12 点到 12:59,然后从上午 2:00 到 2:59,... 等等。

http://livecronjobs.com/how-to-run-cron-every-2-hour

于 2013-02-17T06:05:57.257 回答
0

* */2 * * *平均在凌晨 0 点、凌晨 2 点、凌晨 4 点运行……见man crontab

于 2013-02-17T06:03:51.593 回答
0

cron 可以在任何必要的 uid 下运行脚本。如果一个普通用户拥有 cron 权限并将某些内容添加到他们的个人 crontab 中,那么这些 cron 作业将在他们的 ID 下运行。root 可以拥有自己的 crontab,并且还可以控制每个其他用户的 crontab。

这样您的 cron 行就可以作为 root 运行(如果它在 root 的 crontab 中),或者作为其他用户运行。

至于它的作用,它每两个小时运行一次指定的脚本。

于 2013-02-17T06:04:48.533 回答