Ostatnio stanąłem przed problemem downgradu php5.3 na debianie do wersji 5.2. Było to na tyle skomplikowane, że postanowiłem opisać to na blogu. Problem polega na tym, że część oprogramowania na Debianie Squeeze trzeba zastąpić pakietami z poprzedniej wersji Debiana Lenny. W tym celu należy:
1. W pliku /etc/apt/sources.list dopisać repozytorium Debiana lenny dodając linijkę:
deb http://archive.debian.org/debian/ lenny main contrib non-free
2. W pliku /etc/apt/preferences.d zaznaczyć, które pakiety będą brane z której dystrybucji (często ten plik jest pusty albo w ogóle go nie ma):
Package: libkrb5*
Pin: release a=lenny
Pin-Priority: 700
Package: openssh*
Pin: release a=lenny
Pin-Priority: 700
Package: mysql-server-*
Pin: release a=lenny
Pin-Priority: 700
Package: php5*
Pin: release a=lenny
Pin-Priority: 700
Package: *
Pin: release a=stable
Pin-Priority: 600:x
Jak widać powyżej, żeby zainstalować pakiety php5* z poprzedniej wersji Debiana należy również zainstalować, z wersji lenny, serwer mysql, openssh i libkrb5.
3. Dokonujemy to co zaplanowaliśmy komendą:
aptitude remove pakiet
Czyli po kolei:
aptitude remove mysql-server
aptitude remove openssh
aptitude remove libkrb5
oraz wszystkie pakiety związane z php5:
aptitude remove `dpkg -l | grep php| awk '{print $2}' |tr "\n" " "`
4. Teraz zwykłe odświeżenie listy pakietów:
apt-get update
5. No i sama instalacja:
apt-get -t lenny install `dpkg -l | grep php5| awk '{print $2}' |tr "\n" " "`
6. Podejrzewam, że możecie potrzebować odinstalowanych pakietów. Zwłaszcza serwera ssh i mysql. Proponuję ich instalację:
apt-get -t lenny install openssh
apt-get -t lenny install mysql-server
7. No i możemy sprawdzić czy mamy odpowiednie wersje php:
7.1. dpkg -l | grep php
7.2 php -v
7.3 wyświetlając, w przeglądarce phpinfo
Mam nadzieję, że moje informacje pomogą Ci uporać się z problemem.