php 5.2 на debian squeeze - установка php предыдущей версии
Установка php 5.3 в debian squeeze теперь не проблема. Достаточно набрать
apt-get update && apt-get install php5
Однако, многие сайты, сделанные ранее (работающие проекты на php 5.2) в php 5.3 выдают ошибки-предупреждения (deprecated), а иногда “ну совсем” не работают.
Deprecated: Function eregi() is deprecated in /home/www/php-site.ru/public_html/include/functions.php on line 152
Итак, как же установить (эм.. почти как апгрейд, только наоборот - downgrade) PHP 5.2 на debian squeeze
Посмотрим, что же в - если система “свежая” - там скорее всего только 2 строки для текущего релиза
vi /etc/apt/sources.list
Статья обновлена, т.к. lenny перемещен в архив
deb http://archive.debian.org/debian lenny main contrib non-free
Добавим туда репозитарий для debian lenny
deb http://ftp.ro.debian.org/debian/ lenny main contrib non-free
Для всех пакетов, начинающихся с php5 зададим приоритетным репозитарий предыдущей версии:
vi /etc/apt/preferences
Package: php5*
Pin: release a=oldstable
Pin-Priority: 700
Package: *
Pin: release a=stable
Pin-Priority: 600
Если php5.3 был ранее установлен - его следует удалить.. Проверить это можно командой:
dpkg -l |grep php5
Если вывод похож на следующий - удаляем
ii libapache2-mod-php5 5.3.3-7+squeeze8 server-side, HTML-embedded scripting language (Apache 2 module)
ii php5 5.3.3-7+squeeze8 server-side, HTML-embedded scripting language (metapackage)
ii php5-cli 5.3.3-7+squeeze8 command-line interpreter for the php5 scripting language
ii php5-common 5.3.3-7+squeeze8 Common files for packages built from the php5 source
ii php5-gd 5.3.3-7+squeeze8 GD module for php5
ii php5-mcrypt 5.3.3-7+squeeze8 MCrypt module for php5
ii php5-mysql 5.3.3-7+squeeze8 MySQL module for php5
ii php5-suhosin 0.9.32.1-1 advanced protection module for php5
Для удаления уже установленных пакетов, содержащих php
aptitude remove `dpkg -l | grep php| awk '{print $2}' |tr "\n" " "`
Обновим информацию о пакетах
apt-get update
И установим php5.2 на squeeze из предыдущего репозитария
apt-get -t oldstable install `dpkg -l | grep php5| awk '{print $2}' |tr "\n" " "`
Да.. при попытке установить PHP 5.2 система выдала ошибку
libapache2-mod-php5 : Depends: libkrb53 (>= 1.6.dfsg.2) but it is not going to be installed
, поэтому устанавливаем отдельно пакет libkrb53
apt-get install libkrb53
После чего установка PHP 5.2 проходит без ошибок: команда
dpkg -l | grep php5
должна вывести примерно следующее:
ii libapache2-mod-php5 5.2.6.dfsg.1-1+lenny13 server-side, HTML-embedded scripting language (Apache 2 module)
ii php5-cli 5.2.6.dfsg.1-1+lenny13 command-line interpreter for the php5 scripting language
ii php5-common 5.2.6.dfsg.1-1+lenny13 Common files for packages built from the php5 source
ii php5-gd 5.2.6.dfsg.1-1+lenny13 GD module for php5
ii php5-mcrypt 5.2.6.dfsg.1-1+lenny13 MCrypt module for php5
ii php5-mysql 5.2.6.dfsg.1-1+lenny13 MySQL module for php5
ii php5-suhosin 0.9.27-1 advanced protection module for php5
Тут есть полезная иформация по теме:
http://unix4me.ru/archives/991
Дополнение для Debian Wheezy (debian 7)
немногим отличается от установки на Debian 6
В /etc/apt/preferences указываем lenny
Package: php5*
Pin: release a=lenny
Pin-Priority: 700
Package: *
Pin: release a=stable
Pin-Priority: 600
В sources.list
# lenny for php52
deb http://archive.debian.org/debian/ lenny main contrib non-free
deb-src http://archive.debian.org/debian/ lenny main contrib non-free
Удаляем все пакеты с PHP
aptitude remove ~iphp
И устанавливаем из lenny репозитория
apt-get -t lenny install libkrb53
apt-get -t lenny install `dpkg -l | grep php5| awk '{print $2}' |tr "\n" " "`
В итоге получаем свежеустановленный php5.2 на Debian Wheezy
apt-get purge ‘php5*’
Для установки конкретной версии ПО указываем через знак равенства после названия пакета саму версию
apt-get install postgresql-common=151.pgdg12.4+1
не подходит ваш способ, получаю ошибку аутентификации!
WARNING: The following packages cannot be authenticated!
libapache2-mod-php5 php5-common php5-curl php5-gd php5-mcrypt php5-mysql
php5-cli php5-mhash php5-xsl php5-imap php5-xmlrpc php5-sqlite