Bonjour à tous !
Après de longues recherches avec l'aide de mon ami Google, je n'ai pas trouvé de solution à mon problème.
C'est donc dans un état désespéré que je fais appel à vous :-)
Mon problème est le suivant : mon cdrom n'est accessible que si je fais un 'modprobe ide-cd'.
Pas moyen d'automatiser cela, malgré la présence du fichier 'modprobe.conf'.
Le module de mon lecteur de cdrom est 'ide-cd'.
Dans le répertoire '/dev', le cdrom est identifié par '/dev/hdc', son numéro majeure étant le 22,
comme ceci :
# brw-rw---- 1 root disk 22, 0 aoû 3 23:49 /dev/hdc
Ainsi, comme j'ai une Redhat 8.0 avec le noyau '2.6.8.1', j'ai déclaré un alias dans le fichier '/etc/modprobe.conf',
comme ceci :
# alias block-major-22 ide-cd
Donc normalement lorsque je fais un 'mount -t iso9660 /dev/hdc /mnt/cdrom' le système devrait charger le
module du cdrom automatiquement. Normalement ... mais non au lieu de cela il me balance le message suivant :
# mount : /dev/hdc n'est pas un périphérique de bloc valide.
Par contre lorsque je fais 'modprobe ide-cd', il détecte mon cdrom :
# hdc: ATAPI 24X DVD-ROM CD-R/RW drive, 2048kB Cache, UDMA(33)
Et mon mount fonctionne.
Aidez moi !!! C'est du délire ! ou c'est moi qui délire ?! :-)
# soluce et réponse :
Posté par nextgens (site web personnel) . Évalué à 2.
2)essaie ca : puis reboote et enjoy!
[^] # Re: soluce et réponse :
Posté par alex33 . Évalué à 1.
Pour ce qui est de la commande que tu m'as proposé :
# echo "ide-cd" >> /etc/modules
Il faut que tu saches que j'utilise le noyau 2.6.8 qui n'utilise pas '/etc/modules' mais '/etc/modprobe.conf'
J'ai donc essayé ça :
# echo "ide-cd" >> /etc/modprobe.conf
Mais cela génère lors du redemmarage une erreur. Modprobe m'indique qu'il ne prend pas en compte cette ligne.
Merci pour ta proposition mais cela ne fontionne pas.
Help meeeee !
# quelle distrib ?
Posté par liparis . Évalué à 1.
Il me semble que /etc/modules et /etc/modprobe.conf n'ont aucun rapports. modprobe.comf définie les alias entre modules et modules est un simple fichier où tu liste les modules à charger au démarage.
J'utilise un noyau 2.6.8 et il charge bien sagement tous les modules spécifiés dans le fichier /etc/modules.
Debian propose un exécutable (j'ai oublié son nom) pour préciser les différents modules à charger au démarage (il se contente d'éditer le fichier /etc/modules). Ta distribution a certainement un utilitaire de ce genre.
Voilà mes 2c.
[^] # Distrib : Redhat 8.0
Posté par alex33 . Évalué à 1.
C'est pourquoi, dans mon fichier '/etc/modprobe/conf' j'ai ajouté la ligne suivante :
alias block-major-22 ide-cd
Normalement cette ligne devrait permettre au noyau de charger automatiquement le module 'ide-cd' lorsque le device concerné est demandé. Non ?
Je n'ai peut-être pas tout compris ...
Note : ma distib est une redhat 8.0
[^] # Re: Distrib : Redhat 8.0
Posté par liparis . Évalué à 1.
[^] # Re: Distrib : Redhat 8.0
Posté par alex33 . Évalué à 1.
[^] # Re: Distrib : Redhat 8.0
Posté par liparis . Évalué à 1.
Ceci dit, tu crois vraiment que ça fait perdre beaucoup de place en mémoire d'avoir ide-cd chargé au démarrage ?
[^] # Re: Distrib : Redhat 8.0
Posté par alex33 . Évalué à 1.
Or, il s'agit du principe qui me pose problème.
J'imagine quand même mal qu'il soit impossible pour un noyau 2.6 de charger automatiquement des modules.
Alors que ce principe était intégré dans le noyau 2.4
Alors que je pensais avoir compris le fonctionnement des modules automatiques je me rends compte qu'il n'en est rien.
Je voudrai comprendre !
Toi qui est un scientifique tu dois sûrement me comprendre ;-)
# Re:
Posté par 007 . Évalué à 1.
alias block-major-3-* ide-probe-mod
alias block-major-22-* ide-probe-mod
alias block-major-33-* ide-probe-mod
alias block-major-34-* ide-probe-mod
alias block-major-56-* ide-probe-mod
alias block-major-57-* ide-probe-mod
alias block-major-88-* ide-probe-mod
alias block-major-89-* ide-probe-mod
alias block-major-90-* ide-probe-mod
alias block-major-91-* ide-probe-mod
modprobe a complètement changé entre 2.4 et 2.6.
Faut aussi mettre à jours modutils (et d'autres trucs mais j'ai oublié). Sinon ça ne marchera jamais.
[^] # Re: Re:
Posté par alex33 . Évalué à 1.
En effet, ce package contient 'kerneld' qui permet le chargement automatique des modules. Or, le noyau 2.6 gère cette fonctionnalité de façon native.
Afin d'intégrer les fonctionnalités de chargement de module, j'avais plutôt mis à jour 'module-init-tools' :
The module-init-tools are a set of programs for loading, inserting, and removing Kernel Modules for Linux (versions 2.5.48 and above). It serves the same function that the modutils package serves for Linux 2.4.
Dans tous les tutoriaux sur le passage de la 2.4 vers la 2.6, ils expliquent qu'il faut mettre à jour au minimum les packages suivantes :
- Gnu C Compiler 2.95.3 gcc --version
- Gnu Make 3.79.1 make --version
- binutils 2.12 ld -v
- util-linux 2.10o fdformat --version
- module-init-tools 0.9.9 depmod -V
- procps 2.0.9 ps --version
(Pas de modutils ...)
Néanmoins merci pour ton aide.
Je ne sais toujours pas comment faire. Mais je suis sûr que l'élu va se présenter afin de me guider sur la bon chemin :-)
[^] # Re: Re:
Posté par 007 . Évalué à 1.
Tu as raison.
La confusion vient que module-init-tools est dans le paquet modutils sous Fedora Core 2 (Linux 2.6). En fait, ce paquet a modutils (l'ancien) et module-init-tools (le nouveau).
Pour Rawhide (version de développement de Fedora) le paquet se nomme module-init-tools (il y a que le nouveau).
> En effet, ce package contient 'kerneld'
kerneld n'existe plus depuis Linux 2.4 je crois.
Il y a des paquets pour avoir Linux 2.6 :
http://people.redhat.com/arjanv/2.6/(...)
Mais c'est pour RedHat 9 et non RedHat 8.0.
[^] # Re: Re:
Posté par 007 . Évalué à 1.
C'est bien la chaine "ide-probe-mod" qu'il faut mettre !
Il ne faut pas remplacer "ide-probe-mod" par "ide-cd" par exemple.
Tout ça est dans /etc/modprobe.conf.dist qui est assez gros :
wc -l /etc/modprobe.conf.dist
160 /etc/modprobe.conf.dist
Pour récupérer le fichier :
# rpm -q -f /etc/modprobe.conf.dist
modutils-2.4.26-16
Suffit de prendre celui de FC2.
[^] # Re: Re:
Posté par alex33 . Évalué à 1.
# alias block-major-22 ide-cd
par :
# alias block-major-22-* ide-probe-mod
J'ai redemarré (au cas où).
J'ai lancé la commande suivante :
# mount -t iso9660 /dev/hdc /mnt/cdrom
Cela me renvoie le message suivant :-(
# mount : /dev/hdc n'est pas un périphérique de bloc valide.
[^] # Re: Re:
Posté par 007 . Évalué à 1.
Il n'y a pas un "ide-scsi=/dev/hdc" ou "/dev/hdc=ide-scsi" ou ide-ignore (j'ai oublié la forme exacte) ?
A ce propos, il y a aussi une option de module de ide-cd équivalente à ide-ignore. Vérifies bien qu'il n'y a pas un truc dans ce goût qui traine.
Je sais que dans RH8.0 pour les graveurs, anaconda renvoie la gestion du lecteur à ide-scsi.
[^] # Re: Re:
Posté par alex33 . Évalué à 1.
title Red Hat Linux (2.6.8.1)
root (hd0,1)
kernel /vmlinuz-2.6.8.1 ro root=LABEL=/ hdc=ide-cd
initrd /initrd-2.6.8.1.img
En tout cas sache que lorsque je rentre :
# modprobe ide-cd
Il détecte mon cdrom, voici le message :
# hdc: ATAPI 24X DVD-ROM CD-R/RW drive, 2048kB Cache, UDMA(33)
[^] # Re: Re:
Posté par 007 . Évalué à 1.
Enlève "hdc=ide-cd"
Dans /usr/src/linux-2.6.8-1.521/Documentation/ide.txt j'ai :
Summary of ide driver parameters for kernel command line
--------------------------------------------------------
(...)
"hdx=cdrom" : drive is present, and is a cdrom drive
(...)
Je n'ai pas de "hdx=ide-cd".
Si ça ne marche pas sans "hdc=ide-cd", essai avec "hdc=cdrom".
[^] # Re: Re:
Posté par 007 . Évalué à 1.
# modprobe ide-cd
Il détecte mon cdrom, voici le message :
# hdc: ATAPI 24X DVD-ROM CD-R/RW drive, 2048kB Cache, UDMA(33)
J'ai retrouvé mon option ignore...
Exemple
rmmod ide_cd
modprobe ide_cd
kernel : hdb: ATAPI 40X DVD-ROM drive, 512kB Cache, UDMA(33)
kernel : hdd: ATAPI 40X CD-ROM CD-R/RW drive, 8192kB Cache, DMA
rmmod ide_cd
echo "options ide-cd ignore=hdb" >> /etc/modprobe.conf
modprobe ide_cd
kernel : ignoring drive hdb
kernel : hdd: ATAPI 40X CD-ROM CD-R/RW drive, 8192kB Cache, DMA
rmmod ide_cd
head /dev/hdb > /dev/null
head: Ne peut ouvrir `/dev/hdb' en lecture: Aucun périphérique ou adresse
kernel: ide-cd: ignoring drive hdb
hdd: ATAPI 40X CD-ROM CD-R/RW drive, 8192kB Cache, DMA
Pas très utile dans ton cas :-)
A l'origine, ça évitait des problèmes si ide-scsi devait être utilisé et n'était pas déjà chargé.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.