vps服务器上crontab加入backup.sh脚本不执行是服务器与本地时间有时差

丰Feng7年前未命名4852

最近给丰的博客做定时备份。

在美国vps服务器ubuntb系统上执行backup.sh脚本正常工作,加入crontab后不能定时执行。

经过一天的测试,发现是美国vps服务器与本地北京时间有8小时时差,比本地时间慢8小时。

而vps服务器与美国首都华盛顿时间不是同步的,实际上美国首都华盛顿时间与北京时间有13小时时差,比北京慢13小时。

测试的方法思路是,在crontab,加入24条同一分钟45分,但不同24个小时的任务。如果能执行,对半执行12条,先执行0-11小时,如果不可以,就执行另外12条(12-23小时)。如果可以,就跳过,再执行12条中对半的6条,如果能执行,再执行6条对半的3条,如能也能执行,再执行3条中的另外两条,直到测试出准确时间指令的最后一条,就是与本地时间对应时差的这条。计算出这条时间为14:45的指令与本地北京时间的时差。

比如,测试后能执行时本地北京时间为22:45,美国vps时间为14:45执行能成功的,就是相差了8小时的时差。

那设定crontab的指令就是以设定为 14:45执行,也就相当于是本地北京时间22:45执行该指定。

而比如要设定本地北京时间23:58分执行脚本,crontab中指令要设定时间为15:58,即本地北京时间23点减去与美国vps服务器时间时差8小时。(58 15 * * * root sudo /backup/backup.sh)

测试例子:

45 0 * * * root sudo /backup/backup.sh

45 1 * * * root sudo /backup/backup.sh

......

45 14 * * * root sudo /backup/backup.sh (这条是测试能成功执行的指令)

......

45 23 * * * root sudo /backup/backup.sh


minute hour day month week command指令格式为 前面6位数分别是,第一位数是分钟,01-60。第二位数是小时,0-23。第三位数是日期,1-31。第四位数是月份,1-12。第五位数是星期,0-7,0和7是星期天。最后是要执行的命令,可以是系统命令,或是编写的脚本文件如backup.sh。)

vps服务器上crontab加入backup.sh脚本不执行是服务器与本地时间有时差》——丰Feng

上一篇

印象-微信公众号上传M4A音频提示转码失败

猜你也喜欢六点听歌,你的歌单

 


相关文章

小小地震感的随想

阿妈说早上地震,知道吗?当然知道,清晨方便后躺在床上,感觉有一阵小小的摇晃震动。因为住的房子靠着公路边,以为是车轻过的震动。然后有车经过,没有震动,想到是地震,手机开机看了一下时间刚好8点。想想如果一...

修改2021学前端发的占用ID的近200篇草稿标题空文章,在接下来的时间改为新增

原来是打算,把学习的一些方法、一些想法、或者是经过给小结写下来。后来,也就空着没有去进去。发现,前端学起来,也不是几篇、或几十篇文章就能写清楚,写透的。博客中,文章目前有约1357篇,相当于近200篇...

前几天休息前东家约我喝茶

他提了一个事让我帮他。但这个事触到我底线了。所以我决定不帮他。...

好久没吃真功夫了

好久没吃真功夫了,点了份酸菜卤肉饭,是份带汤的套餐,一份虫草花炖肉汁汤一份生菜王,比较嫩。取餐的时候,看到可以免费加米饭,这个和上班的店里是一样的。有伍仁普丁,豆豆香,辣椒酱,也是免费的。吃完了,吃了...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。