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édentes Révision précédente
Prochaine révision
Révision précédente
tutoriel:tout_savoir_sur_les_modules_linux [Le 23/01/2011, 14:34]
90.12.149.220
tutoriel:tout_savoir_sur_les_modules_linux [Le 10/05/2018, 20:00] (Version actuelle)
78.250.111.201 [Empêcher le chargement d'un module]
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 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.
Ligne 79: Ligne 66:
 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 le périphérique ​que pilote ​un module n'a pas é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'a pas été trouvé.
  
 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. 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.
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 =====
  • tutoriel/tout_savoir_sur_les_modules_linux.1295789679.txt.gz
  • Dernière modification: Le 18/04/2011, 14:50
  • (modification externe)