Lpic
Résolu/Fermé
riro
-
13 oct. 2011 à 22:00
mamiemando Messages postés 32303 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 28 mars 2023 - 15 oct. 2011 à 00:22
mamiemando Messages postés 32303 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 28 mars 2023 - 15 oct. 2011 à 00:22
2 réponses
mamiemando
Messages postés
32303
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
28 mars 2023
7 576
14 oct. 2011 à 09:58
14 oct. 2011 à 09:58
Le fichier de configuration de ton boot loader (/etc/lilo.conf, /etc/default/grub, /boot/grub/menu.lst selon ce que tu utilises) permet de passer des options au noyau.
Sous Debian et distribution qui en dérive, les options passées aux modules par défaut sont définies dans /etc/modprobe.d/.
Quelque soit le linux, on peut passer des options à un module si on le charge manuellement avec la commande modprobe.
Bonne chance
Sous Debian et distribution qui en dérive, les options passées aux modules par défaut sont définies dans /etc/modprobe.d/.
Quelque soit le linux, on peut passer des options à un module si on le charge manuellement avec la commande modprobe.
Bonne chance
mamiemando
Messages postés
32303
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
28 mars 2023
7 576
14 oct. 2011 à 21:25
14 oct. 2011 à 21:25
Un noyau est la couche logicielle que tu choisis au démarrage. Un noyau a un numéro de version du genre 2.6.38 ou 3.0.1 de nos jours. Il est compilé pour une architecture matérielle donnée (comme tout le reste d'ailleurs), par exemple i686, amd64 etc... Pour basculer sur un autre noyau, tu dois redémarrer..
On peut passer des options à un noyau en corrigeant l'entrée correspondante de noyau (dans la configuration de grub ou lilo), ou alors en basculant en mode "interactif" dans grub/lilo (typiquement en appuyant sur e dans grub pour préciser cette option à la volée.
Concrètement un noyau est représenté par un ensemble de fichiers présents dans /boot (typiquement un couple initrd et vmlinuz, ou bien une bzImage) :
Un module est un "morceau de noyau" que tu peux charger à décharger à volonté. Il faut que ce noyau soit compatible avec le noyau sur lequel tu as démarré. Concrètement c'est un fichier ".ko" rangé dans /lib/modules.
Un module est un peu comme un pilote sous windows, à ceci prêt que tu peux l'activer ou le désactiver (en général) en le chargeant ou le déchargeant et que tu peux lui passer des options au moment de le charger. Par exemple le module lirc prend en charge les télécommandes et bttv gère une carte télé.
Le fait de charger le module lirc va permettre de supporter les signaux émis par une télécommande. Le décharger permettra d'ignorer ce que fait la télécommande.
Idem avec bttv pour une carte tv. Mais on se doute que toutes les cartes tv et télécommandes ne fonctionnent pas pareil, et qu'il va peut être falloir donner des informations supplémentaires au module pour qu'il sache quel matériel il doit gérer (ou plutôt comment il doit le gérer).
À tout moment, tu peux voir les modules chargés avec :
Pour les charger et les décharger, cf modprobe et rmmod.
Par exemple pour charger /lib/modules/3.0.0-1-amd64/kernel/drivers/staging/lirc/lirc_sir.ko je devrai taper en root :
Un module peut être chargé
(1) automatiquement
- par le noyau
- au démarrage, si celui est référencé dans un fichier dédié, par exemple /etc/modules sous Debian.
Dans ce cas, il sera chargé sans option. Ceci peut être gênant car parfois il faut passer des options au module pour qu'il fonctionne correctement. Nous allons voir dans ce qui suit que ce problème peut être levé grâce aux options configurées dans /etc/modprobe.d/*.conf sous Debian.
(2) manuellement on peut préciser à modprobe non seulement le module, mais aussi les options à passer au module.
Exemple : je veux charger le module bttv.ko qui est contenu dans /lib/modules. Alors en temps normal je peux taper (en root ou avec sudo) :
Quand on veut passer des options au module c'est un peu différent. Chaque option dépend évidemment du module. Par exemple, le moduel bttv supporte les options card, tuner (etc...). On peut préciser ces deux options et lancer un truc du genre :
À terme, je peux vouloir que quand je tape "modprobe bttv" je puisse sous entendre ces options. C'est ce que je peux faire en créant /etc/modprobe.d/bttv.conf et en écrivant dans ce fichier :
Du coup ces deux commandes seront équivalentes :
Supposons que je rajoute dans /etc/modules une ligne ou est écrite "bttv". Ceci signifie sur un système debian "charge le module bttv au démarrage du système". Par défaut debian fera un "modprobe bttv". Mais grâce à /etc/modprobe.d/bttv.conf, il va en réalité déclencher "modprobe bttv radio=0 card=39 tuner=3 gbuffers=4"
Si on revient à ton problème, la question à laquelle tu dois répondre c'est à quoi ce rapporte cette option. À ton noyau ? À un module ? Si c'est un module, à quel module ?
Bonne chance
On peut passer des options à un noyau en corrigeant l'entrée correspondante de noyau (dans la configuration de grub ou lilo), ou alors en basculant en mode "interactif" dans grub/lilo (typiquement en appuyant sur e dans grub pour préciser cette option à la volée.
Concrètement un noyau est représenté par un ensemble de fichiers présents dans /boot (typiquement un couple initrd et vmlinuz, ou bien une bzImage) :
(mando@aldur) (~) $ ls /boot/ config-3.0.0-1-amd64 grub initrd.img-3.0.0-1-amd64 System.map-3.0.0-1-amd64 vmlinuz-3.0.0-1-amd64
Un module est un "morceau de noyau" que tu peux charger à décharger à volonté. Il faut que ce noyau soit compatible avec le noyau sur lequel tu as démarré. Concrètement c'est un fichier ".ko" rangé dans /lib/modules.
(mando@aldur) (~) $ find /lib/modules/$(uname -r) | grep ".ko$" /lib/modules/3.0.0-1-amd64/kernel/drivers/staging/usbip/usbip-host.ko /lib/modules/3.0.0-1-amd64/kernel/drivers/staging/usbip/usbip-core.ko /lib/modules/3.0.0-1-amd64/kernel/drivers/staging/usbip/vhci-hcd.ko /lib/modules/3.0.0-1-amd64/kernel/drivers/staging/lirc/lirc_ttusbir.ko /lib/modules/3.0.0-1-amd64/kernel/drivers/staging/lirc/lirc_sir.ko /lib/modules/3.0.0-1-amd64/kernel/drivers/staging/lirc/lirc_serial.ko /lib/modules/3.0.0-1-amd64/kernel/drivers/staging/lirc/lirc_igorplugusb.ko /lib/modules/3.0.0-1-amd64/kernel/drivers/staging/lirc/lirc_bt829.ko /lib/modules/3.0.0-1-amd64/kernel/drivers/staging/lirc/lirc_zilog.ko /lib/modules/3.0.0-1-amd64/kernel/drivers/staging/lirc/lirc_imon.ko ...
Un module est un peu comme un pilote sous windows, à ceci prêt que tu peux l'activer ou le désactiver (en général) en le chargeant ou le déchargeant et que tu peux lui passer des options au moment de le charger. Par exemple le module lirc prend en charge les télécommandes et bttv gère une carte télé.
Le fait de charger le module lirc va permettre de supporter les signaux émis par une télécommande. Le décharger permettra d'ignorer ce que fait la télécommande.
Idem avec bttv pour une carte tv. Mais on se doute que toutes les cartes tv et télécommandes ne fonctionnent pas pareil, et qu'il va peut être falloir donner des informations supplémentaires au module pour qu'il sache quel matériel il doit gérer (ou plutôt comment il doit le gérer).
À tout moment, tu peux voir les modules chargés avec :
lsmod
Pour les charger et les décharger, cf modprobe et rmmod.
man modprobe man rmmod
Par exemple pour charger /lib/modules/3.0.0-1-amd64/kernel/drivers/staging/lirc/lirc_sir.ko je devrai taper en root :
modprobe lirc_sir
Un module peut être chargé
(1) automatiquement
- par le noyau
- au démarrage, si celui est référencé dans un fichier dédié, par exemple /etc/modules sous Debian.
Dans ce cas, il sera chargé sans option. Ceci peut être gênant car parfois il faut passer des options au module pour qu'il fonctionne correctement. Nous allons voir dans ce qui suit que ce problème peut être levé grâce aux options configurées dans /etc/modprobe.d/*.conf sous Debian.
(2) manuellement on peut préciser à modprobe non seulement le module, mais aussi les options à passer au module.
Exemple : je veux charger le module bttv.ko qui est contenu dans /lib/modules. Alors en temps normal je peux taper (en root ou avec sudo) :
modprobe bttv
Quand on veut passer des options au module c'est un peu différent. Chaque option dépend évidemment du module. Par exemple, le moduel bttv supporte les options card, tuner (etc...). On peut préciser ces deux options et lancer un truc du genre :
modprobe bttv radio=0 card=39 tuner=3 gbuffers=4
À terme, je peux vouloir que quand je tape "modprobe bttv" je puisse sous entendre ces options. C'est ce que je peux faire en créant /etc/modprobe.d/bttv.conf et en écrivant dans ce fichier :
options bttv radio=0 card=39 tuner=3 gbuffers=4
Du coup ces deux commandes seront équivalentes :
modprobe bttv modprobe bttv radio=0 card=39 tuner=3 gbuffers=4
Supposons que je rajoute dans /etc/modules une ligne ou est écrite "bttv". Ceci signifie sur un système debian "charge le module bttv au démarrage du système". Par défaut debian fera un "modprobe bttv". Mais grâce à /etc/modprobe.d/bttv.conf, il va en réalité déclencher "modprobe bttv radio=0 card=39 tuner=3 gbuffers=4"
Si on revient à ton problème, la question à laquelle tu dois répondre c'est à quoi ce rapporte cette option. À ton noyau ? À un module ? Si c'est un module, à quel module ?
Bonne chance
14 oct. 2011 à 18:02
J'ai une confusion entre ces choix en dessous ,tu peux me explique svp !!!
A.Fichiers dans le répertoire / etc / modules.d
B. modules.dep dans le répertoire des modules
C.. Config dans le répertoire du noyau
D. / etc / modules.conf
merci Beaucoup :)
14 oct. 2011 à 19:04
Désolé pour la dérangement..
Merci pour votre attention..
14 oct. 2011 à 22:56
donc la réponse est A :" les fichiers dans le répertoire /etc/modules.d " !!!!
15 oct. 2011 à 00:15
15 oct. 2011 à 00:18
si tu ne dérange pas j'ai un autre question !!!!!