29
juillet
2026
10:46

Passer un paramètre à un module/driver Linux

29 juillet 2026 10:46

Spécifier un paramètre pour lancer un module ou un pilote sous Linux.

Les modules du noyau introduisent des fonctionnalités supplémentaires. Par exemple, la prise en charge matérielle (pilotes).
Certains modules ont des paramètres de lancement.

1) Comment puis-je savoir quels modules (pilotes) sont chargés dans le système d'exploitation Linux ?

sudo lsmod | less

Une autre façon :

cd /lib/modules/$(uname -r)/kernel/drivers/ 
ls | less

2) Comment afficher les informations d'aide sur un module spécifique ?

sudo modinfo MODULE_NAME

où MODULE_NAME remplace par le nom du module.

Par exemple :

sudo modinfo rtw_usb

3) Comment afficher des informations abrégées uniquement sur les paramètres du module ?

sudo modinfo -p MODULE_NAME

Par exemple :

sudo modinfo -p rtw_usb

Conclusion :
switch_usb_mode : Set to N to disable switching to USB 3 mode to avoid
potential interference in the 2.4 GHz namd (default: Y) (boot)

4) Comment puis-je connaître la valeur actuelle du paramètre du module dans le système ?

Certains modules (pas tous) se déclarent dans la structure des répertoires /sys/module/MODULE_NAME/parameters

ls /sys/module/MODULE_NAME/parameters
cat /sys/module/MODULE_NAME/parameters/PARAMETER


MODULE_NAME - remplacer par le nom du module,
PARAMETRE - remplacer par le nom du paramètre.

Exemple :

cat /sys/module/rtw_usb/parameters/switch_usb_mode

Conclusion :
O ou N

5) Comment passer une nouvelle valeur de paramètre à un module ?

Format des paramètres :

MODULE_NAME.PARAMETER=VALEUR

où VALEUR est la valeur. Par exemple, N.

Les paramètres du module peuvent être spécifiés :

  • lors de la construction du noyau
  • au démarrage du PC dans les paramètres de lancement du noyau - dans le fichier de configuration /etc/default/grub
  • en temps réel dans /proc/sys/

Je ne considérerai l'option qu'au chargement du PC

`GRUB_CMDLINE_LINUX_DEFAULT="éclaboussure silencieuse rtw_usb.switch_usb_mode=N"

où rtw_usb.switch_usb_mode=N - attribuant au module rtw_usb à son paramètre switch_usb_mode la valeur N.

Autre exemple :

`GRUB_CMDLINE_LINUX_DEFAULT="éclaboussure silencieuse nvidia-drm.modeset=1 nvidia-drm.fbdev=1"

Ensuite, vous devez exécuter la commande

sudo update-grub

sudo reboot

Deuxième façon de spécifier un paramètre de module du noyau

cd /etc/modprobe.d
ls
sudo nano /etc/modprobe.d/NAME.conf

dans le fichier NAME.conf écrivez :

options MODULE_NAME PARAMETER1=VALEUR1 PARAMETER2=VALEUR2

Pas de point !

Exemples :

*si le conducteur Nvidia, dans le dossier /etc/modprobe.d/nvidia.conf écrire
options nvidia-drm modeset=1 fbdev=1

*si le conducteur Nouveau, dans le dossier /etc/modprobe.d/nouveau.conf écrire
options nouveau modeset=1

La ligne "GRUB_CMDLINE_LINUX_DEFAULT" dans le fichier /etc/default/grub est prioritaire sur le fichier /etc/modprobe.d/NAME.conf.

6) Affichage des paramètres à l'écran

  • Afficher les paramètres de démarrage du noyau lors du chargement du système d'exploitation Linux

    chat /proc/ligne de commande

Résultat :
BOOT_IMAGE=/boot/vmlinuz-6.2.0-060200-generic root=UUID=xxxxx ro quiet splash init_on_alloc=1 slab_nomerge

  • Paramètres de sortie de l'un des modules du noyau

Il existe un utilitaire appelé systool du package sysfsutils, qui peut afficher les paramètres effectifs des modules.

sudo apt install sysfsutils
systool -vm MODULE_NAME

où MODULE_NAME est le nom du module.

Par exemple :

systool -vm rtw_usb
  • Paramètres de sortie de tous les modules du noyau
cat /proc/modules | couper -f 1 -d " " | pendant la lecture du module ; faire\
echo "Module : $module"  ; \
if [ -d "/sys/module/$module/parameters" ]; alors\
ls /sys/module/$module/parameters/ | pendant la lecture du paramètre ; faire\
echo -n "Paramètre : $paramètre --> "  ; \
cat /sys/module/$module/parameters/$parameter; \
fait; \
fi; \
écho ; \
fait

Sources :
Comment ajouter, supprimer et gérer des modules du noyau Linux (pilotes)
Comment transmettre des paramètres spécifiques au module au LinuxKernel
*Comment répertorier les valeurs des paramètres du module Linux chargés ?



Publications connexes