记录思考

Linux 设置时区不生效

在搬瓦工买了一台服务器,时区一直是西四区的,感觉很别扭,所以打算把它改成东八区的。

在搬瓦工买了一台服务器,时区一直是西四区的,感觉很别扭,所以打算把它改成东八区的。

查看当前时区

date -R

查看 UTC 时间

date -u

修改 Linux 时区

tzselect

用这个命名,会有很多选择项,最后我选择了中国北京的时区,但是并没有立即生效。比较大的可能是需要重启服务器,不过我没有尝试,因为我并不想重启服务器。

最后找到另外一个办法,修改 /etc/profile 文件,在文件后面加上下面的代码

export TZ='CST-8'

然后 source /ect/profile,就可以生效了。

修改完系统时间后,感觉一切都还好,但是有一天我发现了一个问题。我使用 crontab 定了一个定时任务,在每天的 21:30 分执行一个脚本,而实际上,它总是在第二天的 09:30 执行的。整整差了 12 个小时。大概猜测一下,这个系统原来是西四区的,我改成东八区,总共差了 12 个时区。我按照东八区的时间设置的定时任务,而 crontab 还是以西四区的时间工作。所以会差 12 个小时。

查了一下,crontab 是需要重启一下的。命令如下:

/etc/init.d/crond restart

然后验证一下,一切正常。

- EOF -

本文链接 https://spacepage.top/articles/2018.04.12-Linux_timezone.html,欢迎转载,转载请注明出处。