Migrer une version majeure Debian

Tutoriel Debian

Tutorial Thumbnail

Dans votre infrastructure informatique, vous avez sans doute des serveurs Debian qui tournent encore sous une version diffĂ©rente de celle proposĂ©e. À ce jour, Debian propose la version "bullseye" qui corresponds Ă  la 11Ăšme version majeure de la distribution.



Dans ce tutoriel, nous allons voir ensemble comment passer d'une version majeure sans pour autant réinstaller complÚtement le serveur Debian en question.

Une premiÚre méthode sera vue afin de mettre à jour le systÚme disposant d'une connexion Internet, puis une seconde méthode qui permettra de mettre à niveau la version Debian sans connexion Internet.


Avant de commencer...

Comme pour toute mise Ă  jour systĂšme, il est plus que nĂ©cessaire d'effectuer des sauvegardes du systĂšme dans le cas oĂč la mise Ă  jour pouvait Ă©chouer. Si votre serveur est virtualisĂ©, pour pouvez rĂ©aliser facilement un Snapshot (capture de l'Ă©tat de la machine Ă  l'origine dispo pour la plupart des Hyperviseurs 😉). Il est Ă  souligner que cette mĂ©thode ne remplace en aucun cas une sauvegarde rĂ©elle des donnĂ©es. Utilisez dans ce cas un logiciel prĂ©vu Ă  cet effet qui se chargera d'effectuer des sauvegardes incrĂ©mentielles quotidiennement, comme par exemple avec Veeam.


DeuxiÚme point à savoir, lors de la migration, il est susceptible que l'assistant de mise à jour aptitude pose un certain nombre de question, comme par exemple si vous souhaitez conserver un ancien fichier de configuration ou si vous souhaitez utiliser le fichier par défaut de la nouvelle version, mais encore un redémarrage d'un service en particulier. Donc, ne partez pas faire un Bowling pendant ce temps, ne restez pas loin... ;)


Les différents niveaux de version

Debian regroupe un nom de lancement pour chaque version publiĂ©es au cours des annĂ©es. À partir de la version 8 jusqu'Ă  la version 11 Ă  ce jour, voici les diffĂ©rents noms :

  • Debian 8 : jessie
  • Debian 9 : stretch
  • Debian 10 : buster
  • Debian 11 : bullseye
  • Debian 12 : bookworm

Ces noms seront importants lors de la modification du nom de la version dans le fichier source Apt de Debian. Dans le cadre de ce tutoriel, nous allons effectuer une migration en partant de la version Debian 10 Buster vers la version Debian 11 Bulleye. Le processus semble ĂȘtre identique pour migrer d'une version Ă  une autre diffĂ©rentes que celles proposĂ©es dans ce tutoriel.


Évitez de migrer deux versions Ă  la fois ! (Passage de Debian 9 => Debian 11 par exemple...). Cela n'as pas Ă©tĂ© testĂ©... des effets de bord sont Ă  prĂ©voir.


VĂ©rifier les mises Ă  jour avant la migration

Avant de commencer la migration du Debian, assurez vous que le Debian 10 Buster dispose des derniĂšres mises Ă  jour :


On mets à jour la liste des dépÎts en cherchant de nouvelles mises à jour depuis les dépÎts dans le fichier /etc/apt/source.list :

apt update


On installe les mises à jours identifiées avec apt update :

apt upgrade


On installe les mises Ă  jour concernant la distribution :

apt full-upgrade



Résultat des commandes ci-dessus afin de vérifier si les derniÚres mises à jours sont appliquées sous Debian 10


Modification du nom de la nouvelle version Debian

Pour le passage sous la nouvelle version Debian 11, il est nĂ©cessaire de remplacer l'ancien nom de version correspondant Ă  Debian 10 pour accueillir Debian 11. Éditez le fichier /etc/apt/sources.list en utilisant un Ă©diteur de texte de votre choix et remplacez chaque instance de buster par bullseye. Trouvez ensuite la ligne de sĂ©curitĂ©, remplacez le mot clĂ© buster/updates par bullseye-security.



Sources sous Debian 10 Buster


Dans notre cas pour le passage à Debian 11, en remplaçant les nouvelles données avec Sed, on modifie Buster par BullsEye. On remplace ensuite le mot clé bullseye/updates par bullseye-security.

sed -i 's/buster/bullseye/g' /etc/apt/sources.list
ï»żsed -i 's:bullseye/updates:bullseye-security:g' /etc/apt/sources.list


De ce fait, le fichier source est semblable Ă  celui-ci :

deb http://debian.polytech-lille.fr/debian/ bullseye main
deb-src http://debian.polytech-lille.fr/debian/ bullseye main

deb http://security.debian.org/debian-security bullseye-security main
deb-src http://security.debian.org/debian-security bullseye-security main

# bullseye-updates, previously known as 'volatile'
deb http://debian.polytech-lille.fr/debian/ bullseye-updates main
deb-src http://debian.polytech-lille.fr/debian/ bullseye-updates main

# This system was installed using small removable media
# (e.g. netinst, live or single CD). The matching "deb cdrom"
# entries were disabled at the end of the installation process.
# For information about how to configure apt package sources,
# see the sources.list(5) manual.


Edito 16/01/2024 : Fichier APT pour Debian 12 (Bookworm) :

#deb cdrom:[Debian GNU/Linux 12.2.0 _Bookworm_ - Official amd64 NETINST with firmware 20231007-10:28]/ bookworm main non-free-firmware

deb http://debian.polytech-lille.fr/debian/ bookworm main non-free-firmware
deb-src http://debian.polytech-lille.fr/debian/ bookworm main non-free-firmware

deb http://security.debian.org/debian-security bookworm-security main non-free-firmware
deb-src http://security.debian.org/debian-security bookworm-security main non-free-firmware

# bookworm-updates, to get updates before a point release is made;
# see https://www.debian.org/doc/manuals/debian-reference/ch02.en.html#_updates_and_backports
deb http://debian.polytech-lille.fr/debian/ bookworm-updates main non-free-firmware
deb-src http://debian.polytech-lille.fr/debian/ bookworm-updates main non-free-firmware

# This system was installed using small removable media
# (e.g. netinst, live or single CD). The matching "deb cdrom"
# entries were disabled at the end of the installation process.
# For information about how to configure apt package sources,
# see the sources.list(5) manual.


Remplacer dans le fichier source APT : "bullseye" vers "bookworm" :

sed -i 's/bullseye/bookworm/g' /etc/apt/sources.list


Mise Ă  niveau

Le tutoriel va maintenant ĂȘtre sĂ©parĂ© en deux parties : une migration avec accĂšs Internet, donc installation des paquets depuis le rĂ©seau mondial ET sans internet avec tĂ©lĂ©chargement au prĂ©alable des dĂ©pendances et installation manuelle depuis le dossier APT. Rien ne change au niveau des manipulations effectuĂ©es, juste le mode de rĂ©cupĂ©ration des fichiers, le fait d'installer en mode hors connexion nĂ©cessite quelques manipulations supplĂ©mentaires.


Installation avec connexion Internet

L'installation avec la récupération des dépendances directement depuis Internet est limité à la mise à jour de la liste des dépÎts et à l'installation des paquets récupérés en ligne. Une fois les modifications effectuées, on mets à jour la liste des dépÎts avec la nouvelle version :

apt update



Mise à jour des dépÎts de la nouvelle version BullsEye



Nous allons effectuer une mise Ă  niveau minimale des paquets existants sans en installer ou en modifier :

apt upgrade --without-new-pkgs



Mise Ă  jour minimale des paquets existants sans ajout ou modification



Lors du processus de mise Ă  jour, vous recevrez sans doute plusieurs questions comme « Souhaitez-vous redĂ©marrer le service XXX ? Â» dans la plupart des pas, rĂ©pondez Oui Ă  la question afin de redĂ©marrer le service en question.


Lancer ensuite la mise Ă  niveau complĂšte de Debian :

apt-get upgrade -o Dpkg::Options::="--force-confold" -y
apt full-upgrade -o Dpkg::Options::="--force-confold" -y


La premiÚre commande lance la mise à niveau classique, contrairement à la seconde commande qui répond automatique aux invités de commandes afin de garder automatiquement les fichiers de configuration actuels ou lors d'un redémarrage des différents services en question.



Lancement de la mise à niveau Debian avec les options de réponse automatique aux invités de commandes


Installation sans connexion Internet

Sur une machine disposant d'une connexion Internet, on va se charger de télécharger les fichiers nécessaires pour Debian 11. Il est trÚs important d'effectuer le téléchargement des sources sous la version de destination de la migration, donc sous un Debian 11 également.


On mets à jour la liste des dépÎts en cherchant de nouvelles mises à jour depuis les dépÎts mis à jour dans le fichier /etc/apt/source.list :

apt update


On télécharge les mises à jour de la distribution :

apt full-upgrade --download-only -y


Les fichiers téléchargés sont disponibles dans le répertoire : /var/cache/apt/archives regroupant l'ensemble des dépendances téléchargées :



Résultat de la commande apt full upgrade --download-only : téléchargement des dépendances


DĂ©placez l'ensemble des dossiers sur la machine cible n'ayant pas accĂšs Ă  Internet en copiant uniquement les fichiers .deb (ne pas prendre le dossier "partial" et le fichier "lock") dans le dossier /var/cache/apt/archives.


Ensuite, il ne reste plus qu'Ă  lancer l'installation des paquets :

apt install /var/cache/apt/archives/*.deb --assume-yes -o Dpkg::Options::="--force-confold" -y



Installation des paquets depuis le dossier /var/cache/apt/archives



Finalisation de l'installation

Une fois que la mise à niveau a bien été effectuée, redémarrez la machine Debian :

reboot



Redémarrage de Debian


Une fois le redémarrage effectué, vérifiez la version de Debian :

cat /etc/os-release


Enfin, on se charge de nettoyer ensuite le dossier temporaire APT et ainsi que les dépendances inutiles :

apt -y autoremove
apt clean


Vous pouvez constater que la migration de la version Debian 10 Buster vers Debian 11 BullsEye a bien été réalisée avec succÚs !



Mise Ă  jour de Debian 11



Et voilĂ , bravo Ă  vous ! Vous avez rĂ©ussi Ă  effectuer une migration opĂ©rationnelle depuis Debian 10 vers Debian 11 ! Bravo champion ! 😁

Niveau DĂ©butant

Technologie utilisée :

Proposer une modification
Antoine
Par Antoine
Rédigé le Mercredi 09 Février 2022