Как известно, полтора месяца назад (в феврале) закончилась поддержка 5-го Дебиана и он официально канул в лету, т.е. в архив archive.debian.org.
Что делать дальше? — Задумались многие хостеры. Ведь перейти на 6-ой Дебиан не так уж и просто в связи с несколькими факторами:
1) Его не поддерживают некоторые панели управления (как минимум, ISP Manager имеет свои странности, хотя разработчики и локализовали почти все проблемы)
2) Из коробки доступен PHP 5.3 вместо уже привычного нам 5.2, а это чревато тем, что перестанет работать много сайтов. Одним из самых неприятных моментов является отсутствие функции ereg, которая используется огромным количеством народа в скриптах, в неофициальных модулях к популярным CMS (свежие версии самих CMS уже совместимы с ним).
Но никто не стоит на месте, а тем более не смотрит назад, и в любом случае переходить на 6-ой нужно, поэтому приступим.
Для начала давайте разберем сам переход. В принципе, он произошёл без неожиданностей. Опишу:
1) Добавляем в /etc/sources.list необходимые репозитории:
# Squeeze
deb http://security.debian.org squeeze/updates main contrib non-free
deb http://ftp.ru.debian.org/debian/ squeeze main non-free contrib
deb ftp://ftp.debian-multimedia.org squeeze main non-free
2) Обновляем списки пакетов командой:
# apt-get update
3) Обновляем саму операционную систему:
# apt-get dist-upgrade
Лично у меня всё прошло гладко, но, как пишут в интернете, может мешать некий пакет splashy, на всякий случай удалите и его перед установкой.
# apt-getpurgesplashy
Всё, перезагружаемся и наслаждаемся (будем надеяться) свежей версией дебиана.
Следующий шаг, о котором я говорил выше – это PHP 5.2.
Приступим. Способ, в принципе, тривиален.
1) Необходимо удалить PHP5. Если он установлен (при апгрейде, полагаю, он у всех обновился):
#aptitude remove `dpkg -l | grepphp| awk '{print $2}' |tr "n" " "`
2) Открываем наш:
sources.list
# vi /etc/apt/sources.list
Добавлем репозиторий от lenny deb:
http://archive.debian.org/debian/ lenny main contrib non-free
и закрываем.
3) Далее необходимо расставить приоритеты работы службы apt. Открываем:
# vi /etc/apt/preferences
И прописываем туда следующее:
Package: php5*
Pin: release a=oldstable
Pin-Priority: 700
Package: *
Pin: release a=stable
Pin-Priority: 600
4) Устанавливаем php:
# apt-get update
# apt-get -t oldstable install `dpkg -l | grep php5| awk '{print $2}' |tr "n" " "`
Возможно, на этом этапе вылезут зависимости, но их можно очень легко исправить, доустановив необходимое.
5) Проверяем версию и перезагружаем апач:
# dpkg -l | grep php5
# /etc/init.d/apache2 restart
На этом установка окончена.
Данный способ был опробован на сервере с ISPManager и DebianLenny 5 – всё прекрасно завелось.
Если планируется устанавливать сервер «с нуля», то при установке php, в принципе, пропадает только один шаг – удаление старой версии. А так всё сохраняется.
Будем надеяться, что данная статья поможет Вам!
Автор: Роман Малиновский, руководитель службы технической поддержки хостинг-проекта Unlimits Telecom.
Оригинал статьи на английском, опубликованной на slashdot.org
Автор: iseck