Поддержка

Мы успешно прошли плановую проверку Роскомнадзора!
05 Май 2012

По результатам проверки нарушений не выявлено.

Наш конкурс: талисманы и приметы Интернет-гуру
17 Апр 2012

Ни одна профессия не обходится без своих суеверий – талисманов и примет. Расскажите нам о своих талисманах и профессиональных приметах и получите настоящий шаманский бубен в качестве приза! Подробности и условия конкурса — в тексте новости.


 

Все новости
RSS RSS

Екатеринбург:

253-55-00

Для регионов России:

8-800-2000-699

Проверить домен:

пример: netangels.ru или 91.201.52.1
Главная > Тех.поддержка > Обзорные статьи > Отмена перевода часов на vds/dedicated

Перевод часов отменяется

Всем известно, что в соответствии с Федеральным Законом 107-ФЗ, в Российской Федерации начиная с лета 2011 года отменяется переход на летнее и зимнее время. Однако, компьютеры об этом указе сами по себе никак не узнают, им нужно об этом сообщить, иначе они, как и положено в соответствии с заложенными в них программами, часы все таки переведут.

Что делать?

Конечно же, все достаточно просто: необходимо поставить обновление операционной системы, в котором учтена отмена перевода часов. Однако не все так просто, если на вашем сервере стоит очень старая ОС, обновления для которой уже не выпускаются. В данной статье мы рассмотрим как произвести обновление информации о временных зонах для серверов, работающих на различных версиях ОС Debian GNU/Linux, установленной на большинстве наших серверов, и VDS/Dedicated серверов наших клиентов.

Как определить версию ОС Debian?

Чтобы определить какая именно у вас на сервере стоит версия ОС Debian, необходимо в консоли сервера выполнить следующую команду:

cat /etc/debian_version

если команда выдаст цифру, начинающуюся с 4 - это Debian Etch, если 5 - это Debian Lenny, 6 - Debian Squeeze.

Обновление tzdata для Debian Lenny и Squeeze

Для Debian Lenny (5.x) и Squeeze (6.x) доступны официальные обновления пакета tzdata, решающие данную проблему. Для их установки достаточно в консоли выполнить следующие команды:

apt-get update
apt-get install tzdata

утвердительно ответив на вопросы системы, если они возникнут. Убедиться, что обновление установлено, можно следующим образом:

apt-cache policy tzdata

в ответ система покажет служебную информацию о данном пакете. Нас интересует строчка «Installed». Если версия установленного пакета - 2011k или более новая, значит система обновлена и перевод часов не случится.

Обновление tzdata для Debian Etch

Для Debian Etch (4.x) официальные обновления более не выпускаются, поэтому придется провести частичный апгрейд системы до Debian Lenny (5.x). Первым делом необходимо проверить текущее состояние файла, описывающего источники пакетов для системы. Мы должны проверить не прописаны ли в нем источники пакетов от Debian Lenny. Для этого выполните команду:

grep lenny /etc/apt/sources.list

Если данная команда вернет пустой результат, необходимо добавить соответствующую строку:

echo "deb ftp://ftp.de.debian.org/debian lenny main" >> /etc/apt/sources.list

если команда grep покажет, что такая строка (или аналогичная ей) в sources.list уже есть, добавлять ее второй раз не требуется.

После успешного выполнения этого этапа необходимо проделать все то же самое, что написано в инструкциях для Lenny/Squeeze (предыдущий раздел). При этом обновление затронет не только пакет tzdata, но и еще ряд системных пакетов. 

Как обычно, если вам покажется данная работа сложной и вы не уверены в своих силах, вы можете обратиться в нашу тех.поддержку и поручить ее нам.

Я все сделал по инструкции, а мой сайт все равно показывает не верную дату!

Увы, но не все программное обеспечение написано одинаково. В частности проблемы возникнут еще с PHP версии 5 и с MySQL. 

В случае MySQL проблема решается просто: достаточно перезапустить MySQL, он перечитает файл с информацией о временной зоне и далее будет работать правильно. Как правило, для рестарта MySQL необходимо выполнить:

/etc/init.d/mysql restart

однако, если у вас запущено несколько MySQL серверов, эта команда перезапустит только основной. 

Вторая проблема, более глобальная, связана с PHP: начная с PHP 5 разработчики PHP решили, что на системную информацию о временной зоне полагаться не стоит и встроили в PHP свою версию базы данных tzdata. Не смотря на то, что у PHP есть ключ сборки --with-system-tzdata, PHP, кроме последних версий, его игнорирует. Нам известно, что PHP 5.3.8 уже обращается с ним правильно, а PHP 5.3.1 еще нет. С какой именно версии 5.3 это исправили, мы не выясняли. Соответственно, мы советуем для PHP 5.1, 5.2 и 5.3 ранее 5.3.8 либо дополнительно собрать PECL расширение timezonedb, либо провести обновление PHP до версии 5.3.8, собранной с опцией --with-system-tzdata.

Поскольку процесс сборки PECL расширений достаточно сложен, а процесс пересборки PHP еще сложнее, мы не можем описать его в рамках данной статьи и предлагаем либо разобраться с проблемой самостоятельно, либо обратиться в тех.поддержку.


Теги:  vds 

Связанные статьи