====== Utiliser des noyaux récents sous Debian ======
===== Cas d'utilisation =====
Je souhaite faire tourner un ordi équipé d'un processeur Intel de 12è génération sous Debian 11((Car c'est la version stable en juillet 2022.)). Le noyau de Debian 11 est 5.10 alors qu'il me faut au minimum 5.15((Qui dispose de pilotes permettant d'exploiter le composant graphique intégré au processeur et le composant réseau équipant la carte-mère.)).
===== Installation depuis les backports =====
Source : [[https://www.how2shout.com/linux/how-to-install-and-use-backports-in-debian-11-bullseye/|How to install and use Backports in Debian 11 Bullseye]]
Les dépôts //backports// de Debian permettent d'accéder à des composants logiciels ou des mise à jour héritées des branches les plus actives du projet Debian (//testing// ou //experimental//). Les composants disponibles dans ces dépôts bénéficient du support technique officiel de Debian, sécurité comprise.
À la date de la rédaction, le noyau 5.18 étant disponible sur ces dépôts, il est recommandé de s'y fournir. Une solution plus aggressive et plus risquée consisterai à puiser directement dans les dépôts testing ou exprimental, [[#installation_depuis_la_branche_experimentale|comme expliqué plus loin]].
Les opérations qui suivent sont effectuées avec les droits de superutilisatrice.
==== Préparation ====
Mettre à jour le système :
# apt update
# apt upgrade -y
==== Ajout des dépôts backports ====
# echo "deb http://deb.debian.org/debian bullseye-backports main contrib non-free" | tee -a /etc/apt/sources.list
# echo "deb-src http://deb.debian.org/debian bullseye-backports main contrib non-free" | tee -a /etc/apt/sources.list
# apt update
À partir d'ici, ne pas faire de mise à jour intempestive avant d'avoir achevé l'étape suivante.
==== Limiter l'utilisation des dépôts backports aux noyaux ====
Je ne souhaite pas que tout mon système soit mis à jour en version expérimentale. Je voulais juste récupérer les noyaux. Je dois donc configurer apt pour qu'il agisse ainsi :
# nano /etc/apt/preferences
et j'insère le paramétrage suivant (les //headers// sont indispensables si on utilise VirtualBox ou toute autre programme utilisant les fonctionnalités apportées par //dkms// :
Package: *
Pin: release a=bullseye
Pin-Priority: 500
Package: linux-image-amd64
Pin: release a=bullseye-backports
Pin-Priority: 1000
Package: linux-headers-amd64
Pin: release a=bullseye-backports
Pin-Priority: 1000
J'enregistre la modification, quitte l'éditeur((**Ctrl+O Ctrl+X**)) et applique la configuration :
# apt update
==== Installation et mise à jour ultérieures des noyaux ====
On fait comme d'habitude :
# apt upgrade
Lors de la première exécution, cette commande déclenchera le remplacement du noyau actuel par un nouveau noyau issu de la branche //backports//. Le exécutions suivantes effectueront des mises à jours du noyau, s'il en existe sur les dépôts //backports//.
Et voilà le résultat :
# lsb_release -d
Description: Debian GNU/Linux 11 (bullseye)
# uname -r
5.18.0-0.bpo.1-amd64
// uname -a donnera non seulement la version du noyau mais aussi le paquetage correspondant
==== Et c'est tout ? ====
Si votre ordi fonctionne correctement, c'est que tout ce dont vous aviez besoin se trouvait dans le noyau. C'est terminé :-)
=== Firmwares ===
Mais certains matériels peuvent nécessiter l'installation de firmwares supplémentaires. S'ils se trouvent dans les dépôts //backports// il suffit d'adapter le fichier de configuration de //apt// pour qu'il prenne en compte les paquetages correspondants. À titre d'illustration, après quelques mois d'utilisation et afin d'assurer la cohérence des mises à jours, j'ai dû ajouter plusieurs exceptions à la liste minimale indiquée plus haut (voir [[#fichier_apt_preferences|annexes]]).
===== Installation depuis la branche expérimentale =====
Source : [[https://www.linuxcapable.com/how-to-install-linux-kernel-5-15-on-debian-11-bullseye/|How to Install Linux Kernel 5.15 on Debian 11 Bullseye]]
Il s'agit d'une solution à n'utiliser que pour… exprimenter ;-) Dans tout autre cas, l'utilisation des //backports// est recommandée.
Comme l'indique la FAQ de Debian : "Les utilisateurs ne devraient pas utiliser ces paquets parce qu'ils peuvent être dangereux et nuisible même pour les utilisateurs((Une fois n'est pas coutume, c'est également vrai pour les utilisatrices :-D)) les plus expérimentés".
Comme son nom l'indique, la branche //experimental// de Debian expérimente et empaquette les nouvelles versions de noyaux. Ainsi, au jour de la rédaction, le noyau 5.19 est disponible. Si l'on espère quelque chose de précis de cette version du noyau, c'est un moyen d'y accéder, toute packagée. La procédure est similaire à celle indiquée pour l'utilisation des dépôts //backports//.
Les opérations qui suivent sont effectuées avec les droits de superutilisatrice.
==== Préparation ====
Mettre à jour le système :
# apt update
# apt upgrade -y
==== Ajout des dépôts expérimentaux ====
# echo "deb http://deb.debian.org/debian experimental main contrib non-free" | tee -a /etc/apt/sources.list
# echo "deb-src http://deb.debian.org/debian experimental main contrib non-free" | tee -a /etc/apt/sources.list
# apt update
À partir d'ici, ne pas faire de mise à jour intempestive avant d'avoir achevé l'étape suivante.
==== Limiter l'utilisation des dépôts experimentaux aux noyaux ====
Je ne souhaite pas que tout mon système soit mis à jour en version expérimentale. Je voulais juste récupérer les noyaux. Je dois donc configurer apt pour qu'il agisse ainsi :
# nano /etc/apt/preferences
et j'insère le paramétrage suivant :
Package: *
Pin: release a=bullseye
Pin-Priority: 500
Package: linux-image-amd64
Pin: release a=experimental
Pin-Priority: 1000
J'enregistre la modification, quitte l'éditeur((**Ctrl+O Ctrl+X**)) et applique la configuration :
# apt update
==== Installation et mise à jour ultérieures des noyaux ====
On fait comme d'habitude :
# apt upgrade
Lors de la première exécution, cette commande déclenchera le remplacement du noyau actuel par un nouveau noyau issu de la branche expérimentale. Le exécutions suivantes effectueront des mises à jours du noyau, s'il en existe sur les dépôts expérimentaux.
===== Annexes =====
==== Fichier apt/preferences ====
État des exceptions après quelques mois d'utilisation :
Package: linux-image-amd64
Pin: release a=bullseye-backports
Pin-Priority: 1000
Package: linux-headers-amd64
Pin: release a=bullseye-backports
Pin-Priority: 1000
Package: firmware-linux
Pin: release a=bullseye-backports
Pin-Priority: 1000
Package: firmware-linux-free
Pin: release a=bullseye-backports
Pin-Priority: 1000
Package: firmware-linux-nonfree
Pin: release a=bullseye-backports
Pin-Priority: 1000
Package: firmware-misc-nonfree
Pin: release a=bullseye-backports
Pin-Priority: 1000
Package: amd64-microcode
Pin: release a=bullseye-backports
Pin-Priority: 1000
Package: firmware-realtek
Pin: release a=bullseye-backports
Pin-Priority: 1000
Package: firmware-amd-graphics
Pin: release a=bullseye-backports
Pin-Priority: 1000