La dernière version du support à long terme (LTS) du système d’exploitation Ubuntu, Ubuntu 20.04 (Focal Fossa), est sortie le 23 avril 2020. Ce guide explique comment mettre à niveau un système Ubuntu de la version 18.04 ou ultérieure vers Ubuntu 20.04.
Warning : Comme pour presque toutes les mises à jour entre les versions majeures d’un système d’exploitation, ce processus comporte un risque inhérent de défaillance, de perte de données ou de configuration logicielle défectueuse. Des sauvegardes complètes et des tests approfondis sont fortement conseillés
Pour éviter ces problèmes, nous recommandons de migrer vers un nouveau serveur Ubuntu 20.04 plutôt que d’effectuer une mise à niveau sur place. Vous devrez peut-être encore examiner les différences de configuration des logiciels lors de la mise à niveau, mais le système de base sera probablement plus stable. Vous pouvez suivre notre série sur comment migrer vers un nouveau serveur Linux pour apprendre à migrer entre les serveurs.
Ce guide suppose que vous disposez d’un système Ubuntu 18.04 ou supérieur configuré avec un utilisateur non root sudo-enabled
Bien que de nombreux systèmes puissent être mis à niveau sur place sans incident, il est souvent plus sûr et plus prévisible de migrer vers une nouvelle version majeure en installant la distribution à partir de zéro, en configurant les services avec des tests minutieux en cours de route et en migrant les données des applications ou des utilisateurs dans une étape distincte.
Vous ne devriez jamais mettre à niveau un système de production sans avoir préalablement testé tous vos logiciels et services déployés par rapport à la mise à niveau dans un environnement de mise en scène. Gardez à l’esprit que les bibliothèques, les langues et les services du système peuvent avoir considérablement changé. Avant de procéder à la mise à niveau, pensez à lire les notes de publication de Focal Fossa.
Avant de tenter une mise à jour majeure sur un système, vous devez vous assurer que vous ne perdrez pas de données si la mise à jour échoue. La meilleure façon d’y parvenir est de faire une sauvegarde de l’ensemble de votre système de fichiers. À défaut, assurez-vous que vous disposez de copies des répertoires personnels des utilisateurs, de tout fichier de configuration personnalisé et des données stockées par des services tels que les bases de données relationnelles.
Sur une droplet DigitalOcean, une approche consiste à éteindre le système et à prendre un instantané (la mise hors tension assure une meilleure cohérence du système de fichiers). Voir Comment créer des instantanés de droplets pour plus de détails sur le processus d’instantané. Après avoir vérifié que la mise à jour d’Ubuntu a réussi, vous pouvez supprimer l’instantané afin de ne plus être facturé pour son stockage.
Pour les méthodes de sauvegarde qui fonctionneront sur la plupart des systèmes Ubuntu, voir Comment choisir une stratégie de sauvegarde efficace pour votre SPV.
Avant de commencer la mise à jour de la version, il est plus sûr de se mettre à jour avec les dernières versions de tous les paquets pour la présente publication. Commencez par mettre à jour la liste des paquets :
- sudo apt update
Ensuite, mettez à jour les paquets installés avec leurs dernières versions disponibles :
- sudo apt upgrade
Une liste des mises à jour vous sera présentée et vous serez invité à continuer. Répondez y pour oui et appuyez sur Enter.
Ce processus peut prendre un certain temps. Une fois terminé, utilisez la commande dist-upgrade
avec apt-get
, qui effectuera toutes les mises à niveau supplémentaires impliquant la modification des dépendances, l’ajout ou la suppression de nouveaux packages si nécessaire. Il s’agira de gérer une série de mises à jour qui ont pu être retardées par la précédente étape de mise à niveau apt
:
- sudo apt dist-upgrade
Là encore, répondez y lorsque vous êtes invité à continuer, et attendez que les mises à niveau soient terminées.
Maintenant que vous disposez d’une installation à jour d’Ubuntu, vous pouvez utiliser la fonction do-release-upgrade
pour passer à la version 20.04.
Traditionnellement, les versions d’Ubuntu peuvent être mises à niveau en modifiant /etc/apt/sources.list
d’Apt - qui spécifie les référentiels de paquets- et en utilisant apt-get dist-upgrade
pour effectuer la mise à niveau elle-même. Bien que ce processus soit encore susceptible de fonctionner, Ubuntu fournit un outil appelé do-release-upgrade
pour rendre la mise à niveau plus sûre et plus facile.
do-release-upgrade
s’occupe de la vérification d’une nouvelle version, de la mise à jour sources.list
, et une série d’autres tâches, et constitue le chemin de mise à niveau officiellement recommandé pour les mises à jour de serveurs qui doivent être effectuées via une connexion à distance.
Commencez par exécuter do-release-upgrade
sans aucune option :
- sudo do-release-upgrade
Si la nouvelle version d’Ubuntu n’a pas encore été officiellement publiée, vous pouvez obtenir le résultat suivant :
OutputChecking for a new Ubuntu release
No new release found
Notez que sur Ubuntu Server, la nouvelle version LTS n’est pas disponible pour do-release-upgrade
jusqu’à sa première version ponctuelle, dans ce cas 20.04.1
. Cela se produit généralement quelques mois après la date de sortie initiale.
Si vous ne voyez pas de version disponible, ajoutez l’option -d
pour effectuer la mise à niveau vers la version de développement:
- sudo do-release-upgrade -d
Si vous êtes connecté à votre système via SSH, il vous sera demandé si vous souhaitez continuer. Pour les machines virtuelles ou les serveurs gérés, vous devez garder à l’esprit que la perte de connectivité SSH est un risque, en particulier si vous n’avez pas d’autre moyen de vous connecter à distance à la console du système (comme une fonction de console Web, par exemple).
Pour les autres systèmes sous votre contrôle, rappelez-vous qu’il est plus sûr d’effectuer des mises à jour majeures du système d’exploitation uniquement lorsque vous avez un accès physique direct à la machine.
À l’invite, tapez y et appuyez sur Enter pour continuer :
OutputReading cache
Checking package manager
Continue running under SSH?
This session appears to be running under ssh. It is not recommended
to perform a upgrade over ssh currently because in case of failure it
is harder to recover.
If you continue, an additional ssh daemon will be started at port
'1022'.
Do you want to continue?
Continue [yN]
Ensuite, vous serez informé que do-release-upgrade
lance une nouvelle instance de sshd
sur le port 1022 :
OutputStarting additional sshd
To make recovery in case of failure easier, an additional sshd will
be started on port '1022'. If anything goes wrong with the running
ssh you can still connect to the additional one.
If you run a firewall, you may need to temporarily open this port. As
this is potentially dangerous it's not done automatically. You can
open the port with e.g.:
'iptables -I INPUT -p tcp --dport 1022 -j ACCEPT'
To continue please press [ENTER]
Appuyez sur Enter
. Ensuite, vous pouvez être averti qu’une entrée miroir n’a pas été trouvée. Sur les systèmes DigitalOcean, il est possible d’ignorer cet avertissement et de procéder à la mise à niveau, puisqu’un miroir local pour 20.04 est en fait disponible. Saisissez y:
OutputUpdating repository information
No valid mirror found
While scanning your repository information no mirror entry for the
upgrade was found. This can happen if you run an internal mirror or
if the mirror information is out of date.
Do you want to rewrite your 'sources.list' file anyway? If you choose
'Yes' here it will update all 'bionic' to 'focal' entries.
If you select 'No' the upgrade will cancel.
Continue [yN]
Une fois les nouvelles listes de paquets téléchargées et les modifications calculées, il vous sera demandé si vous souhaitez lancer la mise à niveau. Encore une fois, entrez y
pour continuer :
OutputDo you want to start the upgrade?
18 installed packages are no longer supported by Canonical. You can
still get support from the community.
3 packages are going to be removed. 142 new packages are going to be
installed. 452 packages are going to be upgraded.
You have to download a total of 338 M. This download will take about
42 minutes with a 1Mbit DSL connection and about 13 hours with a 56k
modem.
Fetching and installing the upgrade can take several hours. Once the
download has finished, the process cannot be canceled.
Continue [yN] Details [d]
Les nouveaux paquets seront désormais récupérés, déballés et installés. Même si votre système est sur une connexion rapide, cela prendra un certain temps.
Au cours de l’installation, des dialogues interactifs peuvent vous être présentés pour diverses questions. Par exemple, on peut vous demander si vous souhaitez redémarrer automatiquement les services lorsque cela est nécessaire :
Dans ce cas, il est possible de répondre en toute sécurité Yes. Dans d’autres cas, il peut vous être demandé si vous souhaitez remplacer un fichier de configuration que vous avez modifié. Il s’agit souvent d’une question de jugement, et il est probable que cela nécessite des connaissances sur des logiciels spécifiques qui ne relèvent pas du champ d’application de ce tutoriel.
Une fois l’installation des nouveaux paquets terminée, il vous sera demandé si vous êtes prêt à supprimer les paquets obsolètes. Sur un système de stock sans configuration personnalisée, il devrait être possible d’entrer en toute sécurité y ici. Sur un système que vous avez fortement modifié, vous pouvez entrer d et inspecter la liste des paquets à supprimer, au cas où elle contiendrait des éléments à réinstaller ultérieurement.
OutputRemove obsolete packages?
53 packages are going to be removed.
Continue [yN] Details [d]
Enfin, si tout s’est bien passé, vous serez informé que la mise à niveau est terminée et qu’un redémarrage est nécessaire. Entrez y pour continuer :
OutputSystem upgrade is complete.
Restart required
To finish the upgrade, a restart is required.
If you select 'y' the system will be restarted.
Continue [yN]
Lors d’une session SSH, vous verrez probablement quelque chose comme ceci:
OutputConnection to 203.0.113.241 closed by remote host.
Connection to 203.0.113.241 closed.
Vous devrez peut-être appuyer sur une touche ici pour sortir de votre invite locale, puisque votre session SSH se sera terminée du côté du serveur.
Attendez un moment que votre serveur redémarre, puis reconnectez-vous. Lors de la connexion, vous devriez être accueilli par un message confirmant que vous êtes maintenant sur Focal Fossa :
OutputWelcome to Ubuntu 20.04 LTS (GNU/Linux 5.4.0-29-generic x86_64)
Vous devriez maintenant avoir une installation Ubuntu 20.04 qui fonctionne. À partir de là, vous devrez probablement étudier les changements de configuration nécessaires aux services et aux applications déployées.
Vous pouvez trouver plus de tutoriels 20.04 et des questions sur notrePage de balise Tutoriels Ubuntu 20.04.
Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
After this command, sudo do-release-upgrade I got this error message:
An unresolvable problem occured while calculating the upgrade.
This was likely caused by:
What can I do now?
Before this upgrade, I did the upgrade from 16.04 to 18.04.5 successfully. Now I want to upgrade to 20.04 and get stuck at this stage above.
Please help ! Thanks