一、问题
在使用linux系统时,有时会遇到系统时间与当地时间存在差异的情况。
(1)如果差异较小
相差几分钟、十几分钟,可以通过修改时间来解决
(2)如果差异较大
相差几个小时,则考虑可能是由于时区不同导致的。这种情况,如果只更改了时间,那么linux系统上的其他程序可能还是会获取错误的时区,从而导致难以预知的问题。
二、设置时间、日期和时区
1.只设置时间
(1)先查看日期、时间和时区,通过date命令
[root@test ~]# date Wed Jan 6 16:35:16 CST 2021(2)如果日期和时区都正确,则只更改时间,通过 date -s 时间
[root@test ~]# date -s 10:10 Wed Jan 6 10:10:00 CST 20212.设置日期
如果需要设置日期,需要使用date -s设置
date -s yyyy-MM-dd注意:修改日期后,时间重置为该天的凌晨0时0分0秒
3.设置时区
设置时区可能稍微复杂点,它分为两步
(1)首先需要知道需要使用哪种时区,
例如,我国使用的北京时间,对应的时区为东八区,可以记为CST、GMT+8、Asia/Shanghai
(2)将系统中存储的时区信息,覆盖到本地时区配置
只需要将/usr/share/zoneinfo/下面的时区配置信息,覆盖到/etc/localtime本地时区配置即可,具体操作
# 以中国标准时区为例 cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime注意:
(1)/usr/share/zoneinfo/目录下存储的是所有时区的配置信息,需要使用哪种时区,将对应的配置覆盖到本地时区配置 /etc/localtime即可。
(2)Asia/Shanghai是以地区划分的时区,在查找/usr/share/zoneinfo/下时区信息时,如果没有找到直接时区配置,需要以地区划分查找本地区的时区配置。
(3) Asia/Shanghai也称为CST,它会兼容历史各个时间节点。中国1986-1991年实行夏令时,夏天和冬天差1个小时,Asia/Shanghai会兼容这个时间段。因此,1992年以后,在中国,GMT-8和Asia/Shanghai是一样的时间,1986-1991之间,夏天会有一小时时差
暂无评论内容