04
mar
2011

Como efetuar downgrade do PHP no Ubuntu para 5.2.x

Hoje estava instalando o novo site da Prefeitura de Diadema no ambiente da mesma porém, a versão do Joomla em que foi desenvolvido não da suporte ao PHP 5.3.x que era o do servidor em questão. Então a solução foi fazer o downgrade do PHP para 5.2.x, mas como fazer isso no Ubuntu?

Seguem os passos

$ php_installed=`dpkg -l | grep php| awk '{print $2}' |tr "\n" " "`

Remove todos os pacotes PHP:

$ sudo aptitude purge $php_installed

Usar karmic para pacotes PHP:

Parâmetros do pin: a (archive), c (components), v (version), o (origin), l (label).

$ echo -e "Package: php5\nPin: release a=karmic\nPin-Priority: 991\n" | sudo tee /etc/apt/preferences.d/php > /dev/null

$ apt-cache search php5-|grep php5-|awk '{print "Package:", $1,"\nPin: release a=karmic\nPin-Priority: 991\n"}'|sudo tee -a /etc/apt/preferences.d/php > /dev/null

$ apt-cache search -n libapache2-mod-php5 |awk '{print "Package:", $1,"\nPin: release a=karmic\nPin-Priority: 991\n"}'| sudo tee -a /etc/apt/preferences.d/php > /dev/null

$ echo -e "Package: php-pear\nPin: release a=karmic\nPin-Priority: 991\n" | sudo tee -a /etc/apt/preferences.d/php > /dev/null

Adicionar Karmic à lista de fontes de repositórios (sources.list):

$ egrep '(main restricted|universe|multiverse)' /etc/apt/sources.list|grep -v "#"| sed s/lucid/karmic/g | sudo tee /etc/apt/sources.list.d/karmic.list > /dev/null

Atualizar o banco de pacotes:

$ sudo apt-get update

Instalar o PHP:

$ sudo apt-get install $php_installed ou $ sudo aptitude install -t karmic php5-cli php5-cgi //para fcgi ou $ sudo apt-get install -t karmic libapache2-mod-php5 //para apache module

$ sudo aptitude hold `dpkg -l | grep php5| awk '{print $2}' |tr "\n" " "`

Pronto!