Перевод часов в Ubuntu Server / Desktop

В воскресенье утром обнаружил, что почему-то техника показывает разное время. На одних часах время ушло на час назад, на других нет. Пытался даже позвонить в службу точного времени (+7(495) 100) но там было занято, а механических часов дома давно уж нет 🙂Потом у друзей узнал время, и понял в чём засада. Некоторые железки так и не обновили софт, и поэтому радостно перевели время на час назад. И тут я вспомнил про сервера. На них время тоже перевелось. Дальше напишу, как можно быстро вернуть всё на своё место на серверах/компах на базе Ubuntu.

Как вернуть время на Ubuntu

Если пакет tzdata у вас уже установлен, то он обновится. Пакет содержит данные о часовых поясах всего мира и правилах перехода на летнее/зимнее время. Он периодически обновляется, чтобы отразить изменения, принимаемые в различных странах. Вот как раз такое обновление нам и нужно подцепить. На одном из моих серверов потребовалась коррекция времени с помощью команды

Настрйока tzdata
Настройка времени tzdata в Ubuntu

 

После этого можно проверить время командой date.

Вот как менялась зона у меня:

 

Корректировка времени на форуме IPB

Если в вашем распоряжении есть форум на базе Invision Power Board, знайте – он может не подцепить системное время. В этом случае его надо откорректировать тут:
Настройки и инструменты > Системные настройки > Система > Формат чисел, времени и дат

Корректировка времени в IPB (Invision Power Board)
Корректировка времени в IPB (Invision Power Board)

Отменяем автоперевод времени и ставим корректировку в +60 минут.

Удачного дня, не теряйте время 🙂

6 Comments

  1. Добрый день.
    Возможно кому-то будет полезно ещё вот это, у меня, например, на одном из серверов даже после обновления tzdata PHP продолжал выдавать неправильное время в функциях date() и т.д. Это было связано с тем, что устарела внутренняя база часовых поясов. Обновить её можно, например, так:
    pecl install timezonedb;
    После этого, возможно, нужно будет прописать в php.ini расширение timezonedb.so (extention=timezonedb.so) и перезапустить PHP (либо php-fpm, либо апач или другой сервер, который у вас обслуживает PHP запросы).
    P.S. Спасибо вам за интересный блог. 🙂

  2. БСД переводится так:
    Получаем базу:
    fetch ftp://munnari.oz.au/pub/tzdata2011n.tar.gz

    Распаковываем архив во временную папку:
    mkdir tzdata && cd tzdata
    tar xzf ../tzdata2011m.tar.gz

    Компилируем данные для Европы и Азии:
    zic europe asia

    Результат компиляции сразу записывается в папку назначения: /usr/share/zoneinfo. Проверяем, что файлы имеют текущую дату:

    ls -l /usr/share/zoneinfo/Europe
    ls -l /usr/share/zoneinfo/Asia

    Установка часового пояса

    Можно выбрать часовой пояс с помощью установочного меню:

    tzsetup

    Либо скопировать файл нужного пояса вручную, предварительно зарезервировав старый:

    mv /etc/localtime /etc/localtime.old
    cp /usr/share/zoneinfo/Asia/Yekaterinburg /etc/localtime

  3. Сегодня выяснилось, что и роутеры перевели часы 🙂

  4. А кто-нибудь знает где находится сам файл правки формы в IPB-допустим форма select-слишком широкая и ее нужно сделать уже. Вся инфа о Часовых Поясах находиться в базе, а вот где верстка которая определяет ширину и кол-во вывода поясов+ссылка на “остальные ЧП”?

Leave a Reply to Андрей Токарчук Cancel reply