CrontJob 的时区问题
Link Share :https://zhiqiang.org/it/cronjob-timezone.html
- via RSS
今天发现一台新的服务器( ubuntu 18.04 )的计划任务异常,但非常有规律,就是所有任务都比预设时间晚了 8 个小时执行。自然而言猜测是时区设置问题。
奇怪的是date -R
里显示的时区是上海+8 时区,符合预期。有人说这是因为用户 bash 环境设置了TZ
环境变量,而计划任务并不会初始化 bash
环境导致的。但我们并没有设置过TZ
变量,echo $TZ
的结果是空。
然后检查了/etc/localtime
和/etc/timezone
两个文件,发现前者显示CST+8
时区,但后者里面是UTC
时区,不符合预期。但为什么date
-R
能得到争取的时区,但cronjob
却不能,却不得而知。
最后修改方式:
sudo dpkg-reconfigure tzdata
这时候date -R
和more /etc/localtime
和more /etc/timezone
都显示正确的时区了。
设置时区之后,最好手工重启cron
服务:
sudo /etc/init.d/cron restart
作者暂无likerid, 赞赏暂由本网站代持,当作者有likerid后会全部转账给作者(我们会尽力而为)。
Tips: Until now, everytime you want to store your article, we will help you store it in Filecoin network. In the future, you can store it in Filecoin network using your own filecoin.
Support author:
Author's Filecoin address:
Or you can use Likecoin to support author: