Re: insmod: /lib/modules/2.2.17/block/xd.o: init_module: Device or resource busy
Le 28/11/2000 a 11h41, Georges Mariano a dit:
> insmod: /lib/modules/2.2.17/block/xd.o: init_module: Device or resource busy
> insmod: /lib/modules/2.2.17/block/xd.o: insmod block-major-13 failed
block-major-13 = le périphérique de type block avec un major égal à 13.
Autrement dit, si tu fais un "ls -l /dev" tu trouveras le coupable :
brw-rw---- 1 root disk 13, 0 Jul 5 17:43 xda
brw-rw---- 1 root disk 13, 1 Jul 5 17:43 xda1
brw-rw---- 1 root disk 13, 2 Jul 5 17:43 xda2
brw-rw---- 1 root disk 13, 3 Jul 5 17:43 xda3
(...)
Tu as un prog quelque part qui doit faire un appel système quelconque sur
un de ces fichiers. Le noyau cherche donc à savoir qui est responsable (le
driver) des périph de major 13. Il ne trouve personne, il va alors demander
à kmod ou kerneld de chercher le module.
modprobe est lancé : s'il ne trouve pas le module correspondant, boum, il
abandonne, et c'est fini.
Dans ton cas c'est autre chose : modprobe trouve le module, mais ce module
ne veut pas se charger (Device or resource busy). Savoir pourquoi est une
autre histoire.
> le hic, c'est que j'ai jamais rien demandé explicitement (en install)
> ayant un rapport avec ce module (c'est à peine si je sais à quoi il
> sert...)
XT hard disk support
CONFIG_BLK_DEV_XD
Very old 8 bit hard disk controllers used in the IBM XT computer
will be supported if you say Y here.
> Question générique (digne de la FAQ)
> comment régler les problèmes de la forme :
> modprobe: modprobe: Can't locate module block-major-8/char-major-5/etc
Pour trouver le périphérique incriminé, il faut chercher dans /dev le
fichier qui a le type indique (block=b, char=c) et le major donné (8 ou
5 avec les exemples ci-dessus). Je ne sais pas si find ou ls sait le
faire automatiquement, sinon un petit :
/bin/ls -l /dev | grep "^b.* 8,"
te donnera la liste des noms des fichiers de type "block-major-8" (disques
SCSI en l'occurence).
Ensuite, deux cas :
1) Si cet alias correspond un fichier /dev (donc à un périphérique) que tu
désire utiliser, alors il faut indiquer à modprobe quel module charger. Pour
cela, utiliser la technique des alias dans /etc/modules.conf. Exemple :
alias char-major-81 bttv
alias char-major-108 ppp_generic
[Note: sur debian, ne pas toucher à modules.conf mais modifier
/etc/modutils/aliases et lancer "/sbin/update-modules"]
2) Si cet alias correspond à un périph dont tu te fous comme de l'an 2000,
dans ce cas même technique (alias) mais avec le mot-clef off. Exemples :
alias net-pf-4 off # IPX
alias net-pf-10 off # IPv6
a+
--
Thomas NOEL <thomas.noel@auf-francophonie.org>
Systèmes et Réseaux du Campus numérique francophone de Dakar
Bureau Afrique de l'Ouest / Agence Universitaire de la Francophonie
BP 10017, Dakar - Liberté, Sénégal. Tél : (221) 824 29 27 (poste 107)
Reply to: