J'ai décidé de mettre a jour mon serveur... de la version squeeze vers la version wheezy... et ensuite jessie
Cela semble facile à première vue, mais comme je préfère me méfier, j'ai fait un labo avec un "clone" de mon serveur, et tenter sur ce clone de mettre au point LA procédure...
Lors de ma première tentative, le serveur (de test) n'a JAMAIS redémarrer, ce qui me fait dire que ce n'est pas si facile... j'ai donc compilé ici mes remarques et mes notes sur ma mise à jour (et mes galères aussi).
Préparation de la plateforme
DSpam et amavis
Premier essai, l'upgrade plante à cause de dspam et de amavisd-new (J'ai fait mon malin et installé depuis les sources de sourceforge), après de looonnngues heures de recherche sur comment supprimer un paquet qui a été installer à la main (mais pas bien) et que debian a ensuite pris (mal) sous son aile....
Voilà ce qu'il convient de faire:
vu les soucis avec dspam et amavisd, on stop les service et SURTOUT on le retire du init.d...,
Mais cela ne suffit pas, il faut aussi PURGER les dpkg et les apt cache, je pense que le insserv -r n'est pas nécéssaire (car fait par le purge) mais ca fait toujours bien de le faire...
dpkg -r dspam
dpkg -P dspam
mv /var/lib/dpkg/info/dspam* /tmp/
dpkg --remove --force-remove-reinstreq dspam
dpkg --purge --force-remove-reinstreq dspam
insserv -r /etc/init.d/dspam
dpkg -r amavisd-new
dpkg -P amavisd-new
mv /var/lib/dpkg/info/amavis* /tmp/
dpkg --remove --force-remove-reinstreq amavisd-new
dpkg --purge --force-remove-reinstreq amavisd-new
insserv -r /etc/init.d/amavis
Clean-up de dspam et amavis
Je ne sais pas si c'est encore nécéssaire... mais dans le doute, on le fait:
rm -r /var/spool/dspam/data/
rm /etc/init.d/dspam
Ca m'apprendra a ne pas suivre les paquets de la distribution et a vouloir faire le malin...
Apache
Certains mod d'apache semble ne pas exister dans debian 7, ou du moins il ne passe pas: mod_dav_svn.so, on le désactive directe:
Changement de version
Il suffit de remplacement "squeeze" par "wheezy" ou "jessie" dans le(s) fichier(s) suivant(s) :
Et de remplacer "6" par "7":
Oui, j'utilise aussi owncloud sur ce serveur...
Mise à jour
Et on lance le bouzin:
apt-get dist-upgrade
J'ai choisis de conserver les paramêtres IPv4 et IPV6, MySQL et après un peu de travail (du serveur) premières questions, j'ai choisis là d'importer les nouveaux fichiers de base, il me faudra controler TOUT les paramètres de ces derniers:
Re-installer le fichier awstats qui serait manquant dans le /etc/cron.d/
fail2ban.conf:
jail.conf: là c'est surtout la durée de bantime qui est racourcie
/etc/roundcube/main.inc.php: pas fou
Par contre, j'ai choisis de conserver MES paramêtres pour:
/etc/phpmyadmin/apache.conf: j'avais juste pas envie de refaire ma config...
/etc/roundcube/debian-db.php: pas fou
Configuration particulière
linux-base : update device IDs : YES
amavisd-new: plus de fichier monolitique, ca tombe bien, j'avais quelques soucis avec amavisd-new...
Un petit reboot et hop... c'est fait (sauf que le kernel est toujours un 2.6, mais pas pour longtemps)
Mise a jour du kernel
Là aussi rien de très compliqué... on check la version (surtout le type de kernel):
Linux version 2.6.32-5-amd64 (Debian 2.6.32-48squeeze3) (dannf@debian.org) (gcc version 4.3.5 (Debian 4.3.5-4) ) #1 SMP Fri May 10 08:43:19 UTC 2013
Dans mon cas, il s'agit d'une amd64, donc je selectionne la dernière image amd64:
apt-get install linux-image-amd64
Et hop, c'est fait... (ne pas oublier de rebooter pour tester), ensuite vous pouvez supprimer l'image 2.6 (ou pas, c'est votre choix):
rm /boot/System.map-2.6*
rm /boot/config-2.6*
rm /boot/vmlinuz-2.6*
Puis une petite mise à jour de grub:
Et on reboot pour controler, si vous vous planter là, ça ne démarrera plus.
N'oubliez pas de mettre votre debian a jour pour le nouveau kernel...
apt-get upgrade
C'est idiot, mais j'avais oublié, du coup plein de truc ne fonctionnaient plus...
Suivit en cas de virtualisation
Si vous êtes en virtual, n'oubliez pas de refaire l'installe des VMWareTools.
Remise des parametres au "carré"
Apticron
/etc/apticron/apticron.conf
fail2ban
/etc/fail2ban/jail.conf
maxretry = 2
maxretry = 2
Etc..
Roundcube
/etc/roundcube/main.inc.php
$rcmail_config['username_domain'] = 'votre-domaine.tld';
[UPDATE]
Roundcube n'est plus maintenu... pour avoir la dernière version, il faut le faire "a la main'...
Amavisd-new
Voir la page dédiée...
Apache2
en passant a jessie, on "reçoit" aussi apache 2.4... c'est cool sauf que:
la config n'est plus la même:
pour chaque site, il faut revoir la configuration des accès:
en configuration 2.2 vous aviez
Deny from all
en configuration 2.2 vous aviez
Allow from all
en configuration 2.4 cela devient: