Ubuntu服务器时间和本地时间不一致怎么解决——Linux的Local Time和RTC time

最近一直在搞大模型的相关工作,所以一直在用Linux服务器,前面的文章里也提到了,我用的是一台Dell PowerEdge R730xd。

但在使用中发现,IDRAC中的日志时间和本地时间存在时差,大概相关8小时。

对于技术人员,8小时这个时差还是相对比较敏感的,这就是UTC时间和CST时间的时差啊。

因为我们国内时区是东八区,所以和UTC相关8小时的时差。所以问题相必就在ubuntu-server的时区设置上。

1、查看当前时区

使用命令 timedatectl 查看当前时区和设置

可以看到 Local Time是采用的UTC, RTC time也是。其中和我们今天设置相关的就是这两项设置。

2、设置时区

命令: timedatectl set-timezone Asia/Shanghai

然后再查看当前时区

但是,经过上面修改后,你会发现某些位置,如某些日志的时间戳显示还是有问题,这就用到了另一个时钟了------RTC time(硬件时间)。

3、修改硬件时区

命令 timedatectl set-local-rtc yes

修改之后就会发现,有问题的时间戳显示正常了。

关于Local time和RTC time:

很多装到Windows和Mac双系统的朋友可能有印象,每次从Mac切换系统到Windows后,Windows的时间会变化,和当前时区的时间会相差几个小时(在国内一般是8个小时)。

其实原因也类似------macOS系统和Windows系统对时间的处理方式不同。macOS 把硬件时间当作 UTC,操作系统中显示的时间是硬件时间经过换算得来的。Windows把系统硬件时间当作本地时间(Local Time),操作系统中显示的时间和 BIOS 中是一样的。

操作系统在同步时间的时候,同时会修改BIOS时间,因此导致Windows/macOS显示的时间不一致。

先看Linux几个时间的功能介绍:

Local time: Sun 2024-09-01 11:49:33 CST # 本地时间

Universal time: Sun 2024-09-01 03:49:33 UTC # 协调世界时间

RTC time: n/a # 硬件时间

Time zone: Etc/UTC (UTC, +0000) # 时区

Network time on: yes # NTP时间同步是否开启,yes表示是

NTP synchronized: yes # 如果和远程NTP服务器成功同步,显示为yes

RTC in local TZ: no # no表示硬件时钟设置为协调世界时(UTC),yes表示硬件时钟设置为本地时间

所以,和Mac/Windows时间问题差不多的思路,直接调整硬件时间,就能解决时间戳显示的问题了。

相关推荐
泛黄的咖啡店26 分钟前
域名系统DNS
运维·云计算
dessler35 分钟前
Kubernetes(k8s)-集群监控(Prometheus)
linux·运维·kubernetes
一夜沐白36 分钟前
Linux用户管理
linux·运维·服务器·笔记
PLUS_WAVE1 小时前
【Tools】chezmoi 跨多台不同的机器管理 dotfiles 的工具
linux·服务器·软件工程·工具·chezmoi
喝养乐多长不高1 小时前
详细PostMan的安装和基本使用方法
java·服务器·前端·网络协议·测试工具·https·postman
薯条不要番茄酱2 小时前
【网络原理】从零开始深入理解TCP的各项特性和机制.(二)
服务器·网络·tcp/ip
Pasregret2 小时前
备忘录模式:实现对象状态撤销与恢复的设计模式
运维·服务器·设计模式
LuckyRich12 小时前
【仿Mudou库one thread per loop式并发服务器实现】服务器边缘测试+性能测试
服务器·c++
珹洺3 小时前
Linux红帽:RHCSA认证知识讲解(十 四)分区管理、交换分区,创建逻辑卷与调整逻辑卷的大小
linux·运维·服务器
威桑3 小时前
解决Ubuntu下使用CLion构建Qt项目时找不到已安装的模块的问题
linux·运维·ubuntu