Module 4 · 4.3
Français
Durée de vie et mises à niveau de version
Module 4: Logiciels et mises à jour · Temps de lecture : 11 minutes
Objectif pédagogique : après cette leçon, vous savez trouver la durée de vie de votre distribution, vous savez ce que signifie la "end of life" pour votre serveur, et vous savez planifier et réaliser une mise à niveau de version en toute sécurité.
Notions clés : version (release), LTS, support standard, Debian LTS, Ubuntu ESM et Ubuntu Pro, fin de vie (end of life, EOL), /etc/os-release, do-release-upgrade, mise à niveau minimale et complète, sources de paquets tierces, snapshot, curl | bash
Chaque version a une date de péremption
Les mises à jour automatiques (leçon 4.2) ne fonctionnent que tant que votre distribution produit encore des mises à jour pour votre version. Chaque version de Debian et d'Ubuntu reçoit des mises à jour de sécurité pendant une période déterminée. Ensuite, c'est terminé : votre serveur ne reçoit plus de correctifs, même pour des failles graves. C'est ce qu'on appelle la fin de vie (end of life, EOL).
Pour savoir quelle version vous utilisez :
anna@web1:~$ cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 13 (trixie)"
NAME="Debian GNU/Linux"
VERSION_ID="13"
VERSION="13 (trixie)"
VERSION_CODENAME=trixie
...Sur Ubuntu, vous verrez par exemple VERSION="24.04.3 LTS (Noble Numbat)".
Debian
Debian prend entièrement en charge une version pendant environ trois ans. Ensuite, l'équipe Debian LTS prend le relais pendant deux ans de plus, avec des mises à jour de sécurité pour les paquets les plus utilisés. Pour les versions actuelles (situation en novembre 2026, à vérifier sur debian.org/releases) :
| Version | Publiée le | Fin du support normal | Fin du LTS |
|---|---|---|---|
| Debian 13 "trixie" | 9 août 2025 | août 2028 | 30 juin 2030 |
| Debian 12 "bookworm" | 10 juin 2023 | 11 juillet 2026 | 30 juin 2028 |
Debian 12 reçoit donc encore des mises à jour via LTS, mais se trouve dans sa dernière phase. Un nouveau serveur s'installe sur Debian 13.
Ubuntu
Ubuntu publie tous les deux ans, en avril, une version LTS (Long Term Support), avec cinq ans de maintenance de sécurité standard. Avec un abonnement Ubuntu Pro (gratuit pour un usage personnel sur quelques machines), s'y ajoute l'ESM (Expanded Security Maintenance), jusqu'à dix ans au total.
| Version | Support standard jusqu'en | Avec ESM jusqu'en |
|---|---|---|
| Ubuntu 26.04 LTS | mai 2031 | mai 2036 |
| Ubuntu 24.04 LTS | mai 2029 | mai 2034 |
Entre les versions LTS paraissent des versions intermédiaires (comme 25.10) avec seulement neuf mois de support. Elles ne sont pas conçues pour un serveur qui doit tourner pendant des années. Pour un serveur, choisissez toujours une LTS.
Ce que la fin de vie signifie pour vous
Un serveur sur une version qui ne reçoit plus de mises à jour continue de fonctionner normalement. C'est justement ce qui le rend traître : vous ne remarquez rien, jusqu'à ce que quelqu'un exploite une faille corrigée partout sauf chez vous. Par ailleurs :
- les nouveaux logiciels (une nouvelle version de PHP, une nouvelle version de Docker) ne sont plus compilés pour votre version ;
- les sources de paquets tierces s'arrêtent aussi, souvent plus tôt ;
- plus vous attendez, plus le saut est important. Debian ne prend pas en charge le saut d'une version : passer de 11 à 13 doit se faire via 12.
Notez donc la date de fin de vie de votre serveur dans votre agenda, avec un rappel six mois avant.
Deux méthodes : mettre à niveau ou reconstruire
Il existe deux façons propres de passer à une nouvelle version.
- Mise à niveau sur place (in-place) : vous faites évoluer le serveur existant vers la nouvelle version. C'est rapide et tout reste en place, mais les anciens résidus et vos propres modifications suivent aussi.
- Reconstruire : vous créez un nouveau serveur avec la nouvelle version, vous y réinstallez vos services (pratique avec les notes de la leçon 10.4 ou avec Docker Compose, module 9), vous transférez les données depuis votre sauvegarde et vous basculez le DNS (leçon 7.1). C'est plus de travail, mais le résultat est propre, et cela teste du même coup votre sauvegarde.
Pour un petit serveur avec quelques services, une mise à niveau sur place convient très bien. S'il fait tourner beaucoup de développements sur mesure, ou s'il a déjà été mis à niveau plusieurs fois, envisagez plutôt de le reconstruire.
Préparer une mise à niveau sur place
Prévoyez ces cinq éléments avant de commencer :
- Un snapshot dans le panneau de votre fournisseur, juste avant de commencer, ainsi qu'une sauvegarde récente hors du serveur (module 8). Un snapshot est votre retour en arrière rapide si la mise à niveau échoue en cours de route.
- Un deuxième accès : la console de votre fournisseur. Vous travaillez via SSH, et si les paramètres réseau ou le serveur SSH changent pendant la mise à niveau, vous voulez pouvoir continuer via la console. Les notes de version de Debian le disent explicitement : prévoyez à l'avance un autre moyen de vous connecter.
- Lire les notes de version, surtout le chapitre "Issues to be aware of". Pour Debian 13, on y trouve par exemple :
/tmpest désormais en mémoire par défaut,/etc/sysctl.confn'est plus lu (utilisez/etc/sysctl.d/), et/bootdoit être suffisamment grand. - Passer en revue les sources tierces. Les paquets qui ne proviennent pas de Debian ou d'Ubuntu eux-mêmes peuvent provoquer des conflits pendant la mise à niveau. Regardez quelles sources vous avez (
ls /etc/apt/sources.list.d/) et si l'éditeur propose déjà une version pour la nouvelle release. - Une session qui survit à une coupure de connexion. Lancez la mise à niveau dans
tmuxouscreen. Si votre connexion internet tombe, la mise à niveau continue et vous la reprenez avectmux attach.
Debian : les étapes
D'après les notes de version de Debian 13, pour une mise à niveau de 12 vers 13 :
root@web1:~# apt update && apt full-upgrade # d'abord mettre entièrement à jour la version actuelle
root@web1:~# sed -i 's/bookworm/trixie/g' /etc/apt/sources.list.d/debian.sources
root@web1:~# apt update
root@web1:~# apt upgrade --without-new-pkgs # mise à niveau minimale
root@web1:~# apt full-upgrade # mise à niveau complète
root@web1:~# rebootSi vous utilisez encore /etc/apt/sources.list, modifiez-y le nom de code. Désactivez temporairement les sources tierces pendant la mise à niveau (en les renommant en .disabled), puis réactivez-les ensuite avec le nom de code de la nouvelle version, si l'éditeur la propose.
Pendant la mise à niveau, soyez attentif aux questions sur les fichiers de configuration. Si vous avez modifié un fichier vous-même, comme sshd_config, dpkg vous demande si vous voulez conserver votre version. Gardez votre propre version si vous savez pourquoi vous l'avez modifiée, puis comparez-la ensuite avec la nouvelle version (.dpkg-dist).
Après le redémarrage :
anna@web1:~$ cat /etc/os-release | grep VERSION=
VERSION="13 (trixie)"
anna@web1:~$ systemctl --failed
anna@web1:~$ sudo apt autoremovesystemctl --failed (leçon 6.1) doit être vide. Vérifiez aussi que vos sites web et vos conteneurs fonctionnent, et que votre surveillance (leçon 8.3) est au vert.
Ubuntu : do-release-upgrade
Ubuntu dispose d'un programme dédié :
anna@web1:~$ sudo apt update && sudo apt full-upgrade
anna@web1:~$ sudo do-release-upgradeDeux choses à savoir. Premièrement, Ubuntu ne propose la mise à niveau d'une LTS vers la suivante qu'après la première version ponctuelle (par exemple 26.04.1, quelques mois après avril). C'est voulu : les plus gros problèmes sont corrigés pendant les premiers mois. Deuxièmement : si vous lancez la mise à niveau via SSH, do-release-upgrade indique qu'il démarre par précaution un serveur SSH supplémentaire sur un port de secours. Ce port doit alors être autorisé par votre pare-feu (leçon 5.2) si vous en avez besoin ; en général ce n'est pas le cas, puisque vous disposez de la console.
Le grand piège : les logiciels hors distribution
Les mises à niveau échouent presque toujours à cause de logiciels qui ne proviennent pas de la distribution. Trois habitudes font la différence :
- Pas de
curl https://... | bash. Un script trouvé sur internet que vous exécutez directement en root peut modifier n'importe quoi sur votre serveur : ajouter des sources, faire confiance à des clés pour toutes les sources, écraser des fichiers. Vous ne savez pas ce qui s'est passé, et à la prochaine mise à niveau, quelque chose casse. Téléchargez un tel script, lisez-le, et effectuez plutôt les étapes vous-même. - Une source supplémentaire uniquement de l'éditeur lui-même, avec sa propre clé (
Signed-By, leçon 4.1), et notez dans la documentation de votre serveur pourquoi elle est là. - Pas de fichiers
.debisolés téléchargés sur des sites web si le logiciel est disponible dans la distribution ou dans la source de l'éditeur. Ils ne reçoivent jamais de mises à jour.
Sur AlmaLinux et Rocky Linux
Une version "majeure" (9, 10) y reçoit des mises à jour pendant environ dix ans, et les versions intermédiaires (9.6, 9.7) se mettent à jour simplement avec dnf upgrade. Un passage sur place à une nouvelle version majeure est possible avec l'outil ELevate (AlmaLinux), mais beaucoup d'administrateurs préfèrent tout de même reconstruire lors d'un passage à une nouvelle version majeure.
En pratique
Dans l'écran VPS de WebOké, vous créez un snapshot avant une mise à niveau (deux au maximum à la fois, sur le même stockage que votre VPS) et vous disposez de la console comme deuxième accès. Chez d'autres fournisseurs, les noms sont similaires : snapshot, console VNC ou web, rescue. Un snapshot ne remplace pas une sauvegarde hors du serveur ; supprimez-le une fois que tout fonctionne, car il grossit à chaque modification.
Résumé
- Chaque version reçoit des mises à jour de sécurité pendant une période déterminée ; ensuite, elle est en fin de vie et votre serveur ne reçoit plus de correctifs.
- Debian : environ trois ans plus deux ans de LTS ; Ubuntu LTS : cinq ans plus ESM jusqu'à dix ans. Pour un serveur, choisissez toujours une LTS et notez la date de fin dans votre agenda.
- Préparez une mise à niveau avec un snapshot, une sauvegarde, la console, les notes de version et une session tmux.
- Debian : sources vers le nouveau nom de code,
apt upgrade --without-new-pkgs,apt full-upgrade; Ubuntu :do-release-upgrade, après la première version ponctuelle. - Les logiciels hors distribution sont la principale source de problèmes de mise à niveau : pas de
curl | bash, uniquement des sources de l'éditeur avec leur propre clé.
Quiz
Exercice
Exercice O4.3 : Votre plan de mise à niveau. Recherchez la version sur laquelle tourne votre serveur et jusqu'à quand elle reçoit des mises à jour de sécurité. Établissez ensuite un plan de mise à niveau : quelles sources tierces avez-vous, comment créez-vous un snapshot et une sauvegarde, comment accédez-vous à la console, quelles étapes exécutez-vous, comment testez-vous ensuite, et choisissez-vous une mise à niveau sur place ou une reconstruction (avec justification) ?
Exercice O4.3: Votre plan de mise à niveau
Cet exercice, vous le faites vous-même ; personne ne le vérifie. Cochez ce que vous avez fait et marquez l'exercice comme terminé.
Snapshot et sauvegarde, lecture des notes de version, travail dans tmux ; Debian : sources vers le nouveau nom de code, apt upgrade --without-new-pkgs, apt full-upgrade, redémarrage ; Ubuntu : do-release-upgrade. Ensuite, vérifier systemctl --failed, les sites, les conteneurs et la surveillance. Une reconstruction vaut la peine s'il y a beaucoup de développements sur mesure, et c'est en même temps un test de votre sauvegarde.
Vos cases cochées et vos notes restent uniquement dans ce navigateur ; nous ne les envoyons nulle part. Si vous êtes connecté, nous enregistrons dans Mes formations uniquement le fait que vous avez terminé l'exercice.
Pour aller plus loin
- Snapshots et sauvegardes de votre VPS
- Monter votre propre ISO ou réinstaller votre VPS
- Versions de Debian et périodes de support : https://www.debian.org/releases/
- Debian 13, notes de version, chapitre 4 (mise à niveau) et chapitre 5 (points d'attention) : https://www.debian.org/releases/trixie/release-notes/
- Ubuntu, cycle de publication : https://ubuntu.com/about/release-cycle
- Documentation Ubuntu Server, Upgrade your release : https://ubuntu.com/server/docs/how-to/software/upgrade-your-release/
