LINUX.ORG.RU
ФорумAdmin

Куда пропали имена временных зон из вывода date?

 


0

1

Делаем TZ=Europe/Moscow date

Получаем что-то типа:

Чт 01 апр 2021 06:32:21 MSK

Зона MSK указана, всё нормально. Берём другую зону, например

TZ=Asia/Irkutsk date

Получаем

Чт 01 апр 2021 11:36:28 +08

Вместо сокращённого имени зоны IRKT пишется просто +08. Та же фигня для Красноярска (+07 вместо KRAT) и Владивостока (+10 вместо VLAT). Это на генте с последней timezone-data. Как вернуть имена зон?


Ответ на: комментарий от Black_Shadow

А если по нормальному, заменой /etc/localtime?

То же самое.

wandrien ★★
()

RedHat говорит, что это должно было произойти ещё в 2017 году.

https://access.redhat.com/articles/2201831

As of tzdata-2016b, a new approach to providing tzdata time zone abbreviations has been implemented for new time zones. When new zones are created tzdata will now use numeric time zone abbreviations like "+03" rather than the earlier naming convention of inventing new abbreviations like "ASTT".

Additionally, as of tzdata-2017a there has been a policy of removal of zone abbreviations where these abbreviations have no official standing and were invented for convenience.
Toxo2 ★★★★
()
Ответ на: комментарий от JaM

Ну, про MSK/MSD написано такое:

# From Andrey A. Chernov (1996-10-04):
# 'MSK' and 'MSD' were born and used initially on Moscow computers with
# UNIX-like OSes by several developer groups (e.g. Demos group, Kiae group)....
# The next step was the UUCP network, the Relcom predecessor
# (used mainly for mail), and MSK/MSD was actively used there.

По-видимому, они выкидывали то, что сами и присваивали для базы, если были какие-то посторонние источники - оставляли.

alegz ★★★★
()
Ответ на: комментарий от Black_Shadow

Не понял кого «их». Новосибирск от Красноярска? Это никак. А +07 по-моему и выглядит лучше, чем NOVT и KRAT, да и отвечает на вопрос «временная зона» более четче, чем смесь с географией.

Toxo2 ★★★★
()

это прописано в файле зоны

Москва

$ cat /usr/share/zoneinfo/Europe/Moscow
#9#91#w?�
         8@*08@FP *08@*0! 8@8@*0LMTMMTMSTMDSTMSDMSK+05EETEEST
MSK-3

Красноярск

$ cat /usr/share/zoneinfo/Asia/Krasnoyarsk
TZif2

     B
�� 'o���׀�֐�
            �[�h��Y��J��;�|,� l�!\�"K��#;�$+�%&
                                               ð'�0'��0(��@)x�@)��0*ij0+��0,��0-��0.�w0/th00dY01]��2r_�3=f�4RA�5H�62#�6�*�808�
                                             �9�"0:��;�0<�
                                                          0=��0>��0?��0@e�0A��BE�0CcưD%�0EC��Fu0G#��GIl�I�s�J�N�K�U�L�k0M�7�TK� ��WT`pbp
                                                         bp
                                                           pbp
                                                              T`ppbp
                                                                    LMT+06+08+07TZif2

     B
�������� 'o���׀�֐�
                  �[�h��Y��J��;�|,� l�!\�"K��#;�$+�%&
                                                     ð'�0'��0(��@)x�@)��0*ij0+��0,��0-��0.�w0/th00dY01]��2r_�3=f�4RA�5H�62#�6�*�808�
                                                   �9�"0:��;�0<�
                                                                0=��0>��0?��0@e�0A��BE�0CcưD%�0EC��Fu0G#��GIl�I�s�J�N�K�U�L�k0M�7�TK� ��WT`pbp
                                                               bp
                                                                 pbp
                                                                    T`ppbp
                                                                          LMT+06+08+07
<+07>-7
imb ★★
()
Ответ на: комментарий от Toxo2

Не понял кого «их».

Как различать временные зоны в одном часовом поясе.

А +07 по-моему и выглядит лучше, чем NOVT и KRAT, да и отвечает на вопрос «временная зона» более четче, чем смесь с географией.

Вот только UTC+2 в Украине, например, отличается от UTC+2 в Финляндии. И вопрос не в том, где «чётче», а где более информативно.

Black_Shadow ★★★★★
()
Последнее исправление: Black_Shadow (всего исправлений: 1)
Ответ на: комментарий от Black_Shadow

Вот только UTC+2 в Украине, например, отличается от UTC+2 в Финляндии. И вопрос не в том, где «чётче», а где более информативно.

Вам виднее, конечно. По-моему это излишняя информативность для вопроса «часовой пояс?». По крайней мере с точки зрения машины - точно.

Вот будет вопрос «геолокация?», тогда машина будет думать о географии. Мне так кажется, что это вполне логично.

Ради любопытства спросил сейчас у SCO UNIX 1993 года

$ TZ=Asia/Omsk date +%Z
Он мне так и ответил информативно: Asia/Omsk.

Toxo2 ★★★★
()
Последнее исправление: Toxo2 (всего исправлений: 1)
Ответ на: комментарий от Toxo2

Зону, а не смещение надо знать, потому что смещение для зоны величина не постоянная, а может меняться.

P. S. А TZ=Asia/Uryupinsk date +%Z, небось, так же информативно ответит Asia/Uryupinsk?

JaM
() автор топика
Ответ на: комментарий от JaM

небось, так же информативно

Да, это я ерунду у него спрашивал. SCO точно никак иначе не мог ответить.

Сейчас вот под рукой запущена менее древняя Debian 6, спрошу у неё:

$ TZ=Asia/Omsk date +%Z
OMST
$ TZ=Asia/Uryupinsk date +%Z
Asia

Это потому что у неё tzdata 2015g-0+deb6u1.

В любом случае едва ли можно вернуть 2016 год. К счастью, или к сожалению.

Toxo2 ★★★★
()
Ответ на: комментарий от JaM

Дак и имя зоны может менятся, типа MSK (MSD на лето), NOVT (NOVST на лето), и ещё веселее для Екатеринбурга SVET/SVEST->YEKT/YEKST.

mky ★★★★★
()
Ответ на: комментарий от mky

Это да, отдельные имена зон для летнего и зимнего времени тоже мешают.

JaM
() автор топика
Ответ на: комментарий от Toxo2

В любом случае едва ли можно вернуть 2016 год. К счастью, или к сожалению.

Ну, исходники-то доступны, всегда можно сревертить тот коммит и пересобрать базу для себя, если уж сильно охота.

alegz ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.