前言
最近在工作中碰到这么一个问题:我们某台内网服务器的本地时间和 UTC 时间相差了一个多小时,由于该服务器没有联网,所以不能同步网络时间,但是我们部署在其上的某个服务通过时间戳来校验签名,签名算法设置的请求时间戳和当前时间不超过 30s,所以只能离线校准该服务器的本地时间。
同步 Linux 时间
修改当前时区
将本地时区设置为上海,timedatectl set-timezone Asia/Shanghai
。
修改机器硬件时间
把机器硬件时间校准为当前时间,hwclock --set --date="03/16/2021 22:00:00"
。
同步系统时间
将机器时间同步到系统时间,hwclock --hctosys
。
相反的,如果要把系统时间同步到机器时间,hwclock --systohc
。