Whois-сервисы

Служба Whois
Служба Whats
Служба Hoster
Служба Whois History
Служба IP Lookup
Служба GEO IP Lookup
Служба DNSBL Lookup
Служба DNS Watch
Служба Reverse IP






Обновление базы часовых поясов на Linux. Статьи. wb0.ru - Все для веб-мастера, on-line сервисы

Обновление базы часовых поясов на Linux

Иногда схема переходов на летнее/зимнее время меняется. База данных поставляется в виде пакета tzdata.noarch. Если на сервере установлена актуальная версия ОС, можно обновить этот пакет средствами установленного пакетного менеджера:

CentOS:

yum update tzdata
service httpd restart

Debian:

apt-get upgrade tzdata
/etc/init.d/apache2 restart

Если на сервере устаревшая версия ОС, обновить базу данных часовых поясов можно вручную.

Скачаем последнюю версию tzdata с сайта IANA http://www.iana.org/time-zones:

mkdir -p /usr/local/src/tzdata
cd /usr/local/src/tzdata
wget http://www.iana.org/time-zones/repository/releases/tzcode2011i.tar.gz

Распакуем его:

tar xzf tzcode2011i.tar.gz
rm tzcode2011i.tar.gz

И обновим базу данных, например, европы:

zic europe

Остается сделать симлинк файла нужного пояса в /etc/localtime:

cp -sf /usr/share/zoneinfo/Europe/Moscow /etc/localtime

И перезапустить все зависимые сервисы или сервер целиком:

Сервисы: for SERVICE in `chkconfig -list | grep 3:on | awk {'print $1'}`; do service $SERVICE restart; done
Сервер: shutdown -r -t 0 now

Обновление часового пояса для PHP

У PHP своя, встроенная база часовых поясов, которую тоже нужно обновить.

Если в системе есть PECL, то делаем так:

pecl install timezonedb

Установленный в системе PECL - скорее исключение, чем правило. Если PECL отсутствует:

  1. Выясняем, куда установлен PHP:

    find / -type f -name php 2>/dev/null
    /usr/local/zend/bin/php

    В нашем случае PHP был установлен в префикс /usr/local/zend/ (это была хостинговая среда на базе чужих конфигов, но с похожей структурой, так будет даже нагляднее).

  2. Получаем пакет timezonedb с сайта PECL http://pecl.php.net/package/timezonedb:

    cd /usr/local/src
    wget http://pecl.php.net/get/timezonedb-2011.14.tgz
    tar xzf timezonedb-2011.14.tgz
    cd timezonedb-2011.14

  3. Генерируем конфигурационный скрипт и собираем модуль:

    /usr/local/zend/bin/phpize
    ./configure -with-php-config=/usr/local/zend/bin/php-config
    make
    make install

    Команда make install автоматически скопирует его в каталог с расширениями php.

  4. Прописываем модуль в конфигурационный файл PHP:

    echo 'extension = timezonedb.so' > /usr/local/zend/etc/php.ini

  5. Перезапускаем PHP-зависимые сервисы, в нашем случае они управляются одним init-скриптом:

    /etc/init.d/zend-server restart

Для проверки можно посмотреть в графу "Olson" Timezone Database Version в phpinfo:

/usr/local/zend/bin/php -i | grep Olson

"Olson" Timezone Database Version ? 2011.14

Номер версии должен совпасть с номером версии установленного нами пакета timezonedb:

ll /usr/local/src/timezone*tgz

-rw-r-r- 1 root root 193528 Nov 2 15:00 /usr/local/src/timezonedb-2011.14.tgz

Дата публикации: 22.11.2011
wifix.ru

Статьи по теме:

   Ваш псевдоним:
Ваш комментарий:

Календарь событий


Новости Интернет


Поиск





Последний пересчет

тИЦ:07 Окт 15
PR:09 Дек 13

Наши партнеры

wservices.ru - регистрация доменов, Whois-сервисы Смайлы на все случаи жизни


 
Copyright © 2006-2026, wb0.ru