Migration de Debian 5 Lenny vers Debian 6 Squeeze

Avant de commencer

La mise à jour vers la Debian 6 Squeeze est très intéressante car elle permet de passer à la version PHP 5.3.x et à MySQL 5.1 par exemple.
Sachant que la version PHP 5.2 contient des fonctions dépréciées avec la version PHP 5.3, validez bien vos codes sources avec la version PHP 5.3 pour éviter d’avoir des erreur de type « Directive ‘eregi’ is deprecated in PHP 5.3 » sur vos serveurs de production.

Pensez à effectuer des sauvegardes ; pour ma part, je vous recommande de copier le contenu de vos sites, de faire un export de votre base de données MySQL et de sauvegarder le dossier /etc.

Le système doit être parfaitement à jour pour éviter les mauvaises surprises, on réalise une mise à jour du système sous Debian 5 Lenny :

 apt-get update
 apt-get upgrade

Une fois que le système est bien mis à jour, nous pouvons continuer.

En route vers Debian 6 Squeeze

Pour commencer la migration, il faut modifier le fichier de sources APT pour lui indiquer de passer du dépôt « lenny » en « squeeze« . Voici mon fichier source pour la Debian 6 Squeeze :

vi /etc/apt/sources.list
deb ftp://mir1.ovh.net/debian/ squeeze main contrib non-free
deb-src ftp://mir1.ovh.net/debian/ squeeze main contrib non-free
deb http://security.debian.org/ squeeze/updates main contrib non-free
deb-src http://security.debian.org/ squeeze/updates main contrib non-free

Pour la prise en compte du fichier, on réalise un update :

apt-get update

La mise à jour commence avec la commande :

apt-get upgrade

Il est possible que pendant la migration, des conflits de configuration de fichier apparaissent, dans ce cas-la, il faut utiliser la touche D qui permettra d’afficher les différences entre la nouvelle version du fichier de configuration et l’ancienne.
N’hésitez pas à conserver vos fichiers de configuration actuels avec la touche N. En effet, si vous faites I pour que le nouveau fichier de configuration s’installe, vous allez devoir reconfigurer votre serveur MySQL ou votre serveur Apache2 par exemple, donc attention au choix qui se présente.

Pour mettre à jour tous les paquets :

apt-get dist-upgrade

Comme précédemment, des choix dans les fichiers de configurations vont vous être proposés. Si vous choisissez de tout installer, vous aurez des fichiers de configurations fournis avec la nouvelle Debian. Attention à bien avoir des sauvegardes des anciens fichiers de configuration pour tout reconfigurer !

Erreurs rencontrées

J’ai rencontré des surprises lors de la mise à jour car j’ai conservé certains fichiers de configuration comme Apache2, suPHP, MySQL, etc. ce qui a pour conséquence d’avoir des paramètres qui ne sont plus forcément supporté et peuvent empêcher le bon fonctionnement.

MySQL 5.1

Ainsi, sous MySQL 5.1, il faut ABSOLUMENT décommenter la ligne « skip-bdb » :

vi /etc/mysql/my.cnf

# * BerkeleyDB
#
# Using BerkeleyDB is now discouraged as its support will cease in 5.1.12.
#skip-bdb

En effet, en la laissant activer, le serveur MySQL ne peut pas démarrer avec la commande « /etc/init.d/mysql start » qui se termine par un « Failed« . Une fois cette ligne commentée, MySQL 5.1 démarre parfaitement.

suPHP 0.7.1

Avec le module suPHP, il est possible que vous obteniez des erreurs de type « Unknown Interpreter: php » avec des erreurs 500 lors de chaque exécution des pages PHP ce qui bloque l’exécution des pages.

En effet, il faut savoir qu’avec la version 0.6.x, le paramètre pour « application/x-httpd-suphp » ne comporte pas de guillemets alors que cela est OBLIGATOIRE pour suPHP 0.7.1.

L’ancien paramètre était :

vi /etc/suphp/suphp.conf

[handlers]
;Handler for php-scripts
application/x-httpd-suphp=php:/usr/bin/php-cgi

Qu’il faut remplacer par :

vi /etc/suphp/suphp.conf
[handlers]
;Handler for php-scripts
application/x-httpd-suphp="php:/usr/bin/php-cgi"

Une fois qu’Apache2 est redémarré avec la commande « /etc/init.d/apache2 restart » vos pages PHP vont s’exécuter à nouveau avec le nouveau module PHP 5.3.3 !

Conclusion

Et voila, vous avez fini la migration vers Debian 6 Squeeze, j’espère que cela s’est bien passé !

Taggé , , .Lien pour marque-pages : Permaliens.

Laisser un commentaire