RT2500 - SuSE 10.1

Résolu
Hello,
Finalement j'ai pû terminer l'installation complète de mon pilote et de l'utilitaire de mon adaptateur Wi-fi basé sur le chipset RT2500 (Realtek).
Mais un roblème intervient maintenant :
PRECISION:~ # modprobe rt2500
FATAL: Error inserting rt2500 (/lib/modules/2.6.16.13-4-default/extra/rt2500.ko): Invalid module format

:'(
C'est vraiment long à force, si quelqu'un a déja eu le problème .........
Merci
--
L'urgent est fait, l'impossible est en cours,
Pour les miracles, prévoir un délai ...

37 réponses

Résumé de la discussion

Problème rencontré après l’installation du pilote Realtek RT2500 et de l’utilitaire : modprobe rt2500 échoue avec l’erreur FATAL: Invalid module format sur le fichier rt2500.ko. Des réponses indiquent que l’erreur provient d’un décalage entre le noyau actif et le module, et préconisent de recompiler rt2500 avec les en-têtes du même noyau ou d’installer le module correspondant à la version en cours. En cas de doute sur le noyau utilisé, il est conseillé de vérifier uname -r, d’ajuster le lien vmlinuz vers le noyau courant et de tester le démarrage, puis d’évaluer la nécessité de générer un initrd adapté.

Bobot (l’IA à votre service)
  1. Modérateur
    Arg, j'avais déja changé de version X-|
    installation logiciels#16

    Et en plus, j'ai eu besoin de cette version pour installer certains log sans quoi ça échouait
    0
    1. Modérateur
      Re,

      Oui, je me rappelle ton thread.
      Chez moi par exemple j'ai 3 versions mais j'utilise un lien vers le gcc qui me convient. Donc quand j'ai installé le driver pour mon wi-fi j'ai du utiliser gcc 3.4 mais j'ai oublié que le noyau je l'ai compilé avec gcc 3.3

      lami20j@debian:~/bin/my_deb_perl$ ls -l /usr/bin/gcc*
      lrwxrwxrwx  1 root root    16 2006-06-13 20:07 /usr/bin/gcc -> /usr/bin/gcc-3.4
      -rwxr-xr-x  1 root root 69960 2004-03-10 07:47 /usr/bin/gcc-2.95
      -rwxr-xr-x  1 root root 85196 2005-05-25 02:03 /usr/bin/gcc-3.3
      -rwxr-xr-x  1 root root 84972 2005-05-06 01:19 /usr/bin/gcc-3.4
      lrwxrwxrwx  1 root root    10 2006-06-13 20:07 /usr/bin/gccbug -> gccbug-3.3
      -rwxr-xr-x  1 root root 16056 2005-05-25 01:25 /usr/bin/gccbug-3.3
      -rwxr-xr-x  1 root root 16198 2005-05-06 01:06 /usr/bin/gccbug-3.4
      
      lami20j
      0
    2. Modérateur
      Moi j'ai que ça :
      PRECISION:/ # ls -l /usr/bin/gcc*
      -rwxr-xr-x 1 root root 122848 2006-04-29 01:14 /usr/bin/gcc
      -rwxr-xr-x 1 root root  16404 2006-04-29 01:13 /usr/bin/gccbug

      A moins que ce ne soit l'ancienne version celle-ci ?
      Elle date d'avril
      0
  2. Modérateur
    Re,

    gcc --version

    Mais ce n'est pas ça qui compte.
    As-tu compilé le noyau? Si oui avec quel gcc?
    C'est le même que celui avec lequel tu compile ton driver?

    lami20j
    0
    1. Modérateur
      gcc (GCC) 3.3.6

      As-tu compilé le noyau? Si oui avec quel gcc?
      Pffff, j'en sais rien, je ne pense pas, j'ai installé les sources c'est tout.
      0
      1. Modérateur
        Je peux retrouver ma première version de gcc et naviguer entre les deux selon ce que j'ai besoin ?
        ..... ou est-elle définitivement effacée ?
        0
        1. Modérateur
          Salut,

          je ne sais pas sous Suse mais sour Debian j'ai
          lami20j@debian:~$ apt-cache search --names-only '^gcc-[0-9]'
          gcc-2.95 - The GNU C compiler
          gcc-2.95-doc - Documentation for the GNU compilers (gcc, gobjc, g++)
          gcc-3.3 - The GNU C compiler
          gcc-3.3-base - The GNU Compiler Collection (base package)
          gcc-3.3-doc - Documentation for the GNU compilers (gcc, gobjc, g++)
          gcc-3.4 - The GNU C compiler
          gcc-3.4-base - The GNU Compiler Collection (base package)
          gcc-3.4-doc - Documentation for the GNU compilers (gcc, gobjc, g++)
          
          Et j'ai installé toutes les versions disponibles.
          Et /usr/bin/gcc est un lien vers /usr/bin/gcc-X.X

          lami20j
          0
          1. Modérateur
            J'ai réinstallé la version initiale de gcc avec yast, mais je crois que ça va pas être bon :)
            PRECISION:/home/administrateur # gcc -version
            gcc: option «-version» non reconnue
            gcc: pas de fichier à l'entrée
            0
            1. Modérateur
              Salut Yoan,

              En règle générale, les options "longues" (comme "version", "help" etc...), prennent 2 tirets devant :
              gcc --version
              et les options "courtes", un seul.

              ;-))
              0
            2. Modérateur
              Salut,
              Ah, c'est toujours la 3.3.6 ;-))
              0
          2. Modérateur
            Re,

            je vois qu'on commence à se concentrer sur la version de gcc et en fait le problème ce n'est pas ça.

            L'idée c'est d'avoir compiler le noyau et le driver avec le même gcc.

            Tu peux télécharger la dernière version de noyau 2.6.17 tu l'as compiles ensuite tu installes ton driver et normalement tout ira bien.

            C'est possible que ton driver soit dans le noyau.

            lami20j

            P.S. Si tu ne tiens pas trop à SUSE passe à Debian ;)
            0
            1. Modérateur
              L'idée c'est d'avoir compiler le noyau et le driver avec le même gcc.
              Ah OK, bah effectivement j'ai été obligé de changer de GCC sans quoi je pouvais pas faire grand chose avec plusieurs logiciels.

              P.S. Si tu ne tiens pas trop à SUSE passe à Debian ;)
              Vu le temps que j'ai mis pour configurer ma SuSE comme elle me convient, je vais pas changer tout de suite :) En plus je voudrais changer de disque-dur, j'espère pouvoir faire une image du système.
              Mais d'après ce que j'ai compris, avec d'autres systèmes, on est un peu plus "en liberté", moins gérer quoi, ce qui permet de faire plus de n'importe-quoi. C'est interessant quand on connaît bien la bête, mais avant ....
              0
              1. Modérateur
                Je suis obligé de reprendre mon ancienne version ? Comment savoir laquelle était-ce alors ?
                Est-il possible de récupérer le premier gcc sans devoir à nouveau le télécharger ?
                Et pour finir, comment "switcher" de l'un à l'autre, selon les besoins ?

                Merci :-)
                0
                1. Contributeur
                  Salut :-)

                  En gros, les gcc diffèrent selon 3 familles, le 2.95, les 3.3 et le nouveau, le 4.0 (en gros). Il est généralement possible de tous les installer (car pour la compatibilité de certaines applications/drivers que l'on veut compiler c'est parfois nécéssaire) et ils se trouvent tous dans /usr/bin, avec un lien symbolique en guise de /usr/bin/gcc donc pour switcher il suffit de changer la destination du lien...

                  Sinon, le driver rt2500 je l'utilise depuis un moment il marche très bien ! Je pense aussi qu'il faut recompiler noyau + driver proprement. Mais si tu n'as pas l'habitude de bidouiller et plutôt d'installer les paquets rpm, là c'est une autre histoire et je sais pas comment faire... Mais ce serait pour toi une bonne occasion d'apprendre, surtout que ces manip là, sous le pingouin, les apprendre, c'est pas du temps de perdu !

                  Bon courage.
                  0
                  1. Modérateur
                    Salut,
                    Quand on ne sait pas, ça donne envie d'abandonner. L'apprentissage pour arriver au même niveau que sous Windows risque d'être difficile. Je tente également de monter mes machines en réseau, ça marchait à peu près bien au début, il me restait le partage de fichiers à voir, maintenant je n'ai plus rien. J'ouvrirai bientôt un autre post pour le réseau :D

                    Mais ce serait pour toi une bonne occasion d'apprendre, surtout que ces manip là, sous le pingouin, les apprendre, c'est pas du temps de perdu !
                    vi, pourquoi pas, recompiler le noyau ça me semble pas mal :-D
                    Je vais pas planter mon système avec ça ?
                    p'is comment-faut-il faire ? :)
                    0
                    1. Modérateur
                      Salut,

                      vi, pourquoi pas, recompiler le noyau ça me semble pas mal :-D
                      Je vais pas planter mon système avec ça ?
                      p'is comment-faut-il faire ? :)


                      Prends la dernier version 2.6.17 ici https://www.kernel.org/

                      kernel failles decouvertes maj vers 2 6 16#1

                      lami20j
                      0
                      1. Modérateur
                        Salut,
                        Il va remplacer l'ancien noyau ? ou me prendre plus de place ?
                        C'est pas que je suis radin, mais je suis limité :-|
                        0
                      2. Modérateur
                        @YoanRe,

                        il faut toujours garder l'ancien noyau au cas ou.

                        Comme ça si avec le nouveau noyau ça ne marche pas tu pourras toujours démarrer avec l'ancien.

                        lami20j
                        0
                      3. Modérateur
                        @YoanSalut vous deux,

                        C'est pas que je suis radin, mais je suis limité :-|
                        En général, moins de 2 Mo (en moyenne 1,7 Mo)

                        Par contre les sources faut compter plus de 200 Mo... :-(

                        ;-))
                        0
                    2. Modérateur
                      Re,

                      Par contre les sources faut compter plus de 200 Mo...

                      415 Mo pour 2.6.16.20

                      Mais une fois compilé tu peux supprimé les sources.

                      A savoir que chaque pour chaque kernel on aura /lib/modules/2.6.x

                      lami20j
                      0
                      1. Modérateur
                        arf, il faut que je prenne quoi ? Je suis embêté moi avec tout ça :
                        ftp://ftp.kernel.org/pub/
                        Même avec le fchier HTML il n'y a pas le noyau tout seul
                        :-)
                        Merci
                        0
                        1. Modérateur
                          Salut,

                          Ici tu as les options de configuration du noyau
                          http://casteyde.christian.free.fr/system/linux/guide/online/a11052.html

                          1. téléchargement
                          wget  http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.17.1.tar.bz2
                          wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.17.1.tar.bz2.sign  

                          2. vérification de la signature
                          gpg --keyserver wwwkeys.pgp.net --recv-keys 0x517D0F0E
                          gpg --fingerprint
                          gpg --verify linux-2.6.17.1.tar.bz2.sign linux-2.6.17.1.tar.bz2
                          2. décompression et préparation de répertoire
                          cd /usr/src
                          tar xjf /home/yoan/linux-2.6.17.1.tar.bz2
                          ln -sfn linux-2.6.17.1 linux
                          cd linux
                          cp -v /boot/config-$(uname -r) .config
                          3. compilation
                          make bzImage
                          make modules
                          4. copie des fichiers dans /boot
                          cp -v System.map /boot/System.map-2.6.17.1
                          cp -v arch/i386/boot/bzImage /boot/vmlinuz-2.6.17.1
                          5. installation des modules
                          make modules_install
                          6. création de initrd.img
                          mkinitrd -o /boot/initrd.img-2.6.17.1 2.6.17.1
                          Sous Mandriva je n'ai pas eu besoin de -o (à voir sur ton OS - man mkinitrd)

                          7. editer grub (lilo je ne connais pas)
                          title           Suse GNU/Linux, kernel 2.6.17.1
                          root            (hd0,X)
                          kernel          /boot/vmlinuz-2.6.17.1 root=/dev/hdaX ro
                          initrd          /initrd.img-2.6.17.1
                          Si tu as dédié une partition pour /boot alors la 3ème ligne doit être
                          kernel          /vmlinuz-2.6.17.1 root=/dev/hdaX ro
                          Ce n'est qu'un exemple, je ne connais pas ton partitionnement.

                          Comme ça tu auras une nouvelle entrée dans ton grub, donc si jamais ça ne marche pas ce n'est pas grave. Tu pourras toujours démarrer avec l'ancien noyau.

                          lami20j
                          0
                          1. Modérateur
                            Merci (En passant tu peux mettre ça dans la base de connaissance, même si c'est à adapter, ça peut être très utile).

                            PRECISION:/home/administrateur # gpg --keyserver wwwkeys.pgp.net --recv-keys 0x517D0F0E
                            gpg: requête de la clé 517D0F0E du serveur hkp wwwkeys.pgp.net
                            gpg: clé 517D0F0E: clé publique « Linux Kernel Archives Verification Key <ftpadmin@kernel.org> » importée
                            gpg: aucune clé de confiance ultime n'a été trouvée
                            gpg:        Quantité totale traitée: 1
                            gpg:                       importée: 1
                            PRECISION:/home/administrateur # gpg --fingerprint
                            /root/.gnupg/pubring.gpg
                            ------------------------
                            pub   1024D/9C800ACA 2000-10-19 [expire: 2008-06-21]
                                Empreinte de la clé = 79C1 79B2 E1C8 20C1 890F  9994 A84E DAE8 9C80 0ACA
                            uid                  SuSE Package Signing Key <build@suse.de>
                            sub   2048g/8495160C 2000-10-19 [expire: 2008-06-21]
                            
                            pub   1024R/307E3D54 2006-03-21 [expire: 2008-06-21]
                                Empreinte de la clé = 4E98 E675 19D9 8DC7 362A  5990 E3A5 C360 307E 3D54
                            uid                  SuSE Package Signing Key <build@suse.de>
                            
                            pub   1024D/517D0F0E 2000-10-10
                                Empreinte de la clé = C75D C40A 11D7 AF88 9981  ED5B C86B A06A 517D 0F0E
                            uid                  Linux Kernel Archives Verification Key <ftpadmin@kernel.org>
                            sub   4096g/E50A8F2A 2000-10-10
                            
                            PRECISION:/home/administrateur # gpg --verify linux-2.6.17.1.tar.bz2.sign linux-2.6.17.1.tar.bz2
                            gpg: Signature faite le mar 20 jun 2006 11:55:20 CEST avec la clé DSA ID 517D0F0E
                            gpg: Bonne signature de « Linux Kernel Archives Verification Key <ftpadmin@kernel.org> »
                            gpg: ATTENTION: Cette clé n'est pas certifiée avec une signature de confiance !
                            gpg:            Rien ne dit que la signature appartient à son propriétaire.
                            Empreinte de clé principale: C75D C40A 11D7 AF88 9981  ED5B C86B A06A 517D 0F0E
                            PRECISION:/home/administrateur #

                            Allons bon, théoriquement je n'aurais pas fait attention mais là comme tu me le fait faire.
                            0
                          2. Modérateur
                            @YoanRe,

                            le message que tu as mis en gras ce n'est pas grave.
                            L'important c'est que l'empreinte correspond, et c'est le cas

                            Empreinte de la clé = C75D C40A 11D7 AF88 9981 ED5B C86B A06A 517D 0F0E

                            PRECISION:/home/administrateur # gpg --verify linux-2.6.17.1.tar.bz2.sign linux-2.6.17.1.tar.bz2

                            Empreinte de clé principale: C75D C40A 11D7 AF88 9981 ED5B C86B A06A 517D 0F0E

                            lami20j

                            P.S. En passant tu peux mettre ça dans la base de connaissance, même si c'est à adapter, ça peut être très utile

                            J'ai pas mal des projets pour la base de connaissance mais chaque fois quand je commence je me rends comptes que je ne peux pas m'arrêter d'écrire. Et ça risque de devenir long.

                            Je vais essayer de faire un sujet concernant la compilation du noyau malgré la multitude des pages qu'on trouve sur net.
                            Mais il faut que je me documente un peu sur lilo. Le système ne compte pas puisqu'il s'agit d'une compilation classique.
                            0
                          3. Modérateur
                            @lami20jok, je suppose que le make va être long ?
                            De toute manière je m'arrêterai avant le 7 :-D
                            0
                          4. Modérateur
                            @lami20jArf :
                            Kernel->user space relay support (formerly relayfs) (RELAY) [y,n]
                            euh ? Keskimdilui ?:-D
                            Merci :)
                            0
                          5. Modérateur
                            @YoanJe crois que tu as exécuteémake config, qui veut dire la configuration en mode texte.

                            Mieux vaut utiliser
                            make menuconfig

                            ou

                            make xconfig

                            Dans les 2 mode tu as à ta disposition de aide (même s'il est en anglais)

                            lami20j
                            0
                        2. Contributeur
                          Quand on ne sait pas, ça donne envie d'abandonner.
                          Non non faut pas :-) T'es sous Linux, t'as plus le droit d'avoir cette politique :-)

                          Les noyaux, je t'explique :
                          Ce sont des fichiers tout seuls, ils se trouvent dans /boot/ (va voir tu verra). En moyenne ils pèsent 2 Mo comme a dit jipicy.
                          Tu peux en mettre là autant que tu veux.
                          Quand tu boot, ton loader (lilo ou grub) choisit le noyau, c'est à dire le fichier, que tu lui as demandé et le lance avec les options que tu lui a demandé. Donc tu peux avoir autant de noyaux dans /boot, ce qui compte c'est la configuration du loader, qui va proposer via son menu tel ou tel noyau (et OS), au choix.

                          Quand tu télécharge des sources, tu les décompresse, dans /usr/src/ de préférence, tu configure et compile ton machin (ça c'est la partie difficile, ça demande du temps surtout au début, on réussit pas forcément depuis la première fois, mais tu trouveras plein de tutos) puis tu récupère ton nouveau noyau, c'est à dire le fameux fichier d'environ 2 Mo, et tu le copie dans /boot en lui donnant un nom explicite (après la compilation il se trouvera ici : /usr/src/linux-2.6.XX.X/arch/i386/boot/bzImage) du style /boot/kernel-2.6.XX.X-try1.

                          Il ne restera plus qu'à modifier lilo/grub pour qu'il puisse booter dessus.
                          Mais tout en laissant la possibilité à ce loader de booter sur ton ancien noyau (comme ça si le nouveau ne marche pas, ce n'est pas un problème).

                          La grosse difficulté reste la configuration, ça demande un peu d'entrainement... Mais c'est une des étapes essentielles pour maîtriser le pingouin, et ça t'apporte beaucoup ensuite !
                          0
                          1. Modérateur
                            ouaip ! J'ai trouvé file:///boot/initrd-2.6.16.13-4-default
                            :-)

                            La grosse difficulté reste la configuration, ça demande un peu d'entrainement... Mais c'est une des étapes essentielles pour maîtriser le pingouin, et ça t'apporte beaucoup ensuite !

                            Ben je pense que ça va venir (sans vouloir être prétentieux, plutôt j'espère), seulement en combien de temps ?
                            0
                          2. Contributeur
                            @Yoanseulement en combien de temps ?
                            ...
                            Pour les miracles, prévoir un délai ...

                            :-D
                            0
                          3. Modérateur
                            @XenorSalut,

                            Celui qui ne crois pas en miracles n'est pas réaliste.

                            lami20j
                            0
                        3. Modérateur
                          Re,

                          Au lieu de

                          3. compilation
                          make bzImage
                          make modules
                          Lire

                          3. configuration et compilation
                          make menuconfig  ou make xconfig
                          make bzImage
                          make modules

                          A voir aussi noyau 2 6 16 et iptables

                          lami20j
                          0
                          1. Modérateur
                            oui tu l'a donné, mais je sais aps ce que c'est. Je ne peux pas terminer l'install du noyau pour le moment. :-/
                            0
                            • 1
                            • 2