Ce soir, on lance la mise à jour du serveur: nous passons notre version d’Ubuntu Server de Bionic Beaver (18.04 LTS) à Focal Fossa (20.04 LTS).
On commence par les précautions d’usage: faire ses sauvegardes et vérifier qu’elles sont bien intègres avant de commencer la mise à jour. C’est votre bouée en cas de soucis!
Étape 1: avoir l’installation d’Ubuntu actuelle à jour
Assurez-vous d’avoir une installation à jour avant de commencer:
apt update && apt dist-upgrade
On reboot ensuite pour appliquer les changements:
shutdown -r now
Étape 2: installation de screen et ouverture du port 1022 pour SSH
Comme nous allons lancer la mise à jour via un terminal SSH, il est possible que pour une raison ou un autre la connexion soit coupée. Cela arrive et cela peut être vraiment tendu à certaines étapes de la mise à jour (kernel anyone?).
Pour prévenir cela, on vérifie que screen
est bien installé:
apt install screen
On peut lancer une session screen
avec:
screen
et si la connexion SSH est interrompue lors de la mise à jour, on peut se raccrocher à la session de mise à jour avec la commande:
screen -Dr
Ensuite, au niveau du pare-feu, on ouvre le port 1022. C’est via ce port que l’on pourra reprendre la MAJ en cas de pépin. Suivant la configuration du serveur, on peut utiliser iptables
:
iptables -I INPUT -p tcp --dport 1022 -j ACCEPT
ou alors ufw
:
ufw allow 1022
Étape 3: installation des sources de mises à jour
Normalement, ces paquets sont installés d’office mais cela ne coûte rien de vérifier qu’ils sont bien présents avant de lancer toute commande:
apt install update-manager-core ubuntu-release-upgrader-core
On vérifie dans le fichier /etc/update-manager/release-upgrades
que la variable Prompt et bien égale à LTS pour n’installer que les versions Long Time Support:
cat /etc/update-manager/release-upgrades
...
Prompt=LTS
Étape 4: lancement de l’installation
Vous avez bien fait vos sauvegardes? C’est parti, on lance la procédure de mise à jour:
do-release-upgrade -d
Code language: JavaScript (javascript)
Il y a plusieurs écrans d’avertissement concernant SSH:
[...]
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] Y
Code language: PHP (php)
On a bien ouvert le port 1022 donc validez. Vous tombez sur un autre écran qui vous informe que certains services auront besoin d’être redémarrés.
Choisissez Yes pour que les services soient redémarrés automatiquement, sans intervention de votre part.
L’installation a pris entre 30 et 40 minutes sur le serveur. A la fin, on nous demande de rebooter le serveur pour appliquer tous les changements (avec mise à jour majeure du kernel):
[...]
System upgrade is complete.
Restart required.
To finish the upgrade, a restart is required.
If you select 'y' the system will be restarted.
Continue [yN] Y
Code language: PHP (php)
Et voilà, après redémarrage de la machine, tous nos services sont opérationnels.
Dernière étape: réactivation des sources de dépôts pour notre nouvelle version d’Ubuntu
La mise à jour désactive les sources de dépôts qui se trouvent dans le dossier /etc/apt/sources.list.d/
. Il faut donc éditer les fichiers et, dans notre cas, remplacer bionic
par focal
.
Quelques copiés/collés plus tard, nous pouvons nous assurer que tout est vraiment à jour avec un ultime:
apt update && apt upgrade
Vérification de la version du serveur:
lsb_release -a
Résultats:
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 20.04 LTS
Release: 20.04
Codename: focal
Code language: CSS (css)
Mise à jour réussie, en moins d’une heure.
Envie d'ajouter des fonctionnalités exceptionnelles à votre site WordPress ou WooCommerce? Je suis là pour vous aider.
Bonjour moi je souhaite Installer Ubuntu 20 sur serveur dédier chez OVH, merci de m’aider je suis vraiment nouveau dans tout ceci.