#1 Le 08/09/2021, à 07:53
- zeugme
[résolu] Headers et kernel
Bonjour à tous,
J'ai une 21.04 qui tourne. Elle tourne bien même ![]()
Je suis sous kernel 5.14.0 (1)
Régulièrement, via apt, les packages linux-headers sont proposés à la mise à jour.
Aujourd'hui, on me propose ceux-ci :
linux-headers-5.11.0-34 linux-headers-5.11.0-34-generic linux-image-5.11.0-34-generic linux-modules-5.11.0-34-generic linux-modules-extra-5.11.0-34-generic
En général, je procède aux mises à jour et tout va bien, mais j'aimerais mieux comprendre ![]()
Plusieurs questions :
- comment ca fonctionne qu'il n'y ai pas de lien entre les version du kernel utilisé et les headers ?
- c'est quoi finalement les headers ? J'avais en tête des headers C, donc des descriptions d'API système.
- ca cause image aussi, finalement, je me rend compte que malgré des années de pratique, je ne sais pas distinguer précisément ces concepts : headers, images et kernel.
Merci pour votre aide !
(1) J'utilise le script ubuntu-mainline-kernel.sh
https://github.com/pimlie/ubuntu-mainline-kernel.sh
A ceux qui se demanderaient pourquoi je suis en 5.14.
Mais oui, pourquoi au fait ? ![]()
Je suis avec une machine au hardware récent, un proc AMD et les progrès sur le support de ce matos sont importants dans les derniers kernel.
J'ai donc un meilleur support hardware avec des kernels super récents.
Dernière modification par zeugme (Le 08/09/2021, à 12:44)
Hors ligne
#2 Le 08/09/2021, à 08:01
- Qid

Re : [résolu] Headers et kernel
J'utilise le script ubuntu-mainline-kernel.sh
https://github.com/pimlie/ubuntu-mainline-kernel.shA ceux qui se demanderaient pourquoi je suis en 5.14.
Mais oui, pourquoi au fait ?
Je suis avec une machine au hardware récent, un proc AMD et les progrès sur le support de ce matos sont importants dans les derniers kernel.
J'ai donc un meilleur support hardware avec des kernels super récents.
En fait tu as la réponse à ta question de base :
Tu as forcé ton système à utiliser du 5.14 au lieu du 5.11 normal... Sauf que en fait le suivi des mises-à-jour standard du système il s'en fout de ça puisque tu passes hors dépôt... Et donc il continuera à te proposer les maj de ses kernel même si toi tu es passé au dessus...
Pour le reste je serai moins efficace pour te clarifier les choses... à par te dire que ta lecture de la situation n'est pas bonne... Mais normalement tu as dû le comprendre avec le début de mon post
edit : ajout d'une précision
Dernière modification par Qid (Le 08/09/2021, à 08:05)
"GNU/Linux c'est que du bon mais M$ Windows ce n'est pas si mal"
Référent technique d'un Groupe d'Utilisateur du Libre
plus d'info sur mon profil
Hors ligne
#3 Le 08/09/2021, à 08:06
- zeugme
Re : [résolu] Headers et kernel
Oui, je comprends bien pourquoi cela ne me propose pas de headers 5.14, ca OK.
Je n'attends d'ailleurs pas qu'apt les propose vu que j'ai installé (forcé) le kernel 5.14 sans apt, en effet.
La situation n'est pas bonne
Je ne sais pas.
Justement, je voudrais comprendre et mieux différencier les concepts headers, image et kernel pour en avoir le coeur net.
Dernière modification par zeugme (Le 08/09/2021, à 08:11)
Hors ligne
#4 Le 08/09/2021, à 08:24
- Qid

Re : [résolu] Headers et kernel
Justement, je voudrais comprendre et mieux différencier les concepts headers, image et kernel pour en avoir le coeur net.
C'est ce que je disais : pour ça c'est sans moi... Quand j'ai joué avec mainline moi aussi je ne me suis pas posé ce genre de question...
"GNU/Linux c'est que du bon mais M$ Windows ce n'est pas si mal"
Référent technique d'un Groupe d'Utilisateur du Libre
plus d'info sur mon profil
Hors ligne
#5 Le 08/09/2021, à 09:10
- Nuliel

Re : [résolu] Headers et kernel
Bonjour,
As tu une vraie bonne raison d'utiliser un noyau 5.14?
Comme expliqué par Qid, tu as installé un noyau 5.14 hors dépôt, mais lorsque tu fais tes maj, le système met les différents paquets installés à jour. Il y a notamment le métapaquet linux-base (pas sûr du nom) qui pointe vers le noyau actuel de la distribution. Donc c'est normal que lorsque tu fais tes maj, le système installe ces noyaux. Par contre grub démarre par défaut sur le noyau le plus récent.
Alors la différence entre headers, image, modules, et modules-extra: image c'est le cœur, sans ça tu démarres pas. Pour pouvoir gérer du matériel, on passe souvent par des modules, ce sont des bouts de code qui viennent se brancher au noyau linux pour par exemple gérer une carte wifi. Ces modules sont répartis en 3 catégories: soit ils sont inclus au sein même du noyau et se trouve ainsi dans l'image, soit ils sont sous forme de fichier et ils peuvent se trouver dans modules ou modules-extra. Les headers permettent principalement de compiler un module noyau lorsqu'il n'est pas dispo dans modules ni modules-extra mais sur github par exemple. On les installe généralement en même temps que build-essential ou dkms. Dans le cas où on n'a pas besoin de rajouter de module noyau, on peut normalement se passer des headers.
Dernière modification par Nuliel (Le 08/09/2021, à 09:11)
[ poster un retour de commande ] [ poster une photo ]
Thinkpad x220, Dell latitude E7270 (i7 6600U, 16 Go de RAM, ...), Thinkstation E32 modifié: i5-4570, GTX 1060 6 Gb, 16 Gb de RAM, ...
Mon nouveau blog: nuliel.fr
Hors ligne
#6 Le 08/09/2021, à 09:18
- nany

Re : [résolu] Headers et kernel
Bonjour,
le métapaquet linux-base (pas sûr du nom)
linux-generic précisément.
Rien à ajouter pour le reste.
Hors ligne
#7 Le 08/09/2021, à 09:24
- zeugme
Re : [résolu] Headers et kernel
Bonjour,
As tu une vraie bonne raison d'utiliser un noyau 5.14?
Mais oui, je l'ai même expliqué, du coup, je ne comprends ta phrase ...
Si tu n'est pas d'accord avec mes raisons, je veux bien en discuter ![]()
De fait, j'aimerais mieux rester avec le kernel validé pour la distrib.
Plus le temps va passer, plus l'écart va diminuer, car je ne vais pas rester toujours sur les derniers kernels.
En effet, mon but est que tout mon hardware soit reconnu, donc au bout d'un moment, le kernel de la distrib sera suffisant, mais cela ne semble pas encore être le cas quand je vois les releases notes des kernels.
Donc c'est normal que lorsque tu fais tes maj, le système installe ces noyaux.
Tout à fait.
Par contre grub démarre par défaut sur le noyau le plus récent.
OK, ce qui explique pourquoi ca démarre bien sur le 5.14 après usage de la commande ubuntu-mainline.
Alors la différence entre headers, image, modules, et modules-extra: image c'est le cœur, sans ça tu démarres pas. Pour pouvoir gérer du matériel, on passe souvent par des modules, ce sont des bouts de code qui viennent se brancher au noyau linux pour par exemple gérer une carte wifi. Ces modules sont répartis en 3 catégories: soit ils sont inclus au sein même du noyau et se trouve ainsi dans l'image, soit ils sont sous forme de fichier et ils peuvent se trouver dans modules ou modules-extra. Les headers permettent principalement de compiler un module noyau lorsqu'il n'est pas dispo dans modules ni modules-extra mais sur github par exemple. On les installe généralement en même temps que build-essential ou dkms. Dans le cas où on n'a pas besoin de rajouter de module noyau, on peut normalement se passer des headers.
Ok, cela confirme ma compréhension des headers, je confirme ne pas en avoir besoin, je n'ai aucune envie de me lancer dans de la compile noyaux ou module. J'ai plus l'age ![]()
Finalement, tant que le nouveau kernel est compatible avec les modules compilés pour le kernel de la distrib, ca ira puisque le kernel installé via ubuntu-mainline utilise les modules installés via apt.
C'est ca ?
Hors ligne
#8 Le 08/09/2021, à 09:29
- xubu1957

Re : [résolu] Headers et kernel
Bonjour,
Voir le § 4 de la Doc kernel#installer_une_autre_version_de_noyau
Important : Pensez à passer vos sujets en [Résolu] lorsque ceux-ci le sont, au début du titre en cliquant sur Modifier sous le premier message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci.
Xubuntu 20.04 LTS - Lenovo T410 -18.04.1 LTS Toshiba Satellite A300 Membre de Linux-Azur
Hors ligne
#9 Le 08/09/2021, à 09:33
- Qid

Re : [résolu] Headers et kernel
tant que le nouveau kernel est compatible avec les modules compilés pour le kernel de la distrib, ca ira puisque le kernel installé via ubuntu-mainline utilise les modules installés via apt.
C'est ca ?
non ça c'est faux ! et d'ailleur entre autre je crois me souvenir que justement mainline ne gère absolument pas les dkms ce qui fait que virtualbox etait inutilisable (c'est un exemple de tête)... en tous cas si vraiment tu veux jouer je ne pense pas que mainline soit le plus adapté : contrairement à ce que ut dis tu ferais mieux de te pencher sur la compilation de noyau... mais ce sera sans moi
"GNU/Linux c'est que du bon mais M$ Windows ce n'est pas si mal"
Référent technique d'un Groupe d'Utilisateur du Libre
plus d'info sur mon profil
Hors ligne
#10 Le 08/09/2021, à 09:41
- Nuliel

Re : [résolu] Headers et kernel
Ah pardon j'avais pas vu la fin de ton message 1, je ne connais pas les améliorations apportées par le noyau 5.14 sur le matos amd, donc si les améliorations sont vraiment importantes, avoir un noyau plus récent est une bonne idée. Après le gros pb de mainline, c'est que les noyaux ne sont pas mis à jour, c'est pour ça que je considère mainline uniquement comme un outil de test pour voir si un noyau plus récent permettrait de supporter tel ou tel matériel. Dans pas longtemps (en octobre il me semble), je crois que ton système va te proposer des noyaux plus récents (via le HWE). A voir si ces noyaux seront assez récents, ce qui serait à mon avis bien mieux que d'utiliser mainline.
Figure toi que ça arrive assez souvent de devoir compiler un module noyau pour gérer une carte wifi, une clé bluetooth, ...
Il faut toujours utiliser les modules qui viennent avec le noyau que tu as installé car le code du noyau change très régulièrement.
Tu as probablement installé les paquets deb avec dpkg (dpkg ne gère pas les dépendances, par contre apt oui). L'intérêt du deb, c'est que ça se désinstalle facilement (avec apt ou dpkg).
[ poster un retour de commande ] [ poster une photo ]
Thinkpad x220, Dell latitude E7270 (i7 6600U, 16 Go de RAM, ...), Thinkstation E32 modifié: i5-4570, GTX 1060 6 Gb, 16 Gb de RAM, ...
Mon nouveau blog: nuliel.fr
Hors ligne
#11 Le 08/09/2021, à 09:43
- cqfd93

Re : [résolu] Headers et kernel
Bonjour,
Dans pas longtemps (en octobre il me semble), je crois que ton système va te proposer des noyaux plus récents (via le HWE). A voir si ces noyaux seront assez récents, ce qui serait à mon avis bien mieux que d'utiliser mainline.
Il n'y a pas de HWE dans les version non-LTS, la seule solution sera de faire la mise à niveau vers 21.10.
− cqfd93 −
Hors ligne
#12 Le 08/09/2021, à 09:45
- Nuliel

Re : [résolu] Headers et kernel
Oups, effectivement, va falloir que je lise plus attentivement les messages avant de répondre ![]()
+1 pour un passage à la 21.10
[ poster un retour de commande ] [ poster une photo ]
Thinkpad x220, Dell latitude E7270 (i7 6600U, 16 Go de RAM, ...), Thinkstation E32 modifié: i5-4570, GTX 1060 6 Gb, 16 Gb de RAM, ...
Mon nouveau blog: nuliel.fr
Hors ligne
#13 Le 08/09/2021, à 09:47
- xubu1957

Re : [résolu] Headers et kernel
@cqfd93
Salut !
Avec :
Description: Ubuntu 21.04
Release: 21.04
Codename: hirsuteDans ce fil on a vu ces noyaux, hier !
ii linux-headers-5.11.0-16 5.11.0-16.17 all
ii linux-headers-5.11.0-16-generic 5.11.0-16.17 amd64
ii linux-image-5.11.0-16-generic 5.11.0-16.17 amd64
ii linux-modules-5.11.0-16-generic 5.11.0-16.17 amd64
ii linux-modules-extra-5.11.0-16-generic 5.11.0-16.17 amd64
ii linux-headers-5.11.0-31 5.11.0-31.33 all
ii linux-headers-5.11.0-31-generic 5.11.0-31.33 amd64
ii linux-image-5.11.0-31-generic 5.11.0-31.33 amd64
ii linux-modules-5.11.0-31-generic 5.11.0-31.33 amd64
ii linux-modules-extra-5.11.0-31-generic 5.11.0-31.33 amd64ii linux-generic-hwe-20.04 5.11.0.31.33 amd64
ii linux-headers-generic-hwe-20.04 5.11.0.31.33 amd64
ii linux-image-generic-hwe-20.04 5.11.0.31.33 amd64hwe-20.04 ?? ![]()
Noyau courant : 5.11.0-31-generic x86_64Dernière modification par xubu1957 (Le 08/09/2021, à 10:20)
Important : Pensez à passer vos sujets en [Résolu] lorsque ceux-ci le sont, au début du titre en cliquant sur Modifier sous le premier message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci.
Xubuntu 20.04 LTS - Lenovo T410 -18.04.1 LTS Toshiba Satellite A300 Membre de Linux-Azur
Hors ligne
#14 Le 08/09/2021, à 09:51
- Qid

Re : [résolu] Headers et kernel
Bonjour,
Nuliel a écrit :Dans pas longtemps (en octobre il me semble), je crois que ton système va te proposer des noyaux plus récents (via le HWE). A voir si ces noyaux seront assez récents, ce qui serait à mon avis bien mieux que d'utiliser mainline.
Il n'y a pas de HWE dans les version non-LTS, la seule solution sera de faire la mise à niveau vers 21.10.
Effectivement mais faut dire aussi que c'était un peu une idée à la con de ne pas être en lts... Tu crois pas ?
"GNU/Linux c'est que du bon mais M$ Windows ce n'est pas si mal"
Référent technique d'un Groupe d'Utilisateur du Libre
plus d'info sur mon profil
Hors ligne
#15 Le 08/09/2021, à 09:58
- Tamarou

Re : [résolu] Headers et kernel
c'était un peu une idée à la con de ne pas être en lts... Tu crois pas ?
C'est risqué d'écrire cela, surtout sur un sujet où un modérateur est présent ![]()
Hors ligne
#16 Le 08/09/2021, à 10:10
- Qid

Re : [résolu] Headers et kernel
Qid a écrit :c'était un peu une idée à la con de ne pas être en lts... Tu crois pas ?
C'est risqué d'écrire cela, surtout sur un sujet où un modérateur est présent
Bah... C'est une question comme une autre... J'aurais été dans l'affirmative admettons mais là... ![]()
"GNU/Linux c'est que du bon mais M$ Windows ce n'est pas si mal"
Référent technique d'un Groupe d'Utilisateur du Libre
plus d'info sur mon profil
Hors ligne
#17 Le 08/09/2021, à 10:11
- zeugme
Re : [résolu] Headers et kernel
Merci pour toutes vos réponses et les liens.
Très intéressant. Je n'ai pas encore tout lu !
Je ne rentre pas dans la discussion sur LTS, j'ai un avis sur la question et du vécu sur le sujet, mais si ca doit se faire, ca sera plutôt dans un autre message ![]()
Je basculerai sur la 21.10, pas sur la toute première sortie, mais ca se fera.
Pour ce qui est de mainline, il n'y a pas de mise à jour via apt (forcément), mais il y a des mises à jour via mainline !
Dans ma routine liée aux mises à jours systèmes et paquets, j'ai scripté plusieurs actions apt et mainline, de sorte que j'ai les mises à jour des kernels.
Tout comme apt, je choisi de faire la maj ou non, c'est pas upgradé automatiquement.
J'upgrade en fonction des releases notes sur kernel.org.
Ca se fait bien.
Hors ligne
#18 Le 08/09/2021, à 10:18
- nany

Re : [résolu] Headers et kernel
Bah... C'est une question comme une autre...
Non, c’est une question « à la con ». ![]()
Hors ligne
#19 Le 08/09/2021, à 10:26
- Qid

Re : [résolu] Headers et kernel
Dans ma routine liée aux mises à jours systèmes et paquets, j'ai scripté plusieurs actions apt et mainline, de sorte que j'ai les mises à jour des kernels.
Tout comme apt, je choisi de faire la maj ou non, c'est pas upgradé automatiquement.
J'upgrade en fonction des releases notes sur kernel.org.
Ca se fait bien.
Tu te complique grandement les choses quand-même non ? Et pour quel intérêt ?
"GNU/Linux c'est que du bon mais M$ Windows ce n'est pas si mal"
Référent technique d'un Groupe d'Utilisateur du Libre
plus d'info sur mon profil
Hors ligne
#20 Le 08/09/2021, à 10:35
- zeugme
Re : [résolu] Headers et kernel
Tu te complique grandement les choses quand-même non ?
Chacun a son seuil, c'est certain, mais je ne trouve pas cela complexe du tout.
Même niveau de difficulté que apt. Tout est scripté.
EDIT: ah oui, pour lire les releases notes des kernel ?
Oui, en effet, c'est plus complexe que apt et pas à la portée de tous.
Et pour quel intérêt ?
Déjà expliqué dans les messages précédents: pour le hardware récent.
Dernière modification par zeugme (Le 08/09/2021, à 10:36)
Hors ligne
#21 Le 08/09/2021, à 10:41
- Qid

Re : [résolu] Headers et kernel
En fait ma réflexion est que je ne comprends pas l'intérêt que tu as à tout gérer manuellement... Plus exactement de toutes façons si il y a des mises à jours il faut les faire alors je ne vois pas pourquoi filtrer... Après pour ce qui est du choix du kernel c'est un autre débat qui lui est bien compréhensible en effet...
Mais bon on ne va pas débattre de ça ici si ça ne fait pas avancer tes questionnements de départ
"GNU/Linux c'est que du bon mais M$ Windows ce n'est pas si mal"
Référent technique d'un Groupe d'Utilisateur du Libre
plus d'info sur mon profil
Hors ligne
#22 Le 08/09/2021, à 10:45
- zeugme
Re : [résolu] Headers et kernel
Oui, tout à fait.
Cela dit, il n'y a rien de "filtré", comprends pas ...
Sinon, globalement, il me semble bon et souhaitable de bien lire ce qui va être mis à jour, apt, kernel, peu importe la source et le moyen.
C'est une question de maîtrise du système.
Par exemple, si un truc se mets à dérailler dans la journée, avec des mises à jour récente en tête, cela aidera à revenir en arrière (ou tout autre action utile en lien avec la défaillance apportée par la mise à jour).
Hors ligne