一、问题

在使用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 2021

2.设置日期

如果需要设置日期,需要使用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之间,夏天会有一小时时差

到此这篇关于Linux系统中如何修改时间和时区的文章就介绍到这了,更多相关Linux修改时间和时区内容请搜索本站以前的文章或继续浏览下面的相关文章希望大家以后多多支持本站!

发表回复