## page was renamed from Debian/MigrationSqueezeWheezy ## page was renamed from Debian/Squeeze <> ||<#ff2020> {i} Squeeze n'est définitivement [[https://www.debian.org/News/2016/20160212|plus supportée depuis le 29 février 2016]].|| ||<#ffff50>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, /* en particulier les sections sur GIT et Asterisk qui sont */ à vérifier '''avant''' la migration ## * A noter deux systèmes à mettre absolument à jour : ## . [[Apache/De13Vers20|migrer de Apache 1 vers Apache 2]] ## . [[PHP/De4Vers5|migrer de PHP 4 vers PHP 5]] == Suivez la procédure officielle de mise à jour ! == . /!\ Il faut '''absolument''' lire [[http://www.debian.org/releases/squeeze/i386/release-notes/ch-upgrading.fr|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 !! = ## == Suivi des modifications avec git == ## * Étant donné les différences importantes entre git 1.4 et 1.5, le paquet `auf-git-etc` fixe maintenant des variables d'environnement `GIT_DIR` et `GIT_WORK_TREE` pour tous les utilisateurs dans le groupe `admin`. ## * Cela n'a en principe aucune conséquence pour la migration mais pourrait en avoir pour des utilisateurs ou scripts dans le groupe `admin` qui gérerait des dépôts autres que celui servant à suivre la racine. Mais a priori on ne devrait pas trouver ce cas particulier à l'AuF. ## . Aucun problème rencontré pour le moment… == 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 }}} Par ailleurs, pour que le service `snmpd` démarre sans erreur avec sa configuration par défaut, [[http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=605769#20|il faut installer les MIBS]] qui ne sont plus distribuées par Debian (car non libres) : * ajouter la section `non-free` /* (...snif...) */ dans `/etc/apt/sources.list` puis lancer `aptitude update` * installer 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 }}} par {{{ Alias /admin/media /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 à [[Etude/Unicode|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"; }}} ----