Lors de la compilation d'un module de noyau personnalisé sur des systèmes Linux, il sera nécessaire que nous ayons des fichiers d'en-tête de noyau installés sur le système qui incluent les fichiers d'en-tête c pour le noyau Linux respectif. Les fichiers d'en-tête du noyau fournissent différents types de fonctions, ils sont en un mot un résumé des instructions dont une application a besoin pour créer les modules du noyau afin que sans accès aux en-têtes du noyau, de nombreux programmes ne puissent pas fonctionner comme prévu sur Linux.
Lorsqu'une application a accès au code du noyau réel pour créer les modules du noyau, par opposition à sa forme binaire, cela s'appelle avoir accès à l'en-tête du noyau. A travers ce tutoriel, nous allons voir comment installer ces en-têtes dans CentOS 7 de manière simple et fonctionnelle.
Pour y parvenir, il faudra installer la fonction Kernel Headers, et pour cela nous devons vérifier qu'elle correspond à la version du noyau actuellement installée dans le système d'exploitation. Ainsi, si la version Kernel est livrée avec l'installation de distribution par défaut ou si nous avons mis à jour le Kernel en utilisant le gestionnaire de packages yum à partir des référentiels du système de base, il sera nécessaire d'installer les en-têtes de noyau correspondants en utilisant uniquement le gestionnaire de packages.
Étape 1
Tout d'abord, nous allons confirmer que les en-têtes de noyau correspondants sont déjà installés dans le chemin / usr / src / kernels / dans CentOS 7 et nous le vérifions avec les commandes suivantes :
cd / usr / src / noyaux / ls -lLe résultat sera le suivant :
Étape 2
Si dans le résultat, il n'y a pas d'en-têtes de noyau correspondants dans le répertoire / usr / src / kernels / , nous allons installer les en-têtes de noyau, qui sont obtenus via le package kernel-devel qui peut être installé à l'aide du gestionnaire de packages par défaut comme suit :
yum install kernel-devel (CentOS / RHEL 7) dnf install kernel-devel (Fedora)
Étape 3
Là, nous entrons la lettre y pour confirmer le téléchargement et l'installation du package.
Après avoir installé le package kernel-devel, nous pouvons placer tous les fichiers d'en-tête du noyau dans le répertoire / usr / src / kernels avec la commande suivante :
ls -l / usr / src / noyaux /
Là, nous pouvons voir des détails spécifiques du noyau.
Étape 4
Maintenant, s'il est nécessaire d'avoir des fichiers d'en-tête pour le noyau Linux à utiliser par la glibc, nous devons installer le paquet kernel-header avec la commande suivante.
yum install kernel-headers (CentOS / RHEL 7) dnf install kernel-headers (Fedora)Ainsi, nous avons appris à installer simplement les en-têtes du noyau dans CentOS 7.