[gull] Mise à jour Debian par étapes
Daniel Cordey
dc at pxcluster.com
Mon Dec 22 11:58:08 CET 2025
Hola,
On 12/22/25 11:16, Claude Paroz via gull wrote:
>
> J'ai une question concernant la mise à jour de Debian (entre 2 LTS).
> La doc indique déjà 2 étapes (que je suis généralement):
> apt upgrade --without-new-pkgs
Ça risque de faire beaucoup de packages ! En effet, entre deux LTS,
presque tous les packages ont une nouvelle version...
La commande 'apt upgrade' est justement là afin de garantir une
continuité. Entre autres, ça évite de supprimer des packages qui
seraient utilisés par d'anciennes versions. Toutefois, cela ne permet
pas de passer à la LTS suivante.
Par contre, à partir du moment on l'on fait 'full-upgrade', on bascule
complètement. C'est ce qui va permettre d'installer une nouvelle version
du kernel. Ce qui fait que '--without-new-package' n'a pas vraiment de
sens si l'on veut faire 'full-upgrade'.
>
> Sur un de mes serveurs, la dernière Trixie apporte des modifications
> assez importantes dans plusieurs services (notamment la config Dovecot
> qu'il faut réécrire), donc je préférerais effectuer des mises à jour
> progressives par service (mail, web, etc.), notamment pour éviter le
> stress de devoir contrôler/corriger tout en même temps.
C'est, à mon humble avis, le gros problème des LTS. J'ai fait ça pendant
des années, et, comme toi, j'avais des tas de problèmes à chaque
nouvelle version (qui me prenaient en moyenne une semaine de travail à
chaque fois). Pour d'autres raisons, j'ai abandonné le rythme des LTS,
pour adopter les versions biannuelles d'Ubuntu. Cela limite grandement
ce problème...
>
> Ma question de base est de savoir si un système Debian est en principe
> stable et fonctionnel *tant que les dépendances sont respectées*.
C'est justement le but de 'apt update' qui permet cette garantie. C'est
un énorme travail de la part des équipes chargées d'assurer la cohérence
des dépendances. À partir du moment où l'on fait 'full-upgrade', on
bénéficie aussi du respect des dépendances, mais pour l'ensemble de la
nouvelle version. On ne peut donc pas mélanger ancien et nouveau, car ça
serait infernal
> Je m'explique: admettons que je fasse la première étape (upgrade
> --without-new-pkgs). Puis par exemple je fais un upgrade spécifique du
> noyau (avec des apt install <nom_paquet>), puis d'autres services.
> L'objectif étant bien sûr d'arriver finalement à l'upgrade complet,
> mais en avançant par étapes, ce qui pourrait théoriquement durer
> plusieurs jours.
Ça casse toute la notion du respect des dépendances. N'oublions pas
qu'il y a du systemd là-dedans... Or, plein de choses changent dans les
packages, et surtout les fichiers de config et leurs séquencements.
>
> Est-ce une tactique (trop) risquée ? Quelqu'un a-t-il déjà vécu ce cas
> de figure ?
Je conseillerais d'utiliser un système de test complet, sur lequel tu
fais la migration avec 'full-upgrade'. Tu passes le temps qu'il faut
pour migrer/corriger tous les problèmes, et ensuite, tu passes ton
système en production.
La stratégie CI/CD essaie justement d'éviter ce genre de situation et
repose sur des architectures comme Kubernetes qui permettent de
répliquer des systèmes et de les faire évoluer progressivement.
Personnellement, j'estime que les LTS peuvent répondre à des besoins
très ponctuels, mais c'est un ancien concept qui est complètement
abandonné avec Docker/Kubernetes. Docker permet précisément d'assurer
une transition en douceur vers les nouvelles versions, en facilitant les
tests d'intégration et les transitions d'une version à une autre. Je ne
peux qu'encourager quiconque ayant des systèmes de production critiques,
de migrer ses applications/services vers Docker/Podman, dans le but de
faciliter les migrations. On peut parfaitement répliquer la sécurité des
LTS en utilisant Docker/Podman, tout en enlevant tout stress lors de
l'installation d'une nouvelle version.
J'ai bien conscience que ma réponse ne va pas dans le sens de ce que tu
voudrais, mais j'ai passé des années de galère à chaque migration vers
une nouvelle version (LTS), et c'est justement pour cette raison que je
me suis éloigné de cette pratique des LTS dès que possible. Ça fait
vingt ans que j'ai changé mon fusil d'épaule et je ne reviendrais en
arrière pour rien au monde. Toutes les entreprises offrant des services
massifs sur internet, sont toutes passées à Docker/Kubernetes... ce
n'est sans doute pas un hasard !
dc
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://forum.linux-gull.ch/pipermail/gull/attachments/20251222/49cf61e0/attachment.html>
More information about the gull
mailing list