Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/wp-content/plugins/portfolio-slideshow/portfolio-slideshow.php:65) in /var/www/html/wp-includes/feed-rss2.php on line 8
Lenny – Les mémos d'un admin système https://blog-sysadmin.archives.slashroot.fr Sat, 29 Jul 2017 07:31:37 +0000 fr-FR hourly 1 https://wordpress.org/?v=4.8.23 [Debian] Mise à niveau : Lenny – Squeeze https://blog-sysadmin.archives.slashroot.fr/?p=26 https://blog-sysadmin.archives.slashroot.fr/?p=26#comments Thu, 17 Nov 2011 15:29:06 +0000 http://blog.slashroot.fr/?p=26 Ce post a pour but de décrire la mise à niveau d’une Debian Lenny 5.0.9 (i386) hébergée par un ESXi 4.1 vers la version 6.0.3 Squeeze. Cette procédure devrait également être valable pour les machines physiques.

J’ai essayé de faire un mix entre la release note de Debian (http://www.debian.org/releases/stable/i386/release-notes/ch-upgrading.fr.html#ftn.id530496) qui est très (trop ?) complète et ce qu’on peut trouver sur certains blogs.

Cette procédure a été testée sur un serveur hébergeant OCS/GLPI et sera bientôt testée sur un serveur mail et un serveur Web.

1 – Préparation

Mise à jour du système :

apt-get update && apt-get upgrade

Test de l’état des paquets installés :

dpkg –audit

Si des paquets sont dans l’état « Half-Installed », « Failed-Config » ou en erreur, il faut les réparer avant de poursuivre la mise à niveau.

On prend un snapshot avant d’aller plus loin afin de pouvoir revenir en arrière si nécessaire ainsi que diverses sauvegardes (base de données, fichiers de conf, etc.) si vous voulez être sur.

On met à jour les sources en gardant une copie au cas où :

cp /etc/apt/sources.list /etc/apt/sources.list-lennysed -i 's/lenny/squeeze/g' /etc/apt/sources.list

Dans le cas de l’usage des dépôts volatiles il faut savoir qu’ils ont changé sur Squeeze ce qui implique de modifier les sources :

sed -i -e 's| squeeze/volatile | squeeze-updates |' -e 's|/volatile|/ftp.fr|' -e 's|/debian-volatile|/debian/|' /etc/apt/sources.list

La préparation du système est maintenant terminée, nous pouvons commencer la mise à niveau.

2 – Mise à niveau minimale

Comme préconisé par l’équipe Debian, la mise à niveau se fera en deux temps, à savoir en premier lieu une mise à niveau minimale suivie d’une mise à niveau complète afin de limiter au maximum les problèmes et les conflits.

C’est parti :

apt-get update && apt-get upgrade

Cette commande met à niveau les paquets qui peuvent l’être sans entraîner l’installation ou la suppression d’autres paquets. Il est possible que vous ayez à répondre à quelques questions concernant le changement de configuration de certains paquets. Quand on vous demandera si des fichiers doivent être remplacés par la version du responsable du paquet, il est généralement nécessaire de répondre « oui » pour assurer la cohérence du système. Vous pouvez toujours revenir aux versions précédentes, puisqu’elles sont sauvegardées avec une extension .dpkg-old.

Mise à niveau du noyau et d’udev (afin de minimiser le risque d’incompatibilité entre le vieux udev et le nouveau noyau) :

uname -r
2.6.26-2-686
apt-get install linux-image-2.6-686
apt-get install udev

(Remplacer 686 par votre variante si différente)

Un petit redémarrage s’impose avant d’attaquer la mise à niveau complète.

reboot

3 – Mise à niveau complète

Mise à niveau complète et nettoyage des paquets utilisés :

apt-get update && apt-get dist-upgrade && apt-get clean

Pendant la mise à niveau, la question de l’utilisation en chaîne (« chainload ») de GRUB 2 vous sera posée, c’est-à-dire de garder GRUB Legacy comme programme d’amorçage, avec une entrée pour charger GRUB 2 qui s’occupera de démarrer le système. Ceci vous permet de vérifier que GRUB 2 marche sur le système avant de l’utiliser de manière exclusive.

On redémarre la machine :

reboot

Vous devriez maintenant disposer d’une Debian sous Squeeze et tout devrait être en ordre.

4 – Vérifications

On devrait donc maintenant être en version Squeeze 6.X.X (ce depuis la mise à niveau minimale à vrai dire) et les VMWares Tools devraient être fonctionnels.

lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 6.0.3 (squeeze)
Release: 6.0.3
Codename: squeeze
uname -r
2.6.32-5-686

5 – Après la migration

GRUB 2

Si vous administrez physiquement la machine vous avez pu constater que deux grubs s’exécutent successivement ; c’est le « chainload » validé pendant l’installation avec l’ancien grub (grub legacy) et le nouveau (grub 2).

Une fois certain que GRUB 2 marche sur votre machine il est préférable de l’utiliser (le chargement en chaîne n’étant qu’une solution temporaire).

Utilisation de GRUB 2 :

upgrade-from-grub-legacy
Paquets obsolètes

Comme à chaque nouvelle version, beaucoup de nouveaux paquets apparaissent et beaucoup d’anciens paquets disparaissent, il est donc nécessaire de faire un petit ménage.

Suppression automatique des paquets installés qui ne sont plus utilisés :

apt-get autoremove

6 – Problèmes rencontrés

VMWare Tools

Dans mon cas les VMware Tools étaient en échec lors de leur démarrage. Je l’ai ai donc mis à jour via le client vSphere avec la fonction  « Installer / Mettre à niveau les outils VMware ».

MySQL

En me connectant à phpmyadmin j’ai obtenu ces messages d’erreur relatifs à MySQL :

Certaines fonctionnalités ayant trait aux tables reliées sont désactivées. Pour une analyse du problème, cliquez ici.La version de votre bibliothèque MySQL (5.1.49) diffère de la version de votre serveur MySQL (5.0.51a). Ceci peut occasionner un comportement imprévisible.

En effet, j’avais installé le paquet MySQL-Server-5.0 et non le meta paquet donc la mise à jour n’a pas été faite.

J’ai donc installé la nouvelle version qui à remplacé l’ancienne :

apt-get install mysql-server-5.1

J’ai également eu le message :

Ce serveur utilise Suhosin. Veuillez vous référer à la documentation pour en connaître les conséquences possibles.

Jai perso changé la conf et désactivé le warning comme préconisé :

vi /etc/php5/conf.d/suhosin.ini
suhosin.request.max_vars = 2048
suhosin.post.max_vars = 2048
suhosin.request.max_array_index_length = 256
suhosin.post.max_array_index_length = 256
suhosin.request.max_totalname_length = 8192
suhosin.post.max_totalname_length = 8192
]]>
https://blog-sysadmin.archives.slashroot.fr/?feed=rss2&p=26 2