【问题标题】:Fixing the timezone on Solaris 10修复 Solaris 10 上的时区
【发布时间】:2009-01-13 16:29:46
【问题描述】:

我不知道如何解决这个问题。在我的 /etc/TIMEZONE 文件中,TZ 变量具有正确的值(加拿大/东部),但仍然显示 -1 小时滞后。我还应该去哪里看?

【问题讨论】:

    标签: timezone solaris


    【解决方案1】:

    您应该检查您的硬件时钟是多少。 我建议这样做:

    • 正确设置 UTC 时间。即(示例中为凌晨 5 点):

    $ 日期 -u -s "05:00"

    UTC 时间 2010 年 4 月 29 日星期四上午 5:00:00

    • 相应地设置硬件时钟(SPARC 为 tod,x86 为 rtc):

    $ rtc -c('-c' 参数正确设置夏令时)

    • 再次检查日期:

    $ 日期

    2010 年 4 月 29 日星期四 02:00:11 AM ART

    问候,

    莱安德罗。

    【讨论】:

      【解决方案2】:

      您的机器是否已安装最新补丁? 2007 年北美的 DST 处理发生了变化。在我的 Solaris 10 上,我有:

      -bash-3.00$ ls -l /usr/share/lib/zoneinfo/Canada/Eastern -rw-r--r-- 2 根 bin 1252 2008 年 7 月 14 日 /usr/share/lib/zoneinfo/Canada/Eastern -bash-3.00$ openssl md5 /usr/share/lib/zoneinfo/Canada/Eastern MD5(/usr/share/lib/zoneinfo/Canada/Eastern)= 82980b1345aab5a97d90307edfefb6da

      您是使用 NTP 自动设置时间还是手动设置时间?

      沃尔克

      【讨论】:

        【解决方案3】:

        当您实际登录主机时,您的 shell 会话中设置了哪个时区?

        如果您的 shell 会话中的时区与 /etc/TIMEZONE 不匹配,那么您可能需要重新启动以使时区更改生效。

        如果你的 shell 会话中的时区是正确的,但实际时间是错误的,那么要么系统时钟关闭,要么时区定义文件有误。您可以运行“date -u”来获取UTC时间,这将帮助您确定实际时钟是否错误。

        【讨论】:

          【解决方案4】:

          这是要编辑的正确文件。 唯一需要的其他步骤是重新启动。需要重启的原因是init进程在启动时读取了TZ的值,其他所有进程都继承了这个值。据我所知,如果不完全重新启动,就无法使更改生效。

          另外,请确保 /etc/TIMEZONE 符号链接到 /etc/default/init。例如:

          [root@server:/etc]ls -l /etc/ | grep TIMEZONE

          lrwxrwxrwx 1 root root 14 Jul 7 2008 TIMEZONE -> ./default/init

          【讨论】:

          • 这方面一切都很好,自从我更改了那个文件后,我已经多次重新启动。尽管如此,问题仍然存在。还是谢谢!
          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2010-12-13
          相关资源
          最近更新 更多