Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Explication sur module et paquetage noyau 2.6.8 (Fedora)

9 réponses
Avatar
machbiole
Bonjour,

j'aimerai bien comprendre comme s'organise les modules et paquetages sur un
noyau 2.6.8, alors si vous avez un résumé des commandes disponibles et (plus
disponibles) (modprobe, urpmi, etc...) et des fichiers concernés, je suis
preneur.

Pour la petite histoire, je suis en train d'installer une Fedora sur un DELL
Optiplex G280 (carte réseau Broadcom 5700), l'install se passe plutôt bien
(pas de reconnaissance de la carte réseau, ni de la carte video, ni de la
carte son, mais c'est du linux alors on sait d'avance les difficultés :-).
Donc je récupère le module bcm5700, je l'installe sans problème en suivant
la procédure :
> rpm -ivh bcm5700-<version>.src.rpm
> cd /usr/src/redhat
> rpmbuild -bb SPECS/bcm5700.spec
> rpm -ivh RPMS/i386/bcm5700-<version>.i386.rpm

Youpi, ça fonctionne après l'activation via la configuration réseau
graphique.

Je me connecte à Redhat Updates à la mode Windows pour les mises à jour (ce
que j'apprécie n'étant pas expert Linux), il me propose une mise à jour du
noyau, on passe de la 2.6.5-1 à la 2.6.8-1, ok ça me plait, je fais la mise
à jour, relance du PC et là plus de carte réseau, j'apprécie moyennement,
peut être un pb de source à intégrer ou une recompil noyau mais encore une
fois je ne suis pas expert.
Je me dis, qu'à cela ne tienne, je vais réitérer l'installation de la carte
comme précédement, mais là premier problème, la commande rpm -ivh m'indique
que la paquetage est déjà installé. Ok j'essaye alors par la configuration
réseau en mode graphique et là il ne me propose pas la carte bcm5700 comme
lors de la première installation, à la place je vois d'ailleurs une carte
generic tg3.
A noter que le fichier modprobe.conf contient bien "alias eth0 bcm5700".
Autre info, le fichier bcm5700.ko est présent dans le répertoire des modules
de l'ancien noyau : "/lib/modules/2.6.5-1.358smp/kernel/driver/net", il
n'est pas présent dans le répertoire identique pour le nouveau noyau (la
recopie à la main ne change rien par ailleurs).

Une idée serait peut être de supprimer toute trace de la carte bcm5700 et de
refaire une installation mais ou trouver toutes les "traces" ?
Quelle est la commande magique qui supprime toute trace ?

Voilà, je suis un peu perdu dans ce jeu de piste, alors si quelqu'un pouvait
me mettre sur la voie, je me donne encore 1/2 journée de boulot ensuite je
remet la redhat initiale sans faire de mise à jour (pas secure ça) ou je
reformatte sour XP, parce que là, Linux est en train de me couter plus cher
qu'une licence XP...

9 réponses

Avatar
Remi Moyen
On Wed, 10 Nov 2004, machbiole wrote:

Bonjour,

j'aimerai bien comprendre comme s'organise les modules et paquetages sur un
noyau 2.6.8, alors si vous avez un résumé des commandes disponibles et (plus
disponibles) (modprobe, urpmi, etc...) et des fichiers concernés, je suis
preneur.


Euh, ben, faire un joli texte, je peux pas... Par contre, je pense pouvoir
t'aider pour ton problème précis.

Donc je récupère le module bcm5700, je l'installe sans problème en suivant
la procédure :
rpm -ivh bcm5700-<version>.src.rpm
cd /usr/src/redhat
rpmbuild -bb SPECS/bcm5700.spec
rpm -ivh RPMS/i386/bcm5700-<version>.i386.rpm


Youpi, ça fonctionne après l'activation via la configuration réseau
graphique.

Je me connecte à Redhat Updates à la mode Windows pour les mises à jour (ce
que j'apprécie n'étant pas expert Linux), il me propose une mise à jour du
noyau, on passe de la 2.6.5-1 à la 2.6.8-1, ok ça me plait, je fais la mise
à jour, relance du PC et là plus de carte réseau, j'apprécie moyennement,
peut être un pb de source à intégrer ou une recompil noyau mais encore une
fois je ne suis pas expert.


Là, c'est normal : tu as compilé ton module pour un noyau 2.6.5, et tu
essayes maintenant de le faire fonctionner sur un noyau 2.6.8. C'est pas
la même version, ça ne marche pas.

Pourquoi Redhat Updates n'a pas fait la mise à jour du paquet de ton
module, tu vas dire ? Tout simplement parce que, comme tu as compilé
toi-même ton paquet, ça n'est pas un paquet officiel maintenu par Redhat.
Donc y'en a pas de nouvelles versions chez eux.

Je me dis, qu'à cela ne tienne, je vais réitérer l'installation de la carte
comme précédement, mais là premier problème, la commande rpm -ivh m'indique
que la paquetage est déjà installé.


Tout à fait. Bien que ne fonctionnant plus sur ton nouveau noyau, le
paquet est toujours là. Ceci dit, tu peux normalement quand même
recompiler ton paquet, avec éventuellement un numéro de version plus
élevé. Ça fera une mise à jour, c'est tout. Ou alors, la solution bourrin,
tu désinstalles ton paquet, tu recompiles et tu installes le nouveau
paquet (mais bon, ça, c'est normalement en gros ce qui est fait si tu fais
une mise à jour).

(Remarque au passage : tu aurais pu, lors de la création du paquet,
t'arranger pour qu'il s'appelle, par exemple, bcm5700-2.6.5 : tu aurais
alors pu recompiler un paquet bcm5700-2.6.8 sans aucun conflit. Mais ça
n'est pas très propre, vaut mieux faire des mises à jour. Sauf si tu veux
garder en parallèle un noyau 2.6.5 et un 2.6.8, tous les deux
fonctionnels.)

Ok j'essaye alors par la configuration
réseau en mode graphique et là il ne me propose pas la carte bcm5700 comme
lors de la première installation, à la place je vois d'ailleurs une carte
generic tg3.


Normal, là encore : ce que tu vois dans cette config, c'est les modules
disponibles dans le noyau. Donc dans le 2.6.8. Y'a pas de raisons que tu y
trouves un module qui n'est pas standard (puisque tu dois le compiler
toi-même), et qui n'a pas été compilé pour cette version du noyau !

A noter que le fichier modprobe.conf contient bien "alias eth0 bcm5700".


À priori, aucune influence sur ton problème.

Autre info, le fichier bcm5700.ko est présent dans le répertoire des modules
de l'ancien noyau : "/lib/modules/2.6.5-1.358smp/kernel/driver/net", il
n'est pas présent dans le répertoire identique pour le nouveau noyau


Logique : il est présent là où tu l'avais compilé avant, mais comme il n'a
pas été compilé pour le nouveau noyau, il n'a pas de raison d'y être.

(la recopie à la main ne change rien par ailleurs).


Les modules compilés pour une version du noyau ne sont pas compatibles
avec une autre version. C'est plutôt (!!) chiant, mais c'est comme ça...

Une idée serait peut être de supprimer toute trace de la carte bcm5700 et de
refaire une installation mais ou trouver toutes les "traces" ?
Quelle est la commande magique qui supprime toute trace ?


Pas besoin de tout supprimer. Normalement, une mise à jour du paquet
correspondant à ton module (cad, une recompilation avec un numéro de
version plus élevé, et une installation du nouveau paquet) devrait faire
l'affaire.

J'espère que j'ai pas dit de conneries, et que ça t'aidera !
--
Rémi Moyen
"Malgré les apparences, le temps est très varié à Nancy :
pluie, nuages, neige, brouillard, grêle, ..."


Avatar
S.Pascal
Bonjour,


Salut


j'aimerai bien comprendre comme s'organise les modules et paquetages sur un
noyau 2.6.8, alors si vous avez un résumé des commandes disponibles et (plus
disponibles) (modprobe, urpmi, etc...) et des fichiers concernés, je suis
preneur.

Pour la petite histoire, je suis en train d'installer une Fedora sur un DELL
Optiplex G280 (carte réseau Broadcom 5700), l'install se passe plutôt bien
(pas de reconnaissance de la carte réseau, ni de la carte video, ni de la
carte son, mais c'est du linux alors on sait d'avance les difficultés :-).
Donc je récupère le module bcm5700, je l'installe sans problème en suivant
la procédure :

rpm -ivh bcm5700-<version>.src.rpm
cd /usr/src/redhat
rpmbuild -bb SPECS/bcm5700.spec
rpm -ivh RPMS/i386/bcm5700-<version>.i386.rpm


Bien, mais ne pas oublier que la fedora est pour les développeurs, avec

tout ce que cela comporte...


Youpi, ça fonctionne après l'activation via la configuration réseau
graphique.

Je me connecte à Redhat Updates à la mode Windows pour les mises à jour (ce
que j'apprécie n'étant pas expert Linux), il me propose une mise à jour du
noyau, on passe de la 2.6.5-1 à la 2.6.8-1, ok ça me plait, je fais la mise
à jour, relance du PC et là plus de carte réseau, j'apprécie moyennement,
peut être un pb de source à intégrer ou une recompil noyau mais encore une
fois je ne suis pas expert.


Sur le principe, c'est bon. Sauf qu'il aurait fallu recompiler ton noyau
avant pour que tes modules soient intégrer au nouveau kernel. As tu bien
l'option du nouveau noyau au boot? Certaine distrib ne le font pas
automatiquement. Je n'ai pas encore pu télécharger la fedora, donc pour
elle je ne sais pas...

Je me dis, qu'à cela ne tienne, je vais réitérer l'installation de la carte
comme précédement, mais là premier problème, la commande rpm -ivh m'indique
que la paquetage est déjà installé.
Normal le nouveau noyau ne désinstalle pas les précédents RPM, Encore

heureux d'ailleurs!
Ok j'essaye alors par la configuration
réseau en mode graphique et là il ne me propose pas la carte bcm5700 comme
lors de la première installation, à la place je vois d'ailleurs une carte
generic tg3.
Probablement parce que le chipset est le même pour les deux cartes. De

mémoire la tg3 ne serait pas une Gigabit ?

A noter que le fichier modprobe.conf contient bien "alias eth0 bcm5700".
Autre info, le fichier bcm5700.ko est présent dans le répertoire des modules
de l'ancien noyau : "/lib/modules/2.6.5-1.358smp/kernel/driver/net", il
n'est pas présent dans le répertoire identique pour le nouveau noyau (la
recopie à la main ne change rien par ailleurs).

Tout cela est normal. Comme tu as normalement booté sur le nouveau noyau

(non recompilé) tu n'as pas les modules de créés

Une idée serait peut être de supprimer toute trace de la carte bcm5700 et de
refaire une installation mais ou trouver toutes les "traces" ?
Quelle est la commande magique qui supprime toute trace ?

Ce n'est pas nécessaire. Quand tu recompileras le noyau, il recrééra

tout ce qu'il faut dans un dossier différent. C'est l'avantage de linux.
Cela permet nottament de pouvoir revenir sur un noyau précédent qui
fonctionnait. Quand tu cherches c'est pas forcément négligeable...

Voilà, je suis un peu perdu dans ce jeu de piste, alors si quelqu'un pouvait
me mettre sur la voie, je me donne encore 1/2 journée de boulot ensuite je
remet la redhat initiale sans faire de mise à jour (pas secure ça) ou je
reformatte sour XP, parce que là, Linux est en train de me couter plus cher
qu'une licence XP...

Chacun voit midi à sa porte, toutefois revenir à XP avec le SP2, hum...

Mon conseil serait de compiler ton nouveau noyeau avec les bons modules
adaptés à ta config. Tu peux trouver des éléments de réponse avec le
premier noyau installé en regardant dans /var/log/messages. Tous les
modules chargés sont enregistrés dans ce fichier comme tout ce qui n'a
pas fonctionnait. Un howto sur les noyaux existe si tu ne l'as jamais
fait, il vaut mieux le lire. Les commandes de base sont :
cd /usr/src/linux (directement dans la dernière version du noyau
modifier le fichier Makefile pour lui donner un numéro de version
supèrieur (2.6.8-xxx)
make menuconfig (Là il faut se palucher les différentes options d'où la
lecture du howto)
make
make modules_install
mkinitrd /boot/initrd-2.6.8-xxx.img 2.6.8-xxx
copie de tous les fichiers adéquats dans le dossier /boot
modification de lilo.conf ou menu.lst (si c'est grub)
et redémarrage
n'oublies pas de supprimer la ligne du module dans modprobe.conf faute
de quoi tu auras encore des erreurs. Le système le recréera
automatiquement si le bon module est compilé.
Bon courage.

Pascal






Avatar
Bruno Mathieu
machbiole a écrit:

Bonjour,



Bonjour

rpm -ivh bcm5700-<version>.src.rpm
cd /usr/src/redhat
rpmbuild -bb SPECS/bcm5700.spec
rpm -ivh RPMS/i386/bcm5700-<version>.i386.rpm



Voilà, là vous avez compilé le module qui prend en charge votre Broadcom
POUR LE NOYAU QUE VOUS UTILISIEZ à ce moment (le 2.6.5-1.358smp)

Je me connecte à Redhat Updates à la mode Windows pour les mises à jour
(ce que j'apprécie n'étant pas expert Linux), il me propose une mise à
jour du noyau, on passe de la 2.6.5-1 à la 2.6.8-1, ok ça me plait, je
fais la mise à jour, relance du PC et là plus de carte réseau, j'apprécie
moyennement, peut être un pb de source à intégrer ou une recompil noyau
mais encore une fois je ne suis pas expert.
Je me dis, qu'à cela ne tienne, je vais réitérer l'installation de la
carte comme précédement, mais là premier problème, la commande rpm -ivh
m'indique que la paquetage est déjà installé. Ok j'essaye alors par la


Oui, les sources du modules sont déjà installées. vous pouvez utiliser rpm
-e pour effacer le paquet et recommencer. Normalement rien ne dépend de ce
paquet, donc "rpm -e" devrait bien fonctionner. Seulement les fichiers
créés par la compilation seront surement encore
dans /usr/src/redhat/SRPM/... : effacez les avant de réinstaller.

configuration réseau en mode graphique et là il ne me propose pas la carte
bcm5700 comme lors de la première installation, à la place je vois
d'ailleurs une carte generic tg3.
A noter que le fichier modprobe.conf contient bien "alias eth0 bcm5700".
Autre info, le fichier bcm5700.ko est présent dans le répertoire des
modules de l'ancien noyau :
"/lib/modules/2.6.5-1.358smp/kernel/driver/net", il n'est pas présent dans
le répertoire identique pour le nouveau noyau (la recopie à la main ne
change rien par ailleurs).


Une bonne solution serait de retourner dans le répertoire où vous avez les
sources du module et de le recompiler pour votre nouveau noyau. En
attendant, inutile de remettre la redhat initiale : vous pouvez simplement
booter avec l'ancien noyau (en conservent toutes les autres mises à jour) :
si vous utilisez lilo il faut éditer le fichier /etc/lilo.conf et
relancer /sbin/lilo. Si vous utilisez grub, il faut modifier un fichier
appelé menu.lst ; pour choisir le noyau. Encore une autre solution :
essayer d'insérer le module pour l'ancien noyau dans le nouveau (ça peut
marcher, mais c'est en dernier ressort) :
insmod /lib/modules/2.6.5-1.358smp/kernel/driver/net/bcm5700.ko

--
Bruno


Avatar
machbiole
Merci pour toutes ces explications aussi rapides,

juste encore 2 petites questions de vocabulaire :
un module c'est bien comme une librairie dynamique chargée à la demande, non
?
un paquetage, c'est quoi, ça encapsule un module ?


Chacun voit midi à sa porte, toutefois revenir à XP avec le SP2, hum...


Ok, ça c'était la provoc habituelle pour faire réagir les spécialistes Linux
:-)


Merci encore, je vais creuser tout ça cet après midi

Avatar
Rakotomandimby (R12y) Mihamina
( Wed, 10 Nov 2004 13:10:00 +0100 ) machbiole :

Merci pour toutes ces explications aussi rapides,


De rien. Compare a la hotline MSoft maintenant.

un paquetage, c'est quoi, ça encapsule un module ?


La plupart des logiciel disponibles pour Linux sont disponibles en code
source.

Chaque distribution a ces specificités, specialement pour l'arrangement
des repertoire (je generalise pour mieux expliquer)

Un paquetage, est (tres) souvent specifique a chaque distribution.

Un paquetage est la version compilée des softs (ceux-la qui sont
disponibles sous forme de sources).

Ok, ça c'était la provoc habituelle pour faire réagir les
spécialistes Linux


N'en abuse pas ....
--
ASPO Infogérance - http://aspo.rktmb.org/activites/infogerance
Unofficial FAQ fcolc - http://faq.fcolc.eu.org/
Linux User Group sur Orléans et alentours.
Tél: + 33 2 38 76 43 65 (France)

Avatar
Rakotomandimby (R12y) Mihamina
( Wed, 10 Nov 2004 13:45:08 +0100 ) Rakotomandimby (R12y) Mihamina :
Un paquetage est la version compilée des softs (ceux-la qui sont
disponibles sous forme de sources).


Sinon:
http://faq.fcolc.eu.org/search?SearchableText=packages
--
ASPO Infogérance - http://aspo.rktmb.org/activites/infogerance
Unofficial FAQ fcolc - http://faq.fcolc.eu.org/
Linux User Group sur Orléans et alentours.
Tél: + 33 2 38 76 43 65 (France)

Avatar
françois
Rakotomandimby (R12y) Mihamina wrote:
( Wed, 10 Nov 2004 13:45:08 +0100 ) Rakotomandimby (R12y) Mihamina :

Un paquetage est la version compilée des softs (ceux-la qui sont
disponibles sous forme de sources).





hum, pas tout à fait d'accord, même si ton raisonnement
est simplifié pour mieux expliquer.

N'existe t-il pas des packages sources, style debian
(apt-get source X ==> telecharge les archives du paquet mentionné)
un package (dans ce contexte)est tout simplement un fichier unique
regroupant tous les fichiers nécessaire à l'installation sur un système,
c'est donc une archive, elle peut contenir ce que tu veux, des fichiers
de conf, d'aide, du code source ou du code compilé. Une fois sur le
sytème, le package se décompacte (apt rpm ...) et l'utilitaire qui s'en
occupe va lire un fichier issu du "dépacktage" indiquant la marche à
suivre pour l'install.


Avatar
Jerome Lambert
françois a écrit:

Rakotomandimby (R12y) Mihamina wrote:
( Wed, 10 Nov 2004 13:45:08 +0100 ) Rakotomandimby (R12y) Mihamina :

Un paquetage est la version compilée des softs (ceux-la qui sont
disponibles sous forme de sources).





hum, pas tout à fait d'accord, même si ton raisonnement
est simplifié pour mieux expliquer.

N'existe t-il pas des packages sources, style debian
(apt-get source X ==> telecharge les archives du paquet mentionné)
un package (dans ce contexte)est tout simplement un fichier unique
regroupant tous les fichiers nécessaire à l'installation sur un système,
c'est donc une archive, elle peut contenir ce que tu veux, des fichiers
de conf, d'aide, du code source ou du code compilé. Une fois sur le
sytème, le package se décompacte (apt rpm ...) et l'utilitaire qui s'en
occupe va lire un fichier issu du "dépacktage" indiquant la marche à
suivre pour l'install.


Cette explication tient mieux la route.

On s'en rend plus facilement compte quand on utilise des rpm.

- Si le nom contient une référence vers une plateforme, on a affaire à un
paquet contenant entre autres des binaires compilés pour la plateforme (il
peut aussi y avoir de la doc, comme le man de la commande installée).
Exemple: tar-1.13.25-14.i386.rpm

- Si le paquet contient le terme "devel", il s'agit d'un ensemble de
fichiers nécessaires aux dévelopement du programme, comme
gimp-devel-2.0.1-3.i386.rpm

- Les autres paquets, regroupés sous le terme "noarch" contiennent, suivant
l'humeur, de la documentation (gimp-help-2-0.0.2.noarch.rpm), les fichiers
de localisation (man-pages-fr-0.9.7-10.noarch.rpm ou
kde-i18n-French-3.2.2-2.noarch.rpm), un peu de tout (p.ex des fontes de
caractères: fonts-ISO8859-2-1.0-12.noarch.rpm) ou encore des outils
d'administration en Perl ou en Python
(system-config-display-1.0.14-1.noarch.rpm)

--
Tu as lu les docs. Tu es devenu un informaticien. Que tu le veuilles ou non.
Lire la doc, c'est le Premier et Unique Commandement de l'informaticien.
-+- TP in: Guide du Linuxien pervers - "L'évangile selon St Thomas"



Avatar
Shmurtz
Le Wed, 10 Nov 2004 13:42:07 +0000, françois s'exprimait:

Rakotomandimby (R12y) Mihamina wrote:
( Wed, 10 Nov 2004 13:45:08 +0100 ) Rakotomandimby (R12y) Mihamina :

Un paquetage est la version compilée des softs (ceux-la qui sont
disponibles sous forme de sources).




hum, pas tout à fait d'accord, même si ton raisonnement
est simplifié pour mieux expliquer.

N'existe t-il pas des packages sources, style debian


Ça existe pour les rpms aussi et permet d'installer un soft ou de créer
un binaire pour ta machine alors que le binaire fourni n'est pas adapté
à ta distrib.


--
The BEST oxymoron: Microsoft Works®