Ubuntu 10.04, PHP 5.3 et Dotclear
Comme je l’ai dit dans un billet légèrement plus vieux, j’ai changé de serveur dédié. Le nouveau serveur tourne donc avec Ubuntu 10.04 Lucid Lynx (version serveur). Cette release offre dans ses dépôts la version 5.3 de PHP. Cependant, cette dernière ne fait pas bon ménage avec Dotclear 2.1.7 (chose qui devrait être rectifiée avec la 2.2). Dans cet article, on va donc voir comment downgrader à la version 5.2 de PHP. Attention, pour effectuer les manipulations qui vont suivre il faudra posséder les droits d’administration, passez votre chemin si vous n’êtes pas sûr de vous !
1. Un peu de nettoyage
Avant d’installer la version 5.2 de PHP, on va faire un peu de ménage. On commence par arrêter le serveur web.~$ sudo /etc/init.d/apache2 stop
Maintenant, on regarde les paquets liés à PHP qui sont installés.
~$ dpkg -l | grep php5
Dans mon cas, ça me donne tout ça.
ii libapache2-mod-php5 5.3.2-1ubuntu4.2 ...
ii php5-cli 5.3.2-1ubuntu4.2 ...
ii php5-common 5.3.2-1ubuntu4.2 ...
ii php5-gd 5.3.2-1ubuntu4.2 ...
ii php5-mcrypt 5.3.2-0ubuntu1 ...
ii php5-mysql 5.3.2-1ubuntu4.2 ...
Pour être sûr que l’on va installer la version 5.2, on va désinstaller les paquets précédemment listés.
~$ PHP_PKG=$(for i in $(dpkg -l | grep php5 | awk '{ print $2 }' ); do echo $i; done)
~$ sudo aptitude purge $PHP_PKG
2. Le koala à notre secours
La version de PHP qu’il nous faut se trouve dans les dépôts d’Ubuntu 9.10 Karmic Koala. On va donc s’en servir pour résoudre notre problème. On édite alors la liste des dépôts utilisés par APT.~$ sudo vim /etc/apt/sources.list.d/karmic.list
Dans le fichier créé, on met les 2 lignes suivantes. On pourrait en mettre plus mais dans mon cas, c’est suffisant.
deb http://fr.archive.ubuntu.com/ubuntu/ karmic main restricted
deb http://fr.archive.ubuntu.com/ubuntu/ karmic universe multiverse
Et maintenant, on précise quels paquets installer depuis les dépôts de Karmic.
~$ touch /etc/apt/preferences.d/php5
~$ for i in $PHP_PKG; do echo "Package: $i
> Pin: release a=karmic
> Pin-Priority: 1001
> " >> /etc/apt/preferences.d/php5; done
On met à jour la liste des paquets disponibles, puis on installe la bonne versions des paquets pour PHP.
~$ sudo aptitude update
~$ sudo aptitude -t karmic install $PHP_PKG
Ici, normalement, on a les paquets qui vont bien et on peut donc relancer le serveur web.
~$ sudo /etc/init.d/apache2 start
Avant de crier victoire, on va verrouiller les paquets précédemment installés pour qu’ils ne soient pas mis à jour vers la version 5.3 en faisant une mise à jour du système plus tard.
~$ sudo aptitude hold $PHP_PKG