脚本deployment_worker.sh是一个控制脚本,负责每两个小时停止和启动一个服务......或者我认为。显然,crontab中的这一行做了别的事情,从这个事实来看,每当我杀死他时,这个过程就会很快从地狱回来:
* */2 * * * /srv/server_ctrl/deployment_worker.sh restart
在deployment_worker.sh的第45行:
echo "Issuing service start" >> $CONTROL_LOG
我向日志文件发出一行,该行有效出现在日志中,我认为这意味着该文件由某人(不是我!)执行...而且只有我想到的就是cron守护进程......
所以,这是我的问题:
答案 0 :(得分:3)
每两小时运行一次:
0 */2 * * * <command-to-run>
所以它从早上12点到12点59分每分钟运行一次,然后从凌晨2点到2点59分运行......等等。
答案 1 :(得分:0)
* */2 * * *
表示在午夜0点,凌晨2点,凌晨4点运行...请参阅man crontab
答案 2 :(得分:0)
cron可以在任何必要的uid下运行脚本。如果普通用户拥有cron权限并向其个人crontab添加内容,则这些cron作业将在他们的ID下运行。 root可以有自己的crontab,也可以控制每个其他用户的crontab。
这样你的cron行可以以root身份运行(如果它在root的crontab中),或者作为其他用户运行。
至于它的作用,它每两个小时运行一次指定的脚本。