Le noyau Linux est le composant central du système d'exploitation Linux. Il gère les ressources du système et constitue un pont entre le matériel et les logiciels de votre ordinateur.
Le noyau Linux a une conception modulaire. Un module de noyau, ou souvent appelé pilote, est un morceau de code qui étend les fonctionnalités du noyau. Les modules sont soit compilés en tant que modules chargeables, soit intégrés au noyau. Les modules chargeables peuvent être chargés et déchargés dans le noyau en cours d'exécution sur demande, sans qu'il soit nécessaire de redémarrer le système.
Généralement, les modules sont chargés à la demande par udev
(Gestionnaire de périphériques). Cependant, vous devrez parfois affiner la façon dont les modules sont chargés. Par exemple, vous devrez peut-être charger un module avec des paramètres supplémentaires ou empêcher le chargement automatique d'un module.
Vous pouvez charger manuellement un module dans le noyau en utilisant le modprobe
commande, ou automatiquement au démarrage en utilisant /etc/modules
ou /etc/modules-load.d/*.conf
fichiers.
Dans cet article, nous expliquerons comment utiliser modprobe
pour ajouter et supprimer des modules du noyau Linux. modprobe
fait partie de kmod
, un binaire qui implémente plusieurs programmes utilisés pour gérer les modules du noyau Linux.
Ajout de modules de noyau #
Les modules du noyau sont stockés dans le /lib/modules/<kernel_version>
annuaire. Vous trouvez la version du noyau en cours d'exécution, utilisez le uname -r
commande.
Seuls les utilisateurs disposant de privilèges administratifs peuvent gérer les modules du noyau.
Pour charger un module, invoquez le modprobe
commande suivie du nom du module :
modprobe module_name
La modprobe
chargera le module donné et toutes les dépendances de module supplémentaires. Un seul module peut être spécifié sur la ligne de commande.
Utilisez le lsmod
commande pour confirmer que le module est chargé :
lsmod | grep module_name
Pour charger un module avec des paramètres supplémentaires, utilisez le parameter=value
syntaxe :
modprobe module_name parameter=value
La commande accepte plusieurs parameter=value
paires séparées par un espace.
En règle générale, vous devrez charger le module lors du démarrage du système. Vous pouvez le faire en spécifiant le module et ses paramètres dans un fichier à l'intérieur du /etc/modules-load.d
annuaire. Les fichiers doivent se terminer par .conf
et peut avoir n'importe quel nom :
option module_name parameter=value
Les paramètres spécifiés dans ces fichiers sont lus par udev
, qui charge les modules au démarrage du système en utilisant modprobe
.
Suppression des modules du noyau #
Pour supprimer un module, invoquez le modprobe
commande avec le -r
option suivie du nom du module :
modprobe -r module_name
modprobe
supprimera également les dépendances de module inutilisées.
Lorsqu'il est invoqué avec -r
, la commande accepte plusieurs modules comme arguments :
modprobe -r module_name1 module_name2
Vous pouvez également utiliser le rmmod
commande pour décharger un module du noyau Linux.
Si vous souhaitez empêcher le chargement d'un module Kernel au démarrage, créez un .conf
fichier avec n'importe quel nom à l'intérieur du /etc/modprobe.d
. La syntaxe est :
blacklist module_name
Si vous souhaitez mettre des modules supplémentaires sur liste noire, spécifiez les modules sur une nouvelle ligne ou créez un nouveau .conf
fichier.
Conclusion #
La modprobe
La commande vous permet d'ajouter et de supprimer des modules du noyau Linux.
N'hésitez pas à laisser un commentaire si vous avez des questions.