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

相关推荐
我不要放纵7 分钟前
LVS集群搭建
linux·服务器·lvs
阿巴~阿巴~12 分钟前
自主Shell命令行解释器
linux·运维·服务器
小周学学学14 分钟前
docker安装与简单项目上手
运维·docker·容器
SHUIPING_YANG38 分钟前
根据用户id自动切换表查询
java·服务器·数据库
chao_7891 小时前
更灵活方便的初始化、清除方法——fixture【pytest】
服务器·自动化测试·python·pytest
枷锁—sha1 小时前
【DVWA系列】——CSRF——Medium详细教程
android·服务器·前端·web安全·网络安全·csrf
枷锁—sha1 小时前
跨站请求伪造漏洞(CSRF)详解
运维·服务器·前端·web安全·网络安全·csrf
scuter_yu1 小时前
腾讯云云服务器深度介绍
服务器·云计算·腾讯云
云途行者1 小时前
使用 docker 安装 openldap
运维·docker·容器
群联云防护小杜2 小时前
深度隐匿源IP:高防+群联AI云防护防绕过实战
运维·服务器·前端·网络·人工智能·网络协议·tcp/ip