====== Passage de Debian Stretch à Buster ====== Ayant la manip à faire sur pas mal de serveurs, et comme ce n'est pas une bonne idée d'automatiser les mises à jours majeures (chaque installation a ses particularités), ce qui suit est une recette résumant les [[https://www.debian.org/releases/buster/armhf/release-notes/ch-upgrading.fr.html|consignes de mise à jour officielles de Debian]]. - Réaliser un snapshot des VM (et prier sur les hyperviseurs). - Lancer screen (ça va être long). - Enregistrer la session. * ''script -t 2>~/upgrade-buster1.time -a ~/upgrade-buster1.script'' * ''1'' sera à incrémenter si on redémarre, relance le script, etc. * ''less -R ~/upgrade-buster1.script'' permet de relire tranquillement ce qui a défilé. * ''exit'' à la fin de la mise à jour (ou si ça redémarre, ça exit aussi !). - Encore sous Stretch, réaliser un ''apt update && apt upgrade'' : plus c'est à jour, moins on a de soucis ensuite. ''apt autoremove'' et ''apt clean'' contribueront aussi à avoir une base propre. - Vérifier qu'il n'y a pas des sources alternatives ''sudo aptitude search '~i(!~ODebian)' ''. - ''dpkg --audit'' et ''apt-mark showhold'' pour vérifier qu'il n'y a pas des paquets gelés, avec des soucis, etc. - Modifier ''/etc/apt/sources.list'' * Voir https://debian-facile.org/doc:system:apt:sources.list:buster - ''apt update && apt upgrade'' (upgrade en deux temps) : ne met à jour que le minimum. - ''apt full-upgrade'' * S'il y a besoin de geler des paquets : ''apt-mark hold package_name''. Mais geler des paquets risque de rajouter du bazar, donc à réserver en cas de rapport de bug vraiment inquiétant. - Régler les problèmes s'il y en a, puis redémarrer la machine afin de prendre en compte le changement de noyau et le reste (et de vérifier si ça reboot, grub est parfois taquin). - Vérifier que les services marchent correctement. - Nettoyer les restes * ''dpkg -l | awk '/^rc/ { print $2 }' '' pour lister les paquets supprimés ayant laissé des fichiers de configuration * ''apt purge $(dpkg -l | awk '/^rc/ { print $2 }')'' pour tous les purger uniquement si la liste présente des paquets donc la config ne nous intéresse pas. * Chercher et purger les paquets obsolètes ''aptitude search '~o' && aptitude purge '~o' '' ===== PHP ===== Attention avec ''php'' et apache, il faut activer le module de la nouvelle version de php dans apache sinon tout plante. sudo a2enconf php7.3-cgi sudo a2enmod php7.3 sudo service apache2 restart Pour FPM a2enmod proxy_fcgi setenvif a2enconf php7.3-fpm