我有一台运行 iOS 3.1.3 的 iPod touch(第 2 代)(因为它在 iOS 4 上性能不佳),并且当我将它连接到计算机时,时钟设置本身比实际时间提前一小时不断出现问题。
当我通过 SSH 连接到设备时:
date "+%Z"
回报ARST
是正确的(我在布宜诺斯艾利斯,阿根廷)date "+%z"
结果是-0200
,这是错误的,应该是-0300
我的问题是:如何将时区的偏移量更正为实际值?
我发现提到的zic
,zdump
并引用了“IANA时区数据库”。
我试图找到已编译的文件以替换整个“zoneinfo”文件夹,但我找到的下载似乎使用了与 iPod 上不同的文件夹结构。
编辑:我正在寻找一种编辑或更新时区信息的方法,以便正确配置我的时区“ARST”。我发现了几个对名为zic
.
这两个zic
和zdump
存在的设备,我相信这会导致它可以通过SSH和UNIX命令来完成的。
我在这里找到了解决方案。
但是,tzdata 源已更改其 URI。现在可以在以下网址找到它:ftp : //ftp.iana.org/tz/或http://www.iana.org/time-zones了解更多信息。
在这种情况下,下载更新的 tzdata 文件,
tzdata2012j.tar.gz
并将其解压缩到一个临时文件夹。
通过 SSH 连接到 iPod 并将提取的文件复制到 iPod。我选择User/Downloads
并创建了一个新的(临时)文件夹tzfix
,我将所有内容复制到其中。
之后,使用命令编译它:zic southamerica
,这需要几秒钟。
然后,使用以下命令复制此文件:
cp /usr/share/zoneinfo/America/Argentina/Buenos_Aires /usr/share/zoneinfo/America/Buenos_Aires
测试date "+%z"
并且date "+%Z"
都返回正确的值,现在:-0300
和ART
最后!我可以将时钟设置为正确的时间,而不会出现 Twitter 拒绝登录和 Google Authenticator 抛出错误验证码的情况。
编辑:当时还有另一个单独的数据库需要更新:ICU 数据库。它使用相同的 tzdata 并且需要编译成/usr/share/icu/icudt40l.dat.
这是必要的,以便时钟和日历应用程序显示正确的时间。
归档时间: |
|
查看次数: |
2730 次 |
最近记录: |