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 consignes de mise à jour officielles de Debian.
J'ai fait basique, mais lire plus la doc de Debian est une bonne idée.
script -t 2>~/upgrade-trixie1.time -a ~/upgrade-trixie1.script1 sera à incrémenter si on redémarre, relance le script, etc. less -R ~/upgrade-trixie1.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 !).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.find /etc -name '*.dpkg-*' -o -name '*.ucf-*' -o -name '*.merge-error'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.gpgv (ou s'assurer qu'il existe), il est requis pour vérifier les clés signant les publications sur Bookworm :/etc/apt/sources.list. Attention ! à présent Debian utilise /etc/apt/sources.list.d/debian.sources et non /etc/apt/sources.list ; il faudra enlever les anciens fichiers en .list. La syntaxe change aussi. Voir plus bas le contenu du fichier.Et à partir de là, on commence réellement l'upgrade.
apt update && apt upgrade --without-new-pkgs (upgrade en deux temps) : ne met à jour que le minimum.apt full-upgradeapt-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.dpkg -l | awk '/^rc/ { print $2 }' pour lister les paquets supprimés ayant laissé des fichiers de configurationapt 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. aptitude search '~o' && aptitude purge '~o' “debian.sources” : je ne met pas les src, généralement inutiles dans notre cas d'usage.
Types: deb URIs: https://deb.debian.org/debian Suites: trixie trixie-updates Components: main non-free-firmware contrib non-free Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg Types: deb URIs: https://security.debian.org/debian-security Suites: trixie-security Components: main non-free-firmware contrib non-free Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg