Ubuntu : comment installer un script

Bonjour,



je m'adresse aux experts de ce forum : comme d'autres amateurs (je ne suis sous gnu/linux que depuis 2 ans), je me heurte à la galère concernant le driver realtek r8168 (qu'il faut installer à la place du r8169).

J'ai passé plusieurs heures sur des forums où j'ai constaté que je n'étais pas le seul à galérer pour faire cette manip. Passionné par linux, je commence à etre dégouté de ne pas pouvoir l'utiliser sur mon nouveau PC (à cause de cette fameuse carte ethernet). De la à revenir sous Seven, ca me ferait un peu mal...

Puis, j'ai découvert un script qui a priori facilite la tâche :
http://www.jamesonwilliams.com/hardy-r8168

Seul problème, j'ai un peu de mal à faire la manip et surtout à taper les bonnes commandes nécessaires au préalables. Que taper dans le terminal avant de taper les commandes suivantes :
tar xjf r8168_scripts.tar.bz2
cd r8168_scripts
sudo ./switchmods;

Merci.

Je suis sûr que vos conseils n'aideront pas que moi. Et ce sera tout à votre honneur.

20 réponses

Résumé de la discussion

Plusieurs échanges portent sur le driver Realtek r8168 à installer au lieu du r8169 pour Linux, tout en évoquant un script disponible sur jamesonwilliams.com afin de faciliter la manipulation. Des échanges proposent des variantes de commandes, notamment l'organisation des répertoires et l'usage de sudo ou sudo -i, avec des corrections comme remplacer aaa et bb. Pour plusieurs, le script n'a pas fonctionné tel quel: il ne crée pas le module et nécessite des ajustements, notamment des mises à jour et des précisions sur sudo -i. D'autres notent que des vérifications système et des chemins restent nécessaires, et que certains préconisent d'éviter sudo -i au profit de sudo devant chaque commande.

Bobot (l’IA à votre service)
  1. Ça ne vient pas de toi ( a priori ). Le script n'a pas réussi à créer son module ( et il ne dit pas pourquoi... ). Je vais voir sur le site en question si je trouve quelque chose pour t'aider, mais je ne te promet absolument rien :/
    1. Non seulement il sont en doublons, mais en plus ils ne marcheront pas tels quels ( les aaa et bb sont à remplacer respectivement par 025 et 00 dans ce cas.

      Les sudo devant les ./autorun sont inutiles du fait de l'utilisation de sudo -i

      En 4, tu as oublié le "cd " encore une fois ;)
      1. Je t'ai retouché le script, voilà la nouvelle version qui a priori devrait marcher.

        http://www.me
        diafire.com/?jdcepzubr3q8p1t

        1-Je mets le dossier compressé dans Documents
        2-J'ouvre un terminal
        3-tapes sudo -i
        4-cd /home/philippe/Documents
        5-tar xjf r8168_scripts.tar.bz2
        6-cd r8168_scripts
        7- ./switchmods;
        1. J'ai dû couper l'adresse en deux, sinon le message était automatiquement supprimé...
      2. Contributeur
        Il n'y a rien à taper avant, si ce n'est se mettre dans le répertoire contenant le fichier téléchargé.
        1. pour être clair :

          Imaginons que je mette le fichier compressé dans Documents. J'ouvre Documents et ensuite je fais juste dans le terminal :

          tar xjf r8168_scripts.tar.bz2
          cd r8168_scripts
          sudo ./switchmods;

          Je ne vais pas avoir un message qui va me dire Dossier introuvable ? Pourtant, je n'ai pas indiqué le chemin dans le terminal ?

          Merci
          1. Merci

            Donc pour résumer :

            1-Je mets le dossier compressé dans Documents
            2-J'ouvre un terminal
            3-tapes sudo -i
            4-cd ~/Documents
            5-tar xjf r8168_scripts.tar.bz2
            6-cd r8168_scripts
            7-sudo ./switchmods;

            C'est correct ?

            Merci
            1. Contributeur
              Aucun intérêt à faire un sudo -i si tu passes par sudo ./switchmods
          2. Heu, évite le sudo -i, ou alors remplace ~/Documents par /home/tonpseudo/Documents et enlève le sudo en 7
            1. OK

              1-Je mets le dossier compressé dans Documents
              2-J'ouvre un terminal
              3-tapes sudo -i
              4-/home/philippe/Documents
              5-tar xjf r8168_scripts.tar.bz2
              6-cd r8168_scripts
              7- ./switchmods;

              PS : je tape sudo -i car si je tape que sudo, j'ai toujours un message me disant qu'il y a erreur d'authentification (je tape pourtant le bon password...)

              Merci
              1. en 4 : cd /home/philippe/Documents
            2. ok

              merci, je teste ca de suite et vous tiens au courant

              J'ai du faire une fausse manip car je n'ai toujours pas d'internet. Voici ce que j'ai sur mon terminal :

              philippe@philippe-H67MA-UD2H-B3:~$ sudo -i
              [sudo] password for philippe:
              root@philippe-H67MA-UD2H-B3:~# cd /home/philippe/Documents
              root@philippe-H67MA-UD2H-B3:/home/philippe/Documents# tar xjf r8168_scripts.tar.bz2
              root@philippe-H67MA-UD2H-B3:/home/philippe/Documents# cd r8168_scripts
              root@philippe-H67MA-UD2H-B3:/home/philippe/Documents/r8168_scripts# ./switchmods;
              Attempting to remove running r8168 and r8169 modules if loaded...
              Attempting to move /lib/modules/3.0.0-12-generic-pae/kernel/drivers/net/r8169.ko to /lib/modules/3.0.0-12-generic-pae/kernel/drivers/net/r8169.ko.bak.
              Blacklisting r8169 in /etc/modprobe.d/blacklist...
              Creating a tmp dir in which to build the module...
              Checking for gcc and linux-headers-3.0.0-12-generic-pae... OK
              Attempting to build the module...Could not build module.
              root@philippe-H67MA-UD2H-B3:/home/philippe/Documents/r8168_scripts#
              1. d'accord, entre temps, il y a peut-etre une autre solution :

                j'ai téléchargé sur le site de realtek le driver r8168-8.025.00.tar.bz2

                Donc, pour reprendre la manip suivante, selon vos conseils :

                1-Je mets le dossier compressé dans Documents
                2-J'ouvre un terminal
                3-tapes sudo -i
                4-/home/philippe/Documents
                5- tar xvjf r8168-8.025.00.tar.bz2
                6-cd r8168-8.025.00/
                7-sudo ./autorun.sh

                Une fois le driver compilé, c'est expliqué dans le README
                Depuis le terminal :
                1-sudo -i
                2- # tar vjxf r8168-8.aaa.bb.tar.bz2
                3- (Change to the directory) : # cd r8168-8.aaa.bb
                4- sudo ./autorun.sh

                Il faut décharger l'ancien module :
                1-sudo -i
                2-rmmod r8169

                Et le mettre dans la blackliste pour l'empêcher de se charger au prochain démarrage :
                1-sudo -i
                2-echo "blacklist r8169" >> /etc/modprobe.d/blacklist.conf

                et pour vérifier que c'est bon :
                1-sudo -i
                2-# lsmod | grep r8168
                3-# ifconfig -a

                Y a t-il des erreurs d'après vous ?

                Merci
                1. Le 1er script n'est pas mis à jour depuis 2009, ça vient peut-être de là.

                  Pour la méthode constructeur, le "sudo -i" n'est à faire qu'une seule fois, et du coup les sudo sont inutiles. Attention aussi à ne pas copier les #.
                  Aussi, le deuxième groupe de commandes n'est pas à faire ( c'est l'équivalent du premier ).
              2. Donc, selon vos conseils :

                1-Je mets le dossier compressé dans Documents
                2-J'ouvre un terminal
                3-tapes sudo -i
                4-/home/philippe/Documents
                5- tar xvjf r8168-8.025.00.tar.bz2
                6-cd r8168-8.025.00/
                7-sudo ./autorun.sh

                Une fois le driver compilé, c'est expliqué dans le README
                Depuis le terminal :
                8 - tar vjxf r8168-8.aaa.bb.tar.bz2
                9- (Change to the directory) : cd r8168-8.aaa.bb
                10- sudo ./autorun.sh

                Il faut décharger l'ancien module :
                11-rmmod r8169

                Et le mettre dans la blackliste pour l'empêcher de se charger au prochain démarrage :
                12-echo "blacklist r8169" >> /etc/modprobe.d/blacklist.conf

                et pour vérifier que c'est bon :
                13 lsmod | grep r8168
                14- ifconfig -a

                selon vous les 8, 9 et 10 sont en inutiles car doublons ?

                Merci
                1. je suis en train de prendre une belle lecon qui me sera très utile.

                  Donc :

                  1-Je mets le dossier compressé dans Documents
                  2-J'ouvre un terminal
                  3-tapes sudo -i
                  4-/home/philippe/Documents
                  5- tar xvjf r8168-8.025.00.tar.bz2
                  6-cd r8168-8.025.00/
                  7-./autorun.sh

                  Une fois le driver compilé, c'est expliqué dans le README
                  Depuis le terminal :
                  8 - tar vjxf r8168-8.aaa.bb.tar.bz2
                  9- (Change to the directory) : cd r8168-8.025.00
                  10-./autorun.sh

                  Il faut décharger l'ancien module :
                  11-rmmod r8169

                  Et le mettre dans la blackliste pour l'empêcher de se charger au prochain démarrage :
                  12-echo "blacklist r8169" >> /etc/modprobe.d/blacklist.conf

                  et pour vérifier que c'est bon :
                  13 lsmod | grep r8168
                  14- ifconfig -a
                  1. Et en 4 : cd /home/philippe/Documents

                    :)

                    Edit : sans faire les 8,9 et 10
                    1. 1-Je mets le dossier compressé dans Documents
                      2-J'ouvre un terminal
                      3-tapes sudo -i
                      4-cd /home/philippe/Documents
                      5- tar xvjf r8168-8.025.00.tar.bz2
                      6-cd r8168-8.025.00/
                      7-./autorun.sh

                      Il faut décharger l'ancien module :
                      8-rmmod r8169

                      Et le mettre dans la blackliste pour l'empêcher de se charger au prochain démarrage :
                      9-echo "blacklist r8169" >> /etc/modprobe.d/blacklist.conf

                      et pour vérifier que c'est bon :
                      10 lsmod | grep r8168
                      11- ifconfig -a

                      Facile quand on est aidé ;-)

                      Je vais tester ca de suite et j'espère que ca marchera car je serai un peu frustré de ne pas pouvoir rester sous linux

                      EDIT: petit soucis

                      philippe@philippe-H67MA-UD2H-B3:~$ sudo -i
                      [sudo] password for philippe:
                      root@philippe-H67MA-UD2H-B3:~# cd /home/philippe/Documents
                      root@philippe-H67MA-UD2H-B3:/home/philippe/Documents# tar xvjf r8168-8.025.00.tar.bz2
                      r8168-8.025.00/
                      r8168-8.025.00/Makefile
                      r8168-8.025.00/src/
                      r8168-8.025.00/src/rtl_eeprom.h
                      r8168-8.025.00/src/r8168_asf.h
                      r8168-8.025.00/src/rtltool.h
                      r8168-8.025.00/src/r8168_asf.c
                      r8168-8.025.00/src/r8168_n.c
                      r8168-8.025.00/src/rtl_eeprom.c
                      r8168-8.025.00/src/rtltool.c
                      r8168-8.025.00/src/Makefile
                      r8168-8.025.00/src/r8168.h
                      r8168-8.025.00/src/Makefile_linux24x
                      r8168-8.025.00/README
                      r8168-8.025.00/autorun.sh
                      root@philippe-H67MA-UD2H-B3:/home/philippe/Documents# cd r8168-8.025.00/
                      root@philippe-H67MA-UD2H-B3:/home/philippe/Documents/r8168-8.025.00# ./autorun.sh

                      Check old driver and unload it.
                      Build the module and install
                      [: 48: r8168: unexpected operator
                      Backup r8169.ko
                      rename r8169.ko to r8169.bak
                      Depending module. Please wait.
                      load module r8168
                      WARNING: All config files need .conf: /etc/modprobe.d/blacklist, it will be ignored in a future release.
                      FATAL: Module r8168 not found.
                      Completed.
                      root@philippe-H67MA-UD2H-B3:/home/philippe/Documents/r8168-8.025.00# rmmod r8169
                      ERROR: Module r8169 does not exist in /proc/modules
                      root@philippe-H67MA-UD2H-B3:/home/philippe/Documents/r8168-8.025.00# lsmod | grep r8168
                      root@philippe-H67MA-UD2H-B3:/home/philippe/Documents/r8168-8.025.00# ifconfig -a
                      lo Link encap:Boucle locale
                      inet adr:127.0.0.1 Masque:255.0.0.0
                      adr inet6: ::1/128 Scope:Hôte
                      UP LOOPBACK RUNNING MTU:16436 Metric:1
                      Packets reçus:8 erreurs:0 :0 overruns:0 frame:0
                      TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
                      collisions:0 lg file transmission:0
                      Octets reçus:712 (712.0 B) Octets transmis:712 (712.0 B)

                      root@philippe-H67MA-UD2H-B3:/home/philippe/Documents/r8168-8.025.00#
                      1. Pourrais-tu me donner la sortie de ces deux commandes :

                        uname -a

                        lsmod | grep r8169
                        1. Si tu es en 11.10, ce thread semble donner une méthode qui marche : http://ubuntuforums.org/showthread.php?t=1861865

                          Si tu ne comprends pas l'anglais, je vais tenter de te faire une synthèse de ce qu'il y a à faire ( mais faudra attendre un petit peu :p )
                      2. resultat : philippe@philippe-H67MA-UD2H-B3:~$ uname -a

                        Linux philippe-H67MA-UD2H-B3 3.0.0-12-generic-pae #20-Ubuntu SMP Fri Oct 7 16:37:17 UTC 2011 i686 i686 i386 GNU/Linux

                        philippe@philippe-H67MA-UD2H-B3:~$ lsmod | grep r8169
                        philippe@philippe-H67MA-UD2H-B3:~$

                        Pour infos :
                        philippe@philippe-H67MA-UD2H-B3:~$ lspci

                        00:00.0 Host bridge: Intel Corporation 2nd Generation Core Processor Family DRAM Controller (rev 09)
                        00:01.0 PCI bridge: Intel Corporation Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port (rev 09)
                        00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)
                        00:16.0 Communication controller: Intel Corporation 6 Series/C200 Series Chipset Family MEI Controller #1 (rev 04)
                        00:1a.0 USB Controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 (rev 05)
                        00:1b.0 Audio device: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller (rev 05)
                        00:1c.0 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 1 (rev b5)
                        00:1c.6 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 7 (rev b5)
                        00:1d.0 USB Controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 (rev 05)
                        00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev a5)
                        00:1f.0 ISA bridge: Intel Corporation H67 Express Chipset Family LPC Controller (rev 05)
                        00:1f.2 SATA controller: Intel Corporation 6 Series/C200 Series Chipset Family 6 port SATA AHCI Controller (rev 05)
                        00:1f.3 SMBus: Intel Corporation 6 Series/C200 Series Chipset Family SMBus Controller (rev 05)
                        01:00.0 USB Controller: NEC Corporation uPD720200 USB 3.0 Host Controller (rev 04)
                        03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 06)
                        philippe@philippe-H67MA-UD2H-B3:~$

                        Concernant la solution évoquée (http://ubuntuforums.org/showthread.php?t=1861865), le post 6 donne une solution qui parait compliquée ;-)
                        1. Arf... Ils sont méchants sur Comment ça marche... Je t'ai refais le premier script, et je te l'ai uploadé sur un site de partage. Mais dès que je met l'adresse pour le télécharger, mon message est supprimé... Envoie moi un mail à temeliak arobase gmail point com, je te filerai directement le script.