Je cherche quelques modules de noyau à charger i2c-dev
et i2c-bcm2708
. Mais la modprobe
commande retourne:
sudo modprobe i2c-dev
modprobe: module i2c-dev not found in modules.dep
Comment puis-je lister tous les modules disponibles dans le système? Dans quel répertoire sont-ils situés?
Réponses:
Par défaut,
modprobe
charge les modules des sous-répertoires situés dans le/lib/modules/$(uname -r)
répertoire. Habituellement, tous les fichiers ont une extension.ko
, vous pouvez donc les lister avecou, en tenant compte des fichiers compressés:
Cependant, pour charger un module avec succès
modprobe
, ses dépendances sont répertoriées dans le fichier/lib/modules/$(uname -r)/modules.dep
(et une version binaire correspondantemodules.dep.bin
). Si un module est présent sur le système, mais ne figure pas dans la liste, vous devez exécuter une commandedepmod
qui générera de telles dépendances et inclura automatiquement votre module dansmodules.dep
etmodules.dep.bin
.De plus, si le module est chargé avec succès, il sera répertorié dans le fichier
/proc/modules
(également accessible via une commandelsmod
).la source
find /lib/modules/$(uname -r) -type f -name *.ko*
.gz
*.ko*
fichier si vous avez dans votre répertoire actuel un fichier qui lui correspond. mieux pour y échapper entre guillemets simples:find /lib/modules/$(uname -r) -type f -name '*.ko*'
Tapez
modprobe
et appuyez sur la touche Tab, la liste de saisie semi-automatique doit contenir tous les modules chargeables.la source
Il est
lsmod
commande dekmod
paquet dans Arch Linux qui énumère et indique l'état des modules du noyau Linux qui contient d' autres commandes utiles telles quemodinfo
,rmmod
modprobe
aussi.Pour l ist tous les binaires fournis par le paquet que vous pouvez taper:
, Et vous pouvez également vérifier le o package ropriétaire d'un binaire avec
pacman -Qo lsmod
.Q
interrupteur est à q uery packages installés localement (contrairementS
à l ynchronize, par exemple. pour vérifier à distance).la source
lsmod
seuls les modules déjà chargés sont affichés. L'auteur de ce fil a eu le problème de charger un module qui n'était pas dans la carte des modules du noyau chargeables. En outre, cette solution ne s'applique qu'à archlinux. Ce qui pourrait ne pas être la distribution de l'auteur et pourrait ne pas résoudre le problème pour les autres.lsmod
est également disponible sur Ubuntu, au moins. Cependant, je conviens que cela ne résout pas le problème de l'OP.Je préfère utiliser
depmod
. Avec la commande:,depmod -av|grep MOD_NAME
votre système générera les fichiers modules.dep / map et grep par son intermédiaire. Le-v
paramètre est important pour la verbosité et-a
pour garantir que tous les modules possibles à partir de/lib/modules/
sont utilisés pour le fichier modules.dep.De cette façon, il est possible de s'assurer qu'un module de noyau demandé est mappé sur le noyau en tant que charge. Lorsque le module du noyau souhaité ne figure pas dans la sortie, vous savez que le noyau ne le trouvera pas.
la source