Sommaire
Squeeze n'est définitivement plus supportée depuis le 29 février 2016. |
Merci de bien vouloir compléter ces informations avec vos Problèmes rencontrés lors de migrations en fin de page ! |
Cette page présente la migration de Debian Lenny (5.0) vers Debian Squeeze (6.0).
Pour connaître la technique conseillée pour installer Debian à l'AUF, consultez la page Debian.
Migration de Lenny vers Squeeze
Commencez par vérifier que votre système est à jour !
vérifiez vos sources apt dans /etc/apt/sources.list
lancez apt-get update ; apt-get upgrade
intégrez les éventuels changements que vous trouverez avec find /etc -name "*.dpkg*" -o -name "*.ucf*"
lisez la section « Problèmes rencontrés lors de migrations » ci-dessous,
à vérifier avant la migration
Suivez la procédure officielle de mise à jour !
Il faut absolument lire les notes de publications. Cela vous évitera la plupart des problèmes possibles. Si vous hésitez à mettre à jour un serveur en production, contactez d'abord la liste Tech@Auf afin que nous étudions ensemble les problèmes potentiels.
Quand on vous propose de choisir entre votre ancienne configuration et celle proposée par Debian, dans la plupart des cas il est préférable de choisir cette dernière (celle de Debian) pour éviter une interruption de la mise à jour faute de configuration valide. Vous pourrez de toutes façons ré-intégrer vos modifications ensuite à partir des fichier .dpkg-old ou .ucf-old (ou de votre dernière sauvegarde).
Attention : il s'agit d'intégrer les modifications de l'ancienne configuration et non pas simplement recopier l'ancien fichier de configuration !
Finalisez la mise à jour
une nouvelle fois, intégrez les éventuels changements que vous trouverez avec find /etc -name "*.dpkg*" -o -name "*.ucf*"
cherchez s'il reste des paquets non-Debian : aptitude search ~i\!~Odebian
aptitude affichera la liste des paquets installés qui ne sont pas originels d'une archive Debian officielle
ajoutez la nouvelle section squeeze-updates qui succède à debian-volatile à partir de Squeeze (voir la page Debian), puis lancez une mise à jour du système
Problèmes rencontrés lors de migrations : À LIRE AVANT DE MIGRER !!
asterisk
ATTENTION Ne surtout pas migrer un serveur asterisk, la configuration AuF n'est pas encore prête pour la version 1.6 qui vient avec Squeeze et le service VoIP ne fonctionnera plus du tout !
Cette page sera mise à jour quand la configuration AuF pour asterisk 1.6 sera disponible.
snmpd
La configuration dans /etc/snmp/snmpd.conf a hélas priorité sur celle dans /etc/snmp/snmpd.local.conf.
Pour retirer la limitation du service SNMP au localhost il faut donc obligatoirement commenter la ligne 15 dans /etc/snmp/snmpd.conf :
#agentAddress udp:127.0.0.1:161
Le reste de la configuration pouvant bien se faire dans /etc/snmp/snmpd.local.conf, par exemple :
rocommunity un-secret 192.0.2.10 sysLocation Ville, Pays sysContact Responsable technique <root@example.org>
Par ailleurs, pour que le service snmpd démarre sans erreur avec sa configuration par défaut, il faut installer les MIBS qui ne sont plus distribuées par Debian (car non libres) :
ajouter la section non-free
dans /etc/apt/sources.list puis lancer aptitude updateinstaller le paquet snmp-mibs-downloader
retirer la section non-free dans /etc/apt/sources.list puis relancer aptitude update
spécifier export MIBS=UCD-SNMP-MIB dans /etc/default/snmpd
relancer le service snmpd, il devrait démarrer sans erreur (vérifier dans /var/log/syslog)
syslog-ng
Il vaut mieux passer à rsyslog qui est le nouveau standard et sait en faire autant, sinon plus, que syslog-ng.
Mais si vous devez utiliser malgré tout syslog-ng, dans un environnement virtualisé, pensez à dé-commenter la ligne suivante dans /etc/default/syslog-ng :
SYSLOGNG_OPTS="--no-caps"
auf-django-users
Sur Squeeze, la version de python-django est la 1.2 et s'accompagne de quelques changements dans l'organisation des fichiers du paquet correspondant. Ainsi, pour permettre le chargement des fichiers statiques (js, css et html) permettant l'affichage correcte des pages web de auf-django-users, il faut modifier le fichier /etc/auf-django-users/apache.conf en remplacant les lignes
Alias /admin/media /usr/share/python-support/python-django/django/contrib/admin/media <Directory /usr/share/python-support/python-django/django/contrib/admin/media/>
par
Alias /admin/media /usr/share/pyshared/django/contrib/admin/media <Directory /usr/share/pyshared/django/contrib/admin/media/>
mysql
- Dans la version 5.1 du mysql-server il n'est plus supporté BDB ou BerkeleyDB storage, donc il faut juste commenter la ligne skip-dbd dans /etc/mysql/my.cnf
En créant le fichier /etc/mysql/conf.d/local.cnf suivant les consignes liées à unicode, il faut utiliser character-set-server au lieu de default-character-set. Ce dernier ne sera plus employé dans les versions ultérieures de debian.
dovecot
La configuration de Dovecot change (un peu) lors du passage de la 1.0 (Lenny) à la 1.2 (Squeeze) et il faut donc prévoir une interruption de service le temps de faire les adaptations nécessaires. Pour plus de détails voir la documentation dans /usr/share/doc/dovecot-common/README.Debian.
postgrey
Le service postgrey change de port par défaut pour passer du 60000 au 10023. Il faut donc adapter la ligne correspondante dans /etc/postfix/main.cf.
firmware pour les cartes réseaux
Pour ce type de message Required firmware files may be missing. This system is currently running Linux 2.6.26-2-686 and you are installing Linux 2.6.32-5-686. In the new version some of the drivers used on this system may require additional firmware files: e100: e100/d102e_ucode.bin, e100/d101s_ucode.bin, e100/d101m_ucode.bin r8169: rtl_nic/rtl8168d-2.fw, rtl_nic/rtl8168d-1.fw
Il faut ajouter la section "non-free" sur toutes les lignes de sources.list puis installer le pacquet firmware-linux. Pour r8169, il faut installer en plus firmware-realtek
auf-git-etc
L'option -a n'existe plus pour git-status, du coup le %admin ALL=(ALL) NOPASSWD: /usr/bin/git status -a dans /etc/sudoers ne marche plus (le mot de passe est demandé).
- %admin ALL=(ALL) NOPASSWD: /usr/bin/git status -a + %admin ALL=(ALL) NOPASSWD: /usr/bin/git status
PostgreSQL
Squeeze vient avec PostgreSQL 8.4 en remplacement de la 8.3. Il faut procéder à une migration. Lire ça : /usr/share/doc/postgresql-8.4/README.Debian.gz et faire ça :
pg_dropcluster 8.4 main --stop And then upgrade the 8.3 cluster to 8.4: pg_upgradecluster 8.3 main pg_dropcluster 8.3 main
IPTABLES
Changement de syntaxe dans les négations : une règle du genre
$IPT -A INPUT -i ! $IFPUB -p tcp --dport ssh -m state --state NEW -j ACCEPT
va déclencher le message suivant (NB : c'est juste un warning, la règle est tout de même activée) :
Using intrapositioned negation (`--option ! this`) is deprecated in favor of extrapositioned (`! --option this`).
cf http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=528736 (je ne vois aucune correction ici contrairement à la conclusion de ce billet! --- mais si : «Upstream fixed intraposition vs extraposition deprecation warning. Thanks. Closes: #528736»)
Il faut corriger la règle de la sorte :
$IPT -A INPUT ! -i $IFPUB -p tcp --dport ssh -m state --state NEW -j ACCEPT
apache
Avant squeeze, on n'était pas obligé d'indiquer "SSLEngine On" pour activer SSL. C'est désormais obligatoire, si les sites en https ne marchent plus il faut d'abord vérifier que vous avez bien "SSLEngine On" dans vos configurations SSL.
complement sur mysql
Dans le cas où on s'est trompé et qu'on a répondu de garder sa config au lieu de celle de Debian, il faut: commenter "skip-dbd" dans
/etc/mysql/my.cnf.
Et gérer les droits d'accès aux bases de données et aux tables ?:
mysql_upgrade -u root -h localhost -p --force --verbose
Hôte OpenVZ
A la migration, il me propose sans autres alternatives de supprimer le paquet bridge-utils, ce qui entraine la déconnexion réseau des containers à l'hôte. un
# aptitude install bridge-utils
a permis de rétablir la connexion entre le container et l'hôte.
Sources APT post-LTS
Pour pouvoir faire les dernières mises à jour avant la migration vers Wheezy, il faut avoir des sources APT valide dans /etc/apt/sources.list :
deb http://archive.debian.org/debian squeeze main contrib deb http://archive.debian.org/debian squeeze-lts main contrib non-free deb http://archive.debian.org/debian-security squeeze/updates main contrib #deb http://archive.debian.org/debian-backports squeeze-backports main contrib #deb http://ftp.debian.org/debian squeeze-updates main deb http://apt.auf.org squeeze auf
Il faut également désactiver le contrôle d'expiration des listes de paquets en ajoutant cette ligne dans /etc/apt/apt.conf.d/50tmp-squeeze.conf :
# fichier à supprimer après la migration vers Wheezy Acquire::Check-Valid-Until "0";