Автор Тема: Неправильное время по часовому поясу  (Прочитано 2480 раз)

Оффлайн aue

  • Начинающий
  • *
  • Сообщений: 6
Добрый день, возникла проблема с настройкой времени в дистре alt linux server сп 8.
Пред история: при установке дистра указывал часовой пояс Europe/Moscow, но при загрузке ос время показало неправильное, пытался менять через timedatectl set-timezone Europe/Moscow - не помогло . Пришлось поставить вручную через  timedatectl set-time, т.к на тот момент это не имело значения. Все работало прекрасно пока в один момент не возникла проблема с временем в контейнерах. Разные контейнеры docker стали брать разное время - одни UTC , другие local time. О том что проблемы в сборках docker images писать не нужно - эти контейнеры(образы) работают  с нормальным временем на centos 8 и Debian 10.
Суть проблемы - неправильно настроенное время в alt . Сижу уже третий день и не могу понять как настроить правильно время в alt. Пробовал через timedatectl set-timezone - время не изменяет. В /etc/sysconfig/clock - менял параметр UTC с true на false. Пытался сделать синхронизацию через chronyd - сервера в /etc/chronyd.conf указывал разные. Ничего не помогает все равно время показано в UTC с -3 от реального.
Вывод команд и конфигов:
$date
Fri Jul  9 08:34:29 UTC 2021

$timedatectl
Local time: Fri 2021-07-09 08:34:32 Europe
           Universal time: Fri 2021-07-09 08:34:32 UTC
                 RTC time: Fri 2021-07-09 08:34:32
                Time zone: Europe/Moscow (Europe, +0000)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: yes

Warning: The system is configured to read the RTC time in the local time zone.
         This mode cannot be fully supported. It will create various problems
         with time zone changes and daylight saving time adjustments. The RTC
         time is never updated, it relies on external facilities to maintain it.
         If at all possible, use RTC in UTC by calling
         'timedatectl set-local-rtc 0'.
$hwclock
2021-07-09 08:38:52.194942+00:00
$cat /etc/sysconfig/clock
HWCLOCK_SET_TIME_AT_START=true
HWCLOCK_SET_AT_HALT=false
HWCLOCK_ADJUST=false
UTC=false
ZONE=Europe/Moscow
$cat /etc/chrony.conf
pool ntp1.stratum2.ru iburst
driftfile /var/lib/chrony/drift
makestep 1.0 3
rtcsync
logdir /var/log/chrony
Вот вывод с centos с идентичными настройками, где все работает корректно:
Local time: Fri 2021-07-09 11:34:47 MSK
  Universal time: Fri 2021-07-09 08:34:47 UTC
        RTC time: Fri 2021-07-09 11:34:47
       Time zone: Europe/Moscow (MSK, +0300)
     NTP enabled: yes
NTP synchronized: yes
 RTC in local TZ: yes
      DST active: n/a

Warning: The system is configured to read the RTC time in the local time zone.
         This mode can not be fully supported. It will create various problems
         with time zone changes and daylight saving time adjustments. The RTC
         time is never updated, it relies on external facilities to maintain it.
         If at all possible, use RTC in UTC by calling

Время везде отличается на -3 часа от реального. Chrony работает без ошибок , source ip к ntp серверу правильный
Так же можно увидеть что timedatectl показывает Time zone: Europe/Moscow (Europe, +0000), а должен +0300.  ,  так же local time: Fri 2021-07-09 08:34:32 Europe - а должен MSK
Подскажите пожалуйста что я делаю не так, и как настроить нормальную синхронизацию с ntp Europe/Moscow часовым поясом.
« Последнее редактирование: 09.07.2021 12:17:55 от aue »

Оффлайн aue

  • Начинающий
  • *
  • Сообщений: 6
Вывод  /etc/adjtime
$cat /etc/adjtime
0.000000 1625826784 0.000000
1625826784
LOCAL

Оффлайн rits

  • Завсегдатай
  • *
  • Сообщений: 1 041
  • ITS
Вот из моих заметок для симплов:
Смена часового пояса
# mv /etc/localtime  /etc/localtime.bak && ln -sf /usr/share/zoneinfo/Europe/Moscow /etc/localtime
или
# mv /etc/localtime  /etc/localtime.bak && cp /usr/share/zoneinfo/Europe/Moscow /etc/localtime
Некоторые настройки
# nano -b /etc/sysconfig/clock

Оффлайн aue

  • Начинающий
  • *
  • Сообщений: 6
Вот из моих заметок для симплов:
Смена часового пояса
# mv /etc/localtime  /etc/localtime.bak && ln -sf /usr/share/zoneinfo/Europe/Moscow /etc/localtime
или
# mv /etc/localtime  /etc/localtime.bak && cp /usr/share/zoneinfo/Europe/Moscow /etc/localtime
Некоторые настройки
# nano -b /etc/sysconfig/clock

Все это пробовал - безрезультатно.

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 104
Разные контейнеры docker стали брать разное время - одни UTC , другие local time. О том что проблемы в сборках docker images писать не нужно
Почему же не нужно? Или у них своего /etc/localtime нет? Про время в Linux (и ALT в частности) написано тут: https://www.altlinux.org/Синхронизация_времени

Оффлайн aue

  • Начинающий
  • *
  • Сообщений: 6
Разные контейнеры docker стали брать разное время - одни UTC , другие local time. О том что проблемы в сборках docker images писать не нужно
Почему же не нужно? Или у них своего /etc/localtime нет? Про время в Linux (и ALT в частности) написано тут: https://www.altlinux.org/Синхронизация_времени
r
Во-первых в сборках контейнеров явно не прописаны переменные TZ или смонтированы /etc/localtime и прочее ... Я еще раз повторяю эти образы работают на cento7-8 и debian 10 корректно. Проблема только в alt и его времени, которое он передает через kernel в контейнеры.
Во-вторых - еще раз внимательнее прочитайте мой issue, у меня не задается правильное время по часовому поясу через timedatectl set-timezone, так же  не правильное время синхронизации через chronyd. Вопрос исключительно в этом. Установиться правильное время на хосте alt - правильное время получат контейнеры.
За статью спасибо, но я с ней уже знаком - решения моей проблемы там нет!

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 104
Проблема только в alt и его времени, которое он передает через kernel в контейнеры.
ALT передаёт? :-)
Во-вторых - еще раз внимательнее прочитайте мой issue, у меня не задается правильное время по часовому поясу через timedatectl set-timezone
Прочитал. Я не знаю, что такое timedatectl, и, в общем-то, не хочу знать: все эти штуки всего лишь настраивают стандартное, каждую фигню не упомнишь.

Что в хостситеме показывает утилита date? Только это и имеет значение, остальное не интересно от слова совсем. Для случая перезагрузки ещё может быть интересно значение, которое находится в RTC. Всё. Что показывает date, в свою очередь, зависит от синхронизации и значения /etc/localtime.
« Последнее редактирование: 09.07.2021 14:26:57 от asy »

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 104
А, ну про date написано:
$date
Fri Jul  9 08:34:29 UTC 2021
Это в хостсистеме? Ну вот значит в хостсистеме время в UTC. Отсюда и смотрите.

Оффлайн aue

  • Начинающий
  • *
  • Сообщений: 6
Проблема только в alt и его времени, которое он передает через kernel в контейнеры.
ALT передаёт? :-)
Во-вторых - еще раз внимательнее прочитайте мой issue, у меня не задается правильное время по часовому поясу через timedatectl set-timezone
Прочитал. Я не знаю, что такое timedatectl, и, в общем-то, не хочу знать: все эти штуки всего лишь настраивают стандартное, каждую фигню не упомнишь.

Что в хостситеме показывает утилита date? Только это и имеет значение, остальное не интересно от слова совсем. Для случая перезагрузки ещё может быть интересно значение, которое находится в RTC. Всё. Что показывает date, в свою очередь, зависит от синхронизации и значения /etc/localtime.

К сожалению я привык к более автоматизированным дистрам, где это делается одной командой через timedatectl без всяких проблем. Так что прошу прощения за мой непрофессионализм относительно alt`а. 

Оффлайн aue

  • Начинающий
  • *
  • Сообщений: 6
А, ну про date написано:
$date
Fri Jul  9 08:34:29 UTC 2021
Это в хостсистеме? Ну вот значит в хостсистеме время в UTC. Отсюда и смотрите.

Я это и сам прекрасно вижу и понимаю но куда конкретно смотреть ? Я вроде скинул все конфиги, которые подмечены в доке alt, относительно настройки времени. Будут какие то конкретные решения ? Если конкретных решений нет, то прошу не писать с гениальными предложениями, которые я и так подметил в issue.
« Последнее редактирование: 09.07.2021 15:01:58 от aue »

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 104
Я это и сам прекрасно вижу и понимаю но куда конкретно смотреть ? Я вроде скинул все конфиги, которые подмечены в доке alt, относительно настройки времени.
Это всё для настройки того, что показывает date. На этом всё. Остальное смотреть уже в контейнере. Сколько раз надо повторить?
Если конкретных решений нет
Есть: изучайте Linux и как в нём всё усторено.

Единственный нюанс в ALT: это севисы в chroot. Не знаю, может ли это влиять на докер. То есть, некоторые сервисы используют не /etc/localtime, а его копию из своих собственных chroot окружений. Эти окружения обновляются либо при перезагрузке, либо посредством "update_chrooted all".
« Последнее редактирование: 09.07.2021 15:48:38 от asy »

Оффлайн Антон Мидюков

  • alt linux team
  • ***
  • Сообщений: 5 183
  • antohami@
Добрый день, возникла проблема с настройкой времени в дистре alt linux server сп 8.

Обратитесь, пожалуйста, в техническую поддержку. Там быстро решат Вашу проблему. Сертифицированные версии имеют свои нюансы, о которых не знают пользователи форума, которые в основном пользователи несертифицированных версий.

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 104
Сертифицированные версии
Что-то я не заметил, что речь про СП. :-) Хотя, на самом деле, а какая со временем-то разница может быть?

Оффлайн Антон Мидюков

  • alt linux team
  • ***
  • Сообщений: 5 183
  • antohami@
Что-то я не заметил, что речь про СП. :-) Хотя, на самом деле, а какая со временем-то разница может быть?

Не знаю. Но раз СП, то должна быть техподдержка. А там разберутся.

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 19 918
    • Домашняя страница
    • Email
Issue здесь не место. Это не техподдержка и не багтрекер.
Андрей Черепанов (cas@)