Avant de mettre à jour debian 11 vers 12, voici quelques nouveautés à propos de Debian 12. Je vous conseille aussi de regarder la version complète rédigée par Debian.
1/ Quelles sont les nouveautés de Debian 12 utiles à savoir pour un VPS ?
1.1/ Voici la liste des paquets importants pour un VPS qui seront mis à jour s'ils sont installés :
Paquet | Version dans Debian 11 | Version dans Debian 12 |
---|---|---|
Apache | 2.4.54 | 2.4.57 |
Dovecot | 2.3.13 | 2.3.19 |
Exim | 4.94 | 4.96 |
GnuPG | 2.2.27 | 2.2.40 |
libc | 2.31 | 2.36 |
Linux | 5.10 | 6.1 |
MariaDB | 10.5 | 10.11 |
Nginx | 1.18 | 1.22 |
OpenLDAP | 2.4.57 | 2.5.13 |
OpenSSH | 8.4p1 | 9.2p1 |
Perl | 5.32 | 5.36 |
PHP | 7.4 | 8.2 |
Postfix | 3.5 | 3.7 |
PostgreSQL | 13 | 15 |
Python 3 | 3.9.2 | 3.11.2 |
systemd | 247 | 252 |
1.2/ Remplacement du paquet NTP par NTPSEC
NTP est un protocole pour mettre à jour l’horloge du serveur.
Si vous avez déjà le paquet ntp, il sera remplacé par le paquet ntpsec qui est un dérivé du paquet ntp en sécurisé.
Si vous n’avez pas de démon ntp ou équivalent, ce sera le paquet systemd-timesyncd qui sera installé.
1.3/ Remplacement de Puppet 5 par Puppet 7
Attention : ne mettez pas à jour les serveurs qui ont l’agent puppet en version inférieur à 7 avant de mettre à jour le serveur qui a le puppetmaster.
Il faut toujours mettre à jour puppetmaster *avant* tous les autres serveurs.
1.4/ Remplacement (non forcé) de rsyslog par systemd-journald
C’est la partie désagréable pour les anciens.
Il est temps d’envisager de supprimer rsyslog au profit de systemd-journald et ses journaux binaires non lisibles par beaucoup d’outils que vous utilisez sûrement.
Après la migration à Debian 12, vous pouvez supprimer rsyslog avec ces commandes :
apt-mark auto rsyslog
apt autoremove
Pour lire les journaux binaires, au lieu d’utiliser la commande tail (petit larme aux yeux), il faudra faire :
journalctl -ef
Si vous gardez tout de même rsyslog (au moins pendant un temps), tous les logs seront écrits par défaut dans un seul fichier /var/log/syslog (les fichiers alternatifs peuvent être supprimés).
1.5/ Python3 : changement pour l'installation des paquets externes
Par défaut, il n’est pas autorisé d’installer des paquets python non packagé par Debian. Il est possible d’outre-passer cette interdiction.
Mais désormais, les paquets externes doivent être installés dans des environnements python isolés à l’aide de la commande pipx ou des environnements python (python -m venv).
2/ Comment mettre à jour Debian 11 vers 12 ?
Avant de mettre à jour, votre serveur doit être sauvegardé à distance, dans un autre datacenter. Et je conseille d’avoir aussi une copie chez un hébergeur indépendant et une copie chez soi.
ATTENTION : PHP 7.4 SERA REMPLAÇÉ PAR PHP 8.2 !!!
2.1/ Mettre à jour les fichiers source-list
Une nouvelle section de dépôt fait son apparition. Sur un serveur, en théorie, ça ne sera pas utile mais c’est possible de la mettre : non-free-firmware.
Dans les fichiers /etc/apt/sources.list ou /etc/apt/sources.list.d/*, remplacez bullseye par bookworm :
deb http://deb.debian.org/debian bookworm main contrib non-free non-free-firmware
deb http://deb.debian.org/debian bookworm-updates main contrib non-free non-free-firmware
deb http://security.debian.org bookworm-security main contrib non-free non-free-firmware
2.2/ Mise à jour de la liste des paquets disponibles
apt update
2.3/ Mise à jour minimum
Ce processus permet de mettre à jour les paquets du système qui n’ajoute pas de nouvelles dépendances sur de nouveaux paquets ou qui n’en enlève pas :
apt -o Apt::Get::Assume-Yes=true -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" upgrade --without-new-pkgs
2.4/ Vérification de l'espace disque avant mise à jour complète
Je conseille de nettoyer l’espace disque et de vérifier l’espace disponible avant la mis à jour complète :
apt clean
apt --purge autoremove
apt -o APT::Get::Trivial-Only=true full-upgrade
[ ... ]
XXX upgraded, XXX newly installed, XXX to remove and XXX not upgraded.
Need to get xx.xMB of archives.
After this operation, AAAMB of additional disk space will be used.
S’il n’y a pas assez de place, il va s’afficher ce message :
E: You don't have enough free space in /var/cache/apt/archives/.
2.5/ Mise à jour finale
apt -o Apt::Get::Assume-Yes=true -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" full-upgrade
apt --purge autoremove
Si tout s’est bien passé :
reboot