Kernel module (Français)
Un module est une fonctionnalité du noyau qui peut être (dé)chargée à chaud. Les modules sont stockés dans /lib/modules/version_noyau
(uname -r
pour avoir la version du noyau).
Obtenir des informations
Lister les modules chargés :
lsmod
Afficher des informations sur un module :
modinfo nom_du_module
Afficher les dépendances d'un module :
modprobe --show-depends nom_du_module
Lister les options d'un module chargé :
systool -v -m nom_du_module
Voir la configuration :
modprobe -c
Chargement
Pour ajouter un module manuellement :
modprobe nom_du_module
Pour spécifier explicitement un module à charger au boot, vous devez créer un fichier dans /etc/modules-load.d
, le nom importe peu du moment qu'il se termine par .conf
:
/etc/modules-load.d/mon_module.conf
mon_module
Supression
Pour enlever manuellement un module :
modprobe -r nom_du_module # ou rmmod nom_du_module
/etc/modprobe.d
Les modules peuvent se paramétrer à l'aide de fichiers contenu dans /etc/modprobe.d
(de même que modules-load.d
, le nom du fichier crée doit se finir en .conf
).
Paramètres
/etc/modprobe.d/mon_module.conf
options mon_module param1=val1
mon_module.param1=val1
Alias
On peut spécifier un alias pour avoir un nom plus évocateur :
/etc/modprobe.d/wlan.conf
alias bcma-pci-bridge wlan0
Certains modules ont des alias utilisés pour le chargement en automatique; vous pouvez désactiver ces alias pour empêcher le chargement :
/etc/modprobe.d/no_auto.conf
# Pas de bluetooth en auto alias net-pf-31 off # ni d'ipv6 alias net-pf-10 off
Blacklist
Vous pouvez vouloir empêcher le chargement en auto d'un module pour différentes raisons (pas besoins du matériel, problème quelconque avec le module, etc.), pour cela :
/etc/modprobe.d/modprobe.conf
# Ne pas activer le speaker blacklist pcspkr
Ceci dit, blacklist
ne fait qu'empêcher le chargement du module cité, ceci n'empêche pas le chargement manuel, ni le chargement du à une dépendance d'un autre module. Pour éviter cela :
/etc/modprobe.d/modprobe.conf
install module_a_pas_charger /bin/false
Vous pouvez aussi désactiver un module depuis la ligne du noyau :
modprobe.blacklist=module1,module2,...