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时间问题差不多的思路,直接调整硬件时间,就能解决时间戳显示的问题了。

相关推荐
txinyu的博客12 分钟前
MAC 地址
服务器·网络·macos
oscar99936 分钟前
构建敏捷团队的DevOps测试策略:速度与可靠性的平衡艺术
运维·测试·devops
星辰&与海1 小时前
Proxmox导入虚拟机后进入dracut紧急模式
运维
咕噜签名-铁蛋2 小时前
火山云豆包:重新定义AI交互,让智能触手可及
服务器
Serverless社区2 小时前
进阶指南:BrowserUse + Agentrun Sandbox 最佳实践指南
运维·阿里云·云原生·serverless·函数计算
安当加密2 小时前
电力系统如何防“明文传输”?某电网公司用SM2+UKey构建“端到端加密”实战
服务器·数据库·安全·阿里云
Maggie_ssss_supp2 小时前
Linux-MySQL权限管理
linux·运维·mysql
石像鬼₧魂石2 小时前
Kali Linux 内网渗透:深度工程实施手册
linux·运维·服务器
sg_knight3 小时前
工厂方法模式(Factory Method)
java·服务器·python·设计模式·工厂方法模式·工厂模式
半桶水专家3 小时前
什么是 Unix Socket?
服务器·unix