ntpd命令配置校时

让 Linux 保持精确时间

等等,还有一件事。
上次在咖啡馆见到程序员,他一直在调整服务器的时间,说时区不对,导致杯子里的咖啡都凉了。
Linux 时间这个事情真的很烦人。

比如去年夏天我在云南的一家小客栈,电脑时间总是不准确。
早上六点钟的闹钟响了,连熟睡的游客都吓了一跳。
老板用了一个小工具,一个手摇钟,直接插在USB上,说这样可以看时间。
后来我想,这是不是有点类似于Linux中对时间的强调呢? 他们都想找到十字准线。

他们称之为精确时间同步,听起来很奇怪,但实际上意味着确保系统中的时间与真实时间相似。
你看,systemd-timesyncd服务就像一个时间侦探,去各个服务器去查询,最后调整系统时间与大家一致。
我试过一次。
我将电脑连接到宿舍的Wi-Fi并启动服务。
过了一会儿,时间准了,比之前快了很多。

而且,这件事颇有特殊性。
例如,UTC 时间和本地时间的选择取决于您的系统的使用方式。
我以前在一家公司的服务器上工作,服务器使用的是UTC时间。
每次远程连接的时候,我都要注意时差,不然我都不知道现在几点了。
后来我建议他们改成当地时间,问题就好多了。
那段时间,我每周必须飞往那个城市一次。
每次落地时,我都必须更改计算机上的时区。
实在是太麻烦了。

再比如NTP服务器,它就像一个时间中转站,很多设备都去那里调整时间。
我在家搭建了一台NAS,安装了NTP服务。
这样家里所有的电脑、手机都可以用它来查看时间,无需再询问外部服务器,还能节省电量。
配置的时候特意选了几台国内的NTP服务器,说会更快。
果然,尝试了几次之后,时间比之前快了很多。

不过,这件事并不是一成不变的。
例如,有时如果网络不好,systemd-timesyncd可能无法同步。
我在一个偏远山区办活动,那里的网络时好时坏。
结果电脑时间跳来跳去,活动差点就泡汤了。
最后我们用GPS模块直接从卫星获取时间,终于稳定了。
你看,这个时间同步有时候就得靠运气了。

此外,不同的 Linux 发行版对时间的处理也不同。
当我使用Ubuntu时,我发现timedatectl命令非常有用。
您可以使用一行命令查看所有与时间相关的设置。
但后来我切换到 CentOS,发现我必须使用不同的命令并阅读更多文档。
真让人头疼啊。

但是,归根结底,时间是一个必须准确的东西。
无论是系统维护还是日常使用,如果时间不正确都可能会出现严重的问题。
我有一个朋友,以前在银行工作。
因为服务器时间不对,导致一笔交易出错,他损失了很多钱。
从那时起,他对时间同步产生了病态的痴迷,每天都要检查好几次。

所以,虽然Linux时间同步听起来很复杂,但如果你真的想做好,你就得花点心思。
有时,一个小的设置错误可能会导致大问题。
就像上次开会一样,因为时间不对,演讲时间与别人的时间不符,差点闹出笑话。
你看,这个时候,真是小事一桩,但也能惹出大麻烦。

等等,我突然想到,如果以后有时间旅行的话,时间会不会同步更重要吗? 那时,我们可能必须同步到未来或过去的时间。
这很有趣。