Установка PHP 5.2 на Ubuntu 10.04/10.10

Материал из wiki.p3.ru

Операционная система Ubuntu 10.04 и выше содержит в своем репозитории PHP версии 5.3. Что же делать когда требуется версия PHP 5.2. Для этого самый правильный способ - установить репозиторий (PPA txwikinger/php5.2) с нужной версией PHP.

Итак, приступим к четырем несложным действиям выполнив которые вы сможете поменять версию PHP. Если же PHP еще не установлен, то заблаговременно подключите данный репозиторий и установите php5 обычным способом - будет установлен PHP 5.2.10:

Установите репозиторий:

add-apt-repository ppa:txwikinger/php5.2

Или (в случае отсутствия пакета python-software-properties команды add-apt-repository не будет) пропишите (добавьте) в /etc/apt/sources.list

deb http://ppa.launchpad.net/txwikinger/php5.2/ubuntu lucid main 
#deb-src http://ppa.launchpad.net/txwikinger/php5.2/ubuntu lucid main

если у вас Ubuntu 10.10 (а не 10.04), то вместо lucid следует указывать имя maverick

и добавьте PGP-ключ:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 9CC59506

Зафиксируйте версию PHP прописав в файле /etc/apt/preferences.d/php

Package: libapache2-mod-php5
Pin: version 5.2.10*
Pin-Priority: 991

Package: libapache2-mod-php5filter
Pin: version 5.2.10*
Pin-Priority: 991

Package: php-pear
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-cgi
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-cli
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-common
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-curl
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-dbg
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-dev
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-gd
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-gmp
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-ldap
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-mhash
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-mysql
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-odbc
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-pgsql
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-pspell
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-recode
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-snmp
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-sqlite
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-sybase
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-tidy
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-xmlrpc
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-xsl
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-mcrypt
Pin: version 5.2.6*
Pin-Priority: 991

Package: php5-imap
Pin: version 5.2.6*
Pin-Priority: 991

Выполните обновление кэша apt:

apt-get update

Произведите обновление ПО (при этом версия PHP поменяется и изменится с 5.3 на 5.2.10):

apt-get dist-upgrade

На этом установка завершена.

См. также: Решение возможных проблем при установке

Версия PHP по какой-то причине не изменяется (не происходит downgrade версии)

Посмотрите список установленных пакетов

dpkg -l | grep php

запишите список пакетов которые стоят в системе

apt-get remove php5
apt-get install php5

Установите недостающие пакеты.

No usable dialog-like program is installed

Смотрите соответствующую статью Решение_ошибки_в_Ubuntu_10.04_при_установке_пакетов_No_usable_dialog-like_program_is_installed,_so_the_dialog_based_frontend_cannot_be_used

Gnupg does not seem to be installed

Смотрите соответствующую статью Warning: gnupg does not seem to be installed