Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
tutoriel:tout_savoir_sur_les_modules_linux [Le 27/01/2010, 21:49] 213.95.41.13tutoriel:tout_savoir_sur_les_modules_linux [Le 09/02/2024, 07:31] (Version actuelle) – [Information sur un module] 82un0
Ligne 3: Ligne 3:
  
 ====== Les modules Linux ====== ====== Les modules Linux ======
- 
- 
  
 ===== Présentation ===== ===== Présentation =====
Ligne 19: Ligne 17:
  
 {{materiel:modules_linux.png|}} {{materiel:modules_linux.png|}}
- 
- 
- 
- 
  
 ===== Gestion des modules ===== ===== Gestion des modules =====
- 
- 
- 
  
 ==== Lister les modules actifs ==== ==== Lister les modules actifs ====
- 
  
 On peut connaître tous les modules actifs en tapant ''lsmod'' dans un terminal (ajouter "| more" pour afficher page par page) : On peut connaître tous les modules actifs en tapant ''lsmod'' dans un terminal (ajouter "| more" pour afficher page par page) :
Ligne 47: Ligne 37:
  
 On voit que le module "freq_table" est utilisé par "cpufreq_stats". Il y a des dépendances entre les modules. Il faut en tenir compte lorsque l'on veut décharger des modules. On voit que le module "freq_table" est utilisé par "cpufreq_stats". Il y a des dépendances entre les modules. Il faut en tenir compte lorsque l'on veut décharger des modules.
- 
- 
  
 ==== Information sur un module ==== ==== Information sur un module ====
Ligne 55: Ligne 43:
  
 <code> <code>
-modinfo rt2500+modinfo rt2500
 filename: /lib/modules/2.6.15-28-386/kernel/drivers/net/wireless/rt2500/rt2500.ko filename: /lib/modules/2.6.15-28-386/kernel/drivers/net/wireless/rt2500/rt2500.ko
 author:         http://rt2x00.serialmonkey.com author:         http://rt2x00.serialmonkey.com
Ligne 69: Ligne 57:
  
 On voit que rt2500 s'occupe de la gestion d'une interface wlan chipset Ralink rt2500 et on est bien content qu'elle fonctionne. (cette interface s'appelle ra*)\\ On voit que rt2500 s'occupe de la gestion d'une interface wlan chipset Ralink rt2500 et on est bien content qu'elle fonctionne. (cette interface s'appelle ra*)\\
- 
  
 Si l'on ne désire qu'une information précise, on peut spécifier le champ (field) à afficher avec l'option -F. Si l'on ne désire qu'une information précise, on peut spécifier le champ (field) à afficher avec l'option -F.
 Par exemple, si nous ne voulons voir que la description du module rt2500 : Par exemple, si nous ne voulons voir que la description du module rt2500 :
  
-  modinfo rt2500 -F description+  modinfo rt2500 -F description
   Ralink RT2500 802.11g WLAN driver 1.1.0 CVS 2005/07/10   Ralink RT2500 802.11g WLAN driver 1.1.0 CVS 2005/07/10
  
 Sachez cependant que tous les modules ne fournissent pas les même informations, et qu'il se peut que ce type de commande ne renvoie rien. Par exemple, le module //rt2500// n'a pas de champ "version", alors que le module //8139too// en a un. Sachez cependant que tous les modules ne fournissent pas les même informations, et qu'il se peut que ce type de commande ne renvoie rien. Par exemple, le module //rt2500// n'a pas de champ "version", alors que le module //8139too// en a un.
 Il y a cependant des champs standards que tous les modules devraient avoir, comme **author**, **description**, **license**, **parm**, **depends**, et **alias**. Il y a cependant des champs standards que tous les modules devraient avoir, comme **author**, **description**, **license**, **parm**, **depends**, et **alias**.
- 
- 
- 
  
 ==== Chargement/Déchargement d'un module ==== ==== Chargement/Déchargement d'un module ====
Ligne 93: Ligne 77:
   $ sudo modprobe -a 3c59x   $ sudo modprobe -a 3c59x
  
-=== Decharger ===+=== Décharger ===
  
 Pour décharger le module "3c59x" (imaginons que l'interface eth0 soit inutile et que celle-ci soit gérée par "3c59x"...) : Pour décharger le module "3c59x" (imaginons que l'interface eth0 soit inutile et que celle-ci soit gérée par "3c59x"...) :
Ligne 103: Ligne 87:
 Voir la liste des modules (on peut aussi utiliser l'utilitaire "modconf" - cf plus bas) : Voir la liste des modules (on peut aussi utiliser l'utilitaire "modconf" - cf plus bas) :
  
-  modprobe -l +  lsmod 
 +  
 A utiliser avec "| grep" !! A utiliser avec "| grep" !!
  
 \\ \\
- 
  
 ==== Options d'un module ==== ==== Options d'un module ====
Ligne 134: Ligne 117:
  
   options snd_ens1371 joystick_port=1   options snd_ens1371 joystick_port=1
- 
- 
  
 ==== Modules au démarrage ==== ==== Modules au démarrage ====
  
-Il est possible de spécifier des modules à charger au démarrage, même si aucun périphérique que pilote ces modules n'a été trouvé.+Il est possible de spécifier des modules à charger au démarrage, même si le périphérique à piloter par un module n'pas été trouvé.
  
-Cela peut être utile pour les périphériques ne permettant pas d'auto-détection, comme les périphériques sur port parallèle.+Cela peut être utile pour les périphériques ne permettant pas d'auto-détection, comme les périphériques reliés au port parallèle.
  
 La liste des modules à charger explicitement au démarrage est dressée dans le fichier ''/etc/modules''. Chaque ligne de ce fichier représente un module à charger, sauf les lignes vides ou commençant par un #. La liste des modules à charger explicitement au démarrage est dressée dans le fichier ''/etc/modules''. Chaque ligne de ce fichier représente un module à charger, sauf les lignes vides ou commençant par un #.
Ligne 156: Ligne 137:
  
 </file> </file>
- 
  
 <note important> <note important>
 Les modules sont chargés **dans l'ordre dans lequel ils sont listés**. Faites bien attention à cela, car l'ordre peut être important dans certains cas. Les modules sont chargés **dans l'ordre dans lequel ils sont listés**. Faites bien attention à cela, car l'ordre peut être important dans certains cas.
 </note> </note>
- 
  
 ==== Empêcher le chargement d'un module ==== ==== Empêcher le chargement d'un module ====
Ligne 167: Ligne 146:
 Il peut parfois être utile d'empêcher le noyau de charger un module automatiquement, par exemple si celui-ci pose des problèmes de stabilité. Un module prohibé ne sera pas chargé au démarrage ou au branchement à chaud du périphérique, mais pourra quand-même être chargé à la main, par exemple à l'aide de **modprobe**. Il peut parfois être utile d'empêcher le noyau de charger un module automatiquement, par exemple si celui-ci pose des problèmes de stabilité. Un module prohibé ne sera pas chargé au démarrage ou au branchement à chaud du périphérique, mais pourra quand-même être chargé à la main, par exemple à l'aide de **modprobe**.
  
-La liste des modules que le noyau n'a pas le droit de charger se trouve dans le fichier ''/etc/modprobe.d/blacklist''.+La liste des modules que le noyau n'a pas le droit de charger se trouve principalement dans le fichier ''/etc/modprobe.d/blacklist.conf''.
  
 La structure de ce fichier est simple ; une ligne est construite comme suit : La structure de ce fichier est simple ; une ligne est construite comme suit :
-<file+<code
-blacklist module +blacklist nom-du-module 
-</file> +</code>
-où //module// est le nom du module prohibé.+
  
-Pour rajouter un module prohibé, [[tutoriel:comment_editer_un_fichier|éditez le fichier]] ''/etc/modprobe.d/blacklist'' avec les droits administrateur (root), et ajoutez une ligne structurée comme ci-dessus, en fin de fichier par exemple. 
- 
-Par exemple, si le module **r818x** vous pose problème, il faut rajouter la ligne suivante au fichier ''/etc/modprobe.d/blacklist'' : 
-<file> 
-blacklist r818x 
-</file> 
  
 +\\ Pour prohiber un module, [[tutoriel:comment_editer_un_fichier|éditez le fichier]] **/etc/modprobe.d/blacklist.conf** avec les droits administrateur (root), et ajoutez en fin de fichier une ligne structurée comme ci-dessus.
  
 +Par exemple, si le module **r818x** vous pose problème, il faut ajouter au fichier /etc/modprobe.d/blacklist.conf la ligne suivante :
 +<code>blacklist r818x</code>
  
 +puis il faut exécuter :
 +<code>sudo update-initramfs -u -k all</code>
 +<note tip>Facultatif : pour s'y retrouver plus tard, il est intéressant de préciser la date et le motif
 +<code># 
 +# suite au problème de...
 +blacklist r818x    # ajout en date du...
 +#</code>
 + Tout ce qui est à droite d'un "#" sera ignoré par le système.</note>
 ==== Lier un module à un périphérique ==== ==== Lier un module à un périphérique ====
  
Ligne 201: Ligne 184:
  
 ===== Utilitaires pour les modules ===== ===== Utilitaires pour les modules =====
- 
- 
- 
- 
- 
- 
- 
- 
-==== Modconf ==== 
- 
-Modconf est un utilitaire très puissant permettant de voir et de configurer les modules disponibles. 
- 
-Pour vous procurer Modconf, il vous suffit d'[[tutoriel:comment_installer_un_paquet|installer le paquet]] **modconf** 
- 
-Modconf s'utilise en console. Pour le lancer avec les droits administrateur, ce qui est nécessaire pour pouvoir appliquer des changements, lancez : 
- 
-  $ sudo modconf 
- 
-Et vous aurez quelque-chose ressemblant de près à : 
- 
-{{:modconf.png}} 
- 
-Je vous conseille de mettre la fenêtre en plein-écran pour une meilleure lisibilité. 
  
 ==== module-assistant ==== ==== module-assistant ====
Ligne 241: Ligne 201:
 module-assistant : module-assistant :
  
-Pour installer module-assistant, [[tutoriel:comment_installer_un_paquet|installez le paquet]] **module-assistant**+Pour installer module-assistant, [[:tutoriel:comment_installer_un_paquet|installez le paquet]] **[[apt>module-assistant|module-assistant]]**
  
 <code> <code>
 $ sudo module-assistant $ sudo module-assistant
 </code> </code>
- 
- 
  
 ==== Hardinfo ==== ==== Hardinfo ====
  
-[[http://hardinfo.berlios.de/HomePage|Hardinfo]] n'est pas vraiment un programme spécifique pour les modules, mais il propose un grand nombres d'informations sur votre ordinateur, dont les modules utilisés par les périphériques.+**[[:hardinfo|Hardinfo]]** n'est pas vraiment un programme spécifique pour les modules, mais il propose un grand nombres d'informations sur votre ordinateur, dont les modules utilisés par les périphériques.
  
-Pour vous le procurer, il vous suffit d'[[tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt://hardinfo]]**+Pour vous le procurer, il vous suffit d'[[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt>hardinfo]]**
  
-Vous le trouverez ensuite dans **Applications => Outils système =Hardinfo**+Vous le trouverez ensuite dans //**Applications -> Outils système -System Profiler and Benchmark**// 
 + 
 +\\ 
 +{{:hardinfo.png}}
  
-Plus d'infos : [[http://macsim.labolinux.net/index.php/post/2007/05/14/90-hardinfo-des-informations-sur-le-hardware-de-votre-puic-puic|ici]]+Plus d'infos sur : 
 +  * [[:hardinfo|la page dédiée au logiciel]] 
 +  * [[http://hardinfo.berlios.de/|le site officiel]] **(en)** 
 +  * [[http://macsim.labolinux.net/index.php/post/2007/05/14/90-hardinfo-des-informations-sur-le-hardware-de-votre-puic-puic|un billet qui présente hardinfo]]
  
 ===== Liens ===== ===== Liens =====