---
title: "互联网掌管时间的神"
description: "讲述义务维护时区数据库 tz database 三十多年的 Paul Eggert 的故事：全球几十亿设备的时间依赖这个无偿的爱好项目，也揭示时区是政治决定而非自然规律。"
date: 2026-07-27T04:00:00Z
canonical: https://xiaobox.github.io/p/2026-07-27-hu-lian-wang-zhang-guan-shi-jian-de-shen/
author: 小盒子
categories: ["数据库"]
tags: ["Java", "Python", "PostgreSQL", "MongoDB", "Linux", "macOS", "网络"]
license: CC BY-NC-SA 4.0
license_url: https://creativecommons.org/licenses/by-nc-sa/4.0/
---

# 互联网掌管时间的神

你有多久没有手动设过手机上的时间了？

想想看，可能从来没有。

开机，时间就是对的。发微信，时间戳是准的。订火车票，手机与 12306 上的时间一致。

我们手机上的时间，一直都是对的。我们好像从来没怀疑过这件事。

但你有没有想过，是谁在保证这件事？不是某个自动化系统，不是 Google，不是联合国。

是一个大鼻子老头。

![](https://xiaobox-public-images.oss-cn-beijing.aliyuncs.com/images/20260727155214969.png)

他叫 Paul Eggert，加州大学洛杉矶分校的计算机科学讲师。他维护着一个叫 tz database 的东西。你的 iPhone，你的安卓，你的 Mac，你的 Linux 服务器，Java，Python，Go，PostgreSQL，MongoDB，全都在用他的数据。

几十亿台设备。

而他做这件事不拿工资，业余时间做的。他自己的原话，「这就是个爱好，跟集邮差不多。」


这个数据库最早是 1986 年，一个叫 Arthur David Olson 的人在美国国立卫生研究院开始做的。干的事听起来也简单，就是把全世界每个地方的时区规则记下来，谁跟格林尼治差几个小时，谁几月几号切夏令时。

这个数据库有一个文件叫 zone.tab，记着全世界所有的时区。一行一个，前面是国家代码和经纬度坐标，后面是时区的名字。
 
咱们国家的那两行长这样，
 
```
CN  +3114+12128  Asia/Shanghai   Beijing Time
CN  +4348+08735  Asia/Urumqi     Xinjiang Time
```

你可能注意到了，北京时间，写的不是 Asia/Beijing。
 
是 Asia/Shanghai。
 
这不是写错了。tz 数据库有一条命名规则，时区名字不用首都，用这个区域里最大的城市。理由很实际，首都会搬，国家会分裂合并，但大城市比政治边界稳定得多。上海是东八区人口最多的城市，所以全世界几十亿台设备上，你的「北京时间」其实叫「上海时间」。
 
你可能还注意到另一件事。中国这么大，东西横跨五千多公里，按经度算差不多能分五个时区。但 zone.tab 里就两行。生活中更简单，全国只用一个北京时间。
 
1949 年之前，中国确实划过五个时区。统一之后全走东八区。新疆的太阳比北京晚两个小时才升起来，但钟上的数字是一样的。上午十点上班，晚上八九点天还亮着。
 
zone.tab 里那行 Asia/Urumqi，就是给这个现实留的一行注脚。
 
光是这么一张表，就能读出这么多故事。你大概能感觉到，时区这件事远比想象中复杂。
 
它不是自然规律，是政治决定。

约旦政府曾经没打任何招呼，突然把夏令时提前了一个月。非洲有些国家改时区只给四天通知。萨摩亚为了跟澳大利亚做生意方便，2011 年直接跳过了 12 月 30 号这一天，29 号过完，醒来就是 31 号。

还有更荒诞的。阿塞拜疆和亚美尼亚有领土争端，有人发现数据库里阿塞拜疆的时区名字被归到了「Asia/Yerevan」，亚美尼亚首都的名字下面。

这一下就炸了。

Eggert 说过一句话，「有时候我觉得，各国政府就是在存心证明我们是错的。」

![](https://xiaobox-public-images.oss-cn-beijing.aliyuncs.com/images/20260727160116154.png)

1991 年，Eggert 还在一家叫 Twin Sun 的小公司工作，需要给远东的电脑同步时间，偶然发现了 Olson 的这个数据库。他就这么加入了维护，一做就是三十多年。2005 年成了主编辑。

然后 2011 年 9 月，一件很离谱的事发生了。

一家做占星软件的公司 Astrolabe，把他和 Olson 告上了法庭。说数据库引用了他们一本占星地图册的历史时区数据，侵犯版权。

一家占星公司，告的是全世界互联网时间的维护者。

10 月 6 号，Olson 关掉了托管数据库的服务器。

那几天，全球几十亿台设备的时间更新来源，断了。

好在电子前沿基金会 EFF 出手辩护。10 月 14 号 ICANN 宣布接管这个数据库，把它纳入了互联网号码分配机构 IANA 的体系。2012 年 2 月 Astrolabe 撤诉，还签了承诺书保证不再起诉。

但 Eggert 还是那个 Eggert。

IANA 给了他一个官方头衔，TZ Coordinator。他还是在 UCLA 教书，还是业余时间维护，还是不拿一分钱。

他说，「我不是为了出名才做这个的。我现在也不觉得自己出名了。」

这种故事屡见不鲜。互联网能走到今天，不是因为某个商业计划。是因为有一群人，在没有人付钱的情况下，默默撑着这个世界运转的基础设施。

写 UTF-8 编码的 Ken Thompson，是在一家餐馆的餐巾纸上画出来的方案。写出万维网协议的 Tim Berners-Lee，没有为 HTTP 申请过专利。维护了 tz 数据库三十多年的 Paul Eggert，觉得这事跟集邮差不多。

xkcd 有一幅很出名的漫画叫「Dependency」。画的是一座巨大的现代数字基础设施，层层叠叠，而整栋楼压在最底下一根细细的柱子上。旁边写着，一个不知名的普通人无偿维护的项目。

![](https://xiaobox-public-images.oss-cn-beijing.aliyuncs.com/images/20260727160533908.png)

---

Eggert 来自堪萨斯州 Russell，一个很小很小的地方。

人类群星闪耀时，我们记住了登上火箭的人，记住了敲钟上市的人。但真正托住这个数字世界的，是那些你永远不会知道名字的人。他们写了你每天在用的代码，定义了你手机上的时间，修好了你看不见的 bug。然后转头去教书，去遛狗，继续做一个普通人。

你手机上的时间，现在是对的。

因为有人，一直在管。

