Исправление часового пояса в Solaris 10 - PullRequest
1 голос
/ 13 января 2009

Понятия не имею, как это исправить. В моем файле / etc / TIMEZONE переменная TZ имеет правильное значение (Канада / Восточная), и все равно она показывает отставание -1 час. Где еще мне искать?

Ответы [ 4 ]

3 голосов
/ 29 апреля 2010

Вы должны проверить, какие у вас аппаратные часы. Я бы предложил сделать это:

  • Установите время UTC правильно. т.е. (5 часов утра в примере):

$ date -u -s "05:00"

Четверг, 29 апреля 2010 г., 05:00:00 UTC

  • Установите аппаратные часы соответственно (tod для SPARC и rtc для x86):

$ rtc -c (аргумент '-c' правильно устанавливает DST)

  • Проверьте дату еще раз:

$ дата

Четверг, 29 апреля 2010 г. 02:00:11 ИСКУССТВО

С уважением,

Леандро.

1 голос
/ 10 февраля 2009

Ваша машина обновлена? В 2007 году произошли изменения в обработке DST для Северной Америки. На моем Solaris 10 у меня есть:

-bash-3.00 $ ls -l / usr / share / lib / zoneinfo / Канада / Восточная -rw-r - r-- 2 root bin 1252 14 июля 2008 г. / usr / share / lib / zoneinfo / Канада / Восточная -bash-3.00 $ openssl md5 / usr / share / lib / zoneinfo / Канада / Восточная MD5 (/ usr / share / lib / zoneinfo / Canada / Eastern) = 82980b1345aab5a97d90307edfefb6da

Используете ли вы NTP для автоматической установки времени или вручную?

Volker

1 голос
/ 22 февраля 2009

Когда вы фактически входите в хост, какой часовой пояс устанавливается в вашей сессии оболочки?

Если часовой пояс в сеансе оболочки не совпадает с / etc / TIMEZONE, то вам, вероятно, необходимо перезагрузиться, чтобы изменение часового пояса вступило в силу.

Если часовой пояс в вашем сеансе оболочки правильный, но фактическое время неверное, то либо системные часы выключены, либо файл определения часового пояса как-то не так. Вы можете запустить «date -u», чтобы получить время по Гринвичу, которое поможет вам выяснить, неверны ли фактические часы.

0 голосов
/ 13 января 2009

Это правильный файл для редактирования. Единственный другой необходимый шаг - перезагрузка . Причина, по которой требуется перезагрузка, заключается в том, что процесс 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

...