SGTMS

做事情
我们是认真的
您的位置:SGTMS>Linux>CentOS7时区问题

CentOS7时区问题

前言

近期在系统运维过程中,遇到两次情况,时间感觉突然快了一小时。因为是内网生产环境、也没有对时装置,所以自己研究下了,找到了原因:是夏令时导致的。至于为什么会开启了夏令时,原因应该是当时装服务器系统那哥们时区没给选好,所以装操作系统时区选择也很重要啊。如图,美国时区夏令时是默认开启的。

夏令时

正文

解决办法:修改时区即可。

在CentOS6版本,时间设置有date、hwclock命令,从CentOS7开始,使用了一个新的命令timedatectl。

基本概念

一、GMT、UTC、CST、DST 时间

UTC

整个地球分为二十四时区,每个时区都有自己的本地时间。在国际无线电通信场合,为了统一起见,使用一个统一的时间,称为通用协调时(UTC, Universal Time Coordinated)。

GMT

格林威治标准时间 (Greenwich Mean Time)指位于英国伦敦郊区的皇家格林尼治天文台的标准时间,因为本初子午线被定义在通过那里的经线。(UTC与GMT时间基本相同,本文中不做区分)

CST

中国标准时间 (China Standard Time)

GMT + 8 = UTC + 8 = CST

DST

夏令时(Daylight Saving Time) 指在夏天太阳升起的比较早时,将时间拨快一小时,以提早日光的使用。(中国不使用)

二、硬件时间和系统时间

硬件时间

RTC(Real-Time Clock)或CMOS时间,一般在主板上靠电池供电,服务器断电后也会继续运行。仅保存日期时间数值,无法保存时区和夏令时设置。

系统时间

一般在服务器启动时复制RTC时间,之后独立运行,保存了时间、时区和夏令时设置。

timedatectl 命令

读取时间

	timedatectl  //等同于timedatectl status

设置时间

	timedatectl set-time "YYYY-MM-DD HH:MM:SS"

列出所有时区

	timedatectl list-timezones

设置时区

	timedatectl set-timezone Asia/Shanghai

设置是否与NTP服务器同步

	timedatectl set-ntp yes  //yes或者no

将硬件时钟调整为与本地时钟一致

	hwclock --systohc --localtime或timedatectl set-local-rtc 1

注意硬件时钟默认使用UTC时间,因为硬件时钟不能保存时区和夏令时调整,修改后就无法从硬件时钟中读取出准确标准时间,因此不建议修改。修改后系统会出现警告。

将硬件时间设置成UTC

	hwclock --systohc --utc或timedatectl set-local-rtc 1
夏令时
本文最后更新于2022-3-15,已超过 1 年没有更新,如果文章内容或图片资源失效,请留言反馈,我们会及时处理,谢谢!
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《CentOS7时区问题》
文章链接: https://www.sgtms.com/linux/52.html
本站资源仅供个人学习交流,转载或者引用本文内容请注明来源及作者,不允许用于商业用途。
分享到:

相关推荐

网友评论抢沙发

路人甲 表情
Ctrl+Enter快速提交