我注意到,俄罗斯时区不是最新的。 GMT 偏移现在设置为 +3 小时,而当前 GMT 偏移为 +4 小时。有人可以告诉我如何手动编辑 tzdata 文件以将其设置为最新吗?
答案1
时区数据驻留在 中/usr/share/zoneinfo
,但格式是二进制的并且难以编辑。您可以尝试安装当前版本的tzinfo数据库。
答案2
您应该为您的发行版执行所有更新。每个操作系统都会重新包装协作区信息数据库,并且他们通常会在法律发生变化时推送更新。
如果您的发行版没有更新,您无法编辑已安装的文件,但您可以重新编译此文件。下载最新的存档,提取适合您时区的文件,然后运行zic
(如果您的时区是Europe/Moscow
,从您的描述来看是这样的):
mkdir tmp
cd tmp
tar xzf tzdata2011n.tar.gz europe
zic -d . europe # or /usr/sbin/zic if zic isn't in your $PATH
将文件复制或链接Europe/Moscow
为/etc/localtime
.对于使用 GNU libc 的程序(即非嵌入式 Linux 系统上的几乎所有程序),这就是您需要做的全部。对于Java程序来说,这还不够;看在 Ubuntu 上调试用于更改时区配置文件的 Java 程序。您最好的选择是将新版本复制Europe/Moscow
到/usr/share/zoneinfo
.