Page suivante Page précédente Table des matières

10. Questions diverses.

Tout ce qui se rapporte à Ethernet et qui ne rentrait pas ailleurs a fini ici. Cela n'est peut-être pas intéressant ou ne rentre pas bien dans le cadre du document, mais c'est là, un point c'est tout.

10.1 Passage des arguments Ethernet au noyau

Voici deux commandes génériques du noyau qui peuvent être passées au noyau au moment du démarrage. Vous pouvez le faire avec LILO, loadlin, ou tout autre utilitaire de démarrage qui accepte des arguments optionnels.

Par exemple, si la commande était `blabla' et qu'elle attend trois arguments (disons 123, 456 et 789), alors, avec LILO, vous pouvez taper au démarrage :

LILO: linux blabla=123,456,789

Note : les E/S et les IRQ des cartes PCI sont assignées par le BIOS au démarrage. Cela signifie que tout argument de démarrage pour l'IRQ ou les ports d'entrée/sortie d'une carte PCI est généralement ignoré.

Pour plus d'information sur les (et une liste complète des) arguments de démarrage, veuillez consulter le

BootPrompt-HOWTO

La commande ether

Sous sa forme la plus générique, elle ressemble à quelque chose comme :

ether=IRQ,ADR_DE_BASE,PARAM_1,PARAM_2,NOM

Tous les arguments sont optionnels. Le premier argument non-numérique est considéré comme le NOM.

IRQ: Evident. Une valeur d'IRQ de `0' (habituellement la valeur par défaut) signifie affectation automatique de l'IRQ. C'est un accident de l'Histoire que le paramètre d'IRQ soit en premier plutôt que l'adr_de_base -- cela sera corrigé lorsque quelque chose d'autre changera.

ADR_DE_BASE: Evident aussi. Une valeur de `0' (habituellement la valeur par défaut) signifie de tester une liste d'adresses spécifiques à ce type de carte pour essayer de détecter une carte Ethernet.

PARAM_1: Utilisé à l'origine comme une valeur qui passe outre l'adresse de départ de la zone mémoire pour une carte Ethernet à mémoire partagée, comme la WD80*3. Certains pilotes utilisent les quatre bits de poids faible de cette valeur pour fixer le niveau de message de débogage. 0 -- défaut, 1-7 -- niveaux 1 à 7 (7 étant le niveau le plus bavard), 8 -- niveau 0 (pas de messages). Le pilote LANCE utilise les quatre bits de poids faible de cette valeur pour sélectionner le canal DMA. Sinon il utilise l'affectation automatique du DMA.

PARAM_2: Le pilote 3c503 l'utilise pour choisir entre le transceiver interne et le transceiver externe. 0 -- défaut/interne, 1 -- AUI externe. Les cartes E21XX de Cabletron utilisent les quatre bits de poids faible de PARAM_2 pour choisir le support physique. Sinon il est détecté automatiquement.

NOM: Sélectionne le périphérique réseau auquel les valeurs se réfèrent. Le noyau standard utilise les noms `eth0', `eth1', `eth2' et `eth3' pour les cartes Ethernet attachées au bus, et `atp0' pour l'adaptateur `de poche' sur port parallèle. Le pilote ARCnet utilise le nom `arc0'. Le comportement par défaut est de tester une seule carte Ethernet pour `eth0'. Vous ne pouvez activer plusieurs cartes qu'en fixant de façon explicite leur adresse de base avec les paramètres de LILO. Le noyau 1.0 considérait les cartes Ethernet basées sur la puce LANCE comme un cas spécial. Les arguments de LILO étaient ignorés, et les cartes LANCE recevaient toujours des noms `eth<n>' en commençant à `eth0'. Les cartes supplémentaires, non-LANCE, devaient être affectées à `eth<n+1>', et le test habituel de `eth0' devait alors être désactivé avec quelque chose comme `ether=0,-1,eth0'. (Oui, c'est bogué.)

La commande reserve

Cette autre commande LILO est utilisée exactement comme la commande `ether=' ci-dessus, c'est-à-dire que l'on ajoute son nom aux options spécifiées dans lilo.conf :

reserve=IO-base,extent{,IO-base,extent...}

Sur certaines machines, il peut être nécessaire d'empêcher les pilotes de périphérique de tester des périphériques (auto-détection) dans une zone spécifique. Cela peut être le cas à cause d'un matériel mal conçu qui fige le démarrage (comme certaines cartes Ethernet), d'un matériel qui est identifié par erreur, d'un matériel dont l'état a été changé par une procédure de détection précédente, ou plus encore d'un matériel que vous ne souhaitez pas voir initialisé par le noyau.

L'argument de démarrage reserve répond à cette attente en spécifiant une région de port d'E/S qui ne doit pas être testée. Cette région est réservée dans la table d'enregistrement des ports du noyau comme si un périphérique avait déjà été trouvé dans cette région. Notez que ce mécanisme ne devrait pas être nécessaire sur toutes les machines. C'est seulement lorsqu'il y a un problème ou un cas spécial que son utilisation peut se révéler nécessaire.

Les ports d'E/S dans la zone spécifiée sont protégés contre les procédures de détection de périphériques. Nous avons montré que cela est nécessaire lorsqu'un pilote se bloque sur une carte NE2000, ou identifie de façon erronée un autre périphérique comme étant le sien. Un pilote de périphérique correct ne devrait pas tester une zone réservée, à moins qu'un autre argument de démarrage ne spécifie explicitement qu'il doive le faire sur cette zone. Cela implique que reserve sera le plus souvent utilisé avec un autre argument de démarrage. Donc si vous spécifiez une zone de reserve pour protéger un périphérique donné, vous devez généralement spécifier explicitement une détection pour ce périphérique. La plupart des pilotes ignorent la table d'enregistrement des ports si on leur fournit une adresse explicite.

Par exemple, la ligne de démarrage

LILO: linux reserve=0x300,32 ether=0,0x300,eth0

oblige tous les périphériques à l'exception des pilotes Ethernet à ne pas tester la plage 0x300-0x31f.

Comme d'habitude avec les spécificateurs de démarrage, il existe une limite de 11 paramètres, donc vous ne pouvez spécifier que 5 zones réservées par mot-clé reserve. Plusieurs spécificateurs reserve fonctionneront si vous avez une requête inhabituellement compliquée.

10.2 Utilisation des pilotes Ethernet comme modules

La majorité des distributions disponibles ont des noyaux avec très peu de pilotes intégrés. Les pilotes sont fournis comme modules chargeables dynamiquement. Ces pilotes modulaires sont normalement chargés par l'administrateur via la commande modprobe(8) dans certains cas, ils sont automatiquement chargés par le noyau via kerneld (pour les 2.0) ou kmod (pour les 2.1) qui eux-mêmes font appel à modprobe.

Votre distribution offre peut être de jolis outils graphiques pour configurer les modules ethernet. Si possible, essayez de les utiliser avant tout. La description qui suit explique ce qui se cache derrière ces jolis petits programmes, et ce que ces programment changent.

Les informations qui controlent quel modules doit être utilisé et quelles options devront être stockées dans le /etc/conf.modules. Les deux options qui ont le plus d'interêt (pour les cartes ethernet) qui seront utilisées dans ce fichier sont alias et options. La commande modprobe consulte ce fichier pour les informations sur les modules.

Les modules actuels sont normalement stockés dans un répertoire nommé /lib/modules/`uname -r`/net où la commande uname -r retourne la version du noyau (ex : 2.0.34). Vous pouvez aller y faire un tour pour savoir quel modules peuvent être utilsés avec votre carte.

La première chose à mettre dans votre /etc/conf.modules est une ligne indiquant à modprobe où se trouve le pilote à utiliser avec eth0 (et eth0 et...). Par exemple, si vous avez une carte ISA SMC EtherEZ qui utilise le module smc-ultra.o, vous aurez besoin de créer un alias entre ce pilote et eth0 en ajoutant cette ligne :

        alias eth0 smc-ultra

L'autre chose que vous aurez à faire est une ligne options indiquant quelles options devront être utilisées avec tel module (ou alias de module). Continuons l'exemple ci-dessus : si vous utilisiez uniquement la ligne alias sans ligne options, le noyau vous préviendrait (référez-vous à dmesg) que l'autodétection des cartes ISA n'est pas une bonne idée. Pour supprimer cet avertissement, vous aurez à ajouter une autre ligne donnant au module l'adresse d'E/S de votre carte, dans ce cas, l'adresse hexadécimale 0x280.

        options smc-ultra io=0x280

La plupart des modules ISA acceptent des arguments comme io=0x340 et irq=12 sur la ligne de commande d'insmod. Il est REQUIS ou du moins FORTEMENT RECOMMANDÉ que vous fournissiez ces paramètres pour éviter la détection automatique de la carte. A la différence des périphériques PCI et EISA, il n'existe pas de moyen vraiment sûr de réaliser une détection automatique de la majorité des périphériques ISA, et cela doit donc être évité quand on utilise les pilotes sous la forme de modules chargeables.

Une liste de tous les options que chaque module accepte peut être trouvée dans le fichier :

/usr/src/linux/Documentation/networking/net-modules.txt

Vous avez intérêt à le lire pour trouver quelles options vous pouvez utiliser pour votre carte spécifique. Notez que quelques modules supportent les listes d'options séparées par des virgules, ils sont capables de gérer plusieurs cartes depuis un seul module, par exemple les cartes à base de 8390, et le pilote PLIP.


        option 3c503 io=0x280,0x300,0x330,0x350 xcvr=0,1,0,1

La commande ci-dessus permet à un seul et même module de contrôler quatre cartes 3c503, les cartes 2 et 4 utilisant le transceiver externe. Ne mettez pas d'espace autours des '=' ou des virgules.

Notez aussi que les modules utilisés ne peuvent être supprimés de la mémoire. Cela signifie que vous aurez à faire un ifconfig eth0 down (arrêter la carte ethernet) avant de pouvoir supprimer les modules.

La commande lsmod vous dira quels sont les modules qui sont chargés, et s'ils sont utilisés, et rmmod les supprimera.

10.3 Les listes de diffusion et les groupes de news Linux

Si vous avez des questions sur votre carte Ethernet, s'il vous plaît LISEZ ce document en premier. Vous pourrez aussi joindre le canal NET (réseau) des listes de diffusion Linux en envoyant un message à majordomo@vger.rutgers.edu pour obtenir de l'aide sur les listes disponibles et la façon de les rejoindre. (NDT : envoyez un message contenant simplement le mot "help" à l'adresse indiquée.)

Bien plus, gardez à l'esprit que le canal NET ne concerne que les discussions sur le développement logiciel. Les questions générales concernant la configuration de votre système doivent être dirigées vers comp.os.linux.setup à moins que vous ne soyez activement impliqué(e) dans le développement d'une partie du réseau pour Linux. Nous vous demandons s'il vous plaît de respecter cette ligne de conduite générale pour le contenu de vos messages.

D'autre part, les groupes de news comp.sys.ibm.pc.hardware.networking et comp.dcom.lans.ethernet doivent être utilisés pour des questions qui ne sont pas spécifiques à Linux.

10.4 Autres documents

La plupart des informations que vous trouvez dans ce document proviennent de messages sauvegardés des groupes de comp.os.linux.*, ce qui montre qu'il s'agit d'une source d'informations valable. D'autres informations très utiles proviennent de tout un tas de petits fichiers de Donald lui-même.

Bien entendu, si vous configurez une carte Ethernet, vous voudrez configurer les logiciels que vous allez utiliser, et vous lirez pour cela le Howto NET-3. Ou encore, si vous vous sentez pousser des ailes de ``hacker'', vous pourrez toujours grapiller des informations supplémentaires directement dans les fichiers sources des pilotes. Ils comportent en général un paragraphe ou deux décrivant les points importants, avant que le code ne démarre...

Pour ceux d'entre vous qui recherchent des informations qui ne sont pas spécifiques à Linux (comme : qu'est-ce que 10BaseT, qu'est-ce qu'AUI, que fait un hub, etc.) je vous recommande fortement la FAQ Ethernet (Ethernet-FAQ) qui est postée régulièrement dans le groupe de news comp.dcom.lans.ethernet. Vous pouvez aussi la récupérer sur tout site qui offre les FAQ, comme

Les FAQ de Usenet

Vous pouvez aussi consulter la `Page d'accueil d'Ethernet' pour ainsi dire, qui se trouve à l'URL suivante :

La page d'accueil d'Ethernet

10.5 Contributions

D'autres personnes qui ont contribué (directement ou indirectement) à l'Ethernet-HOWTO, par ordre alphabétique :

        Ross Biro               <bir7@leland.stanford.edu>
        Alan Cox                <iialan@www.linux.org.uk>
        David C. Davies         <davies@wanton.enet.dec.com>
        Bjorn Ekwall            <bj0rn@blox.se>
        David Hinds             <dhinds@allegro.stanford.edu>
        Michael Hipp            <mhipp@student.uni-tuebingen.de>
        Mike Jagdis             <jaggy@purplet.demon.co.uk>
        Duke Kamstra            <kamstra@ccmail.west.smc.com>
        Russell Nelson          <nelson@crynwr.com>
        Cameron Spitzer         <camerons@NAD.3Com.com>
        Dave Roberts            <david.roberts@amd.com>
        Glenn Talbott           <gt@hprnd.rose.hp.com>

Ces adresses de courrier électronique ne sont intentionnellement pas des liens `mailto' afin de protéger ces personnes de programmes de filtrage WWW qui alimentent des robots `spammeurs'. Mille fois merci à ces personnes, et à tous les autres testeurs non-mentionnés d'où qu'ils soient.

10.6 Désistement de responsabilité et Copyright

Ce document n'est pas la bible. Toutefois, il s'agit certainement de la source d'informations la plus à jour que vous pourrez trouver. Personne n'est responsable de ce qui arrive à votre matériel hormis vous-même. Si votre carte Ethernet ou tout autre pièce matérielle de votre ordinateur part en fumée (...bien que ce soit pratiquement impossible !) nous ne prenons aucune responsabilité. LES AUTEURS NE SONT RESPONSABLES D'AUCUN DOMMAGE ENCOURU DU FAIT D'ACTIONS EFFECTUEES EN SE BASANT SUR LES INFORMATIONS COMPRISES DANS CE DOCUMENT.

Ce document est Copyright (c) 1993-1997 by Paul Gortmaker. Il est permis de faire et de distribuer des copies verbatim de ce manuel à condition que la notice de copyright et que cette notice de permission soient préservées dans toutes les copies.

Il est permis de copier et de distribuer des versions modifiées de ce document sous les mêmes conditions que la copie verbatim, à condition que cette notice de copyright soit incluse exactement telle qu'elle est dans l'original, et que le travail dérivé résultant, dans son intégralité, soit distribué sous les termes d'une notice de permission identique à celle-ci.

Il est permis de copier et de distribuer des traductions de ce document dans d'autres langues, sous les mêmes conditions que ci-dessus pour les versions modifiées.

Si vous avez l'intention d'intégrer ce document dans un travail destiné à la publication, contactez-moi (par courrier électronique) afin de pouvoir obtenir les informations le plus à jour possible. Par le passé, des versions dépassées des documents Linux HOWTO ont été publiées, causant aux développeurs le préjudice indu d'être empoisonnés par des questions dont les réponses figuraient déjà dans les versions à jour.

En accord avec cette notice, la version originale (en anglais) telle qu'elle apparaît dans l'Ethernet-HOWTO est fournie ici :

This document is not gospel. However, it is probably the most up to date info that you will be able to find. Nobody is responsible for what happens to your hardware but yourself. If your ethercard or any other hardware goes up in smoke (...nearly impossible!) we take no responsibility. ie. THE AUTHORS ARE NOT RESPONSIBLE FOR ANY DAMAGES INCURRED DUE TO ACTIONS TAKEN BASED ON THE INFORMATION INCLUDED IN THIS DOCUMENT.

This document is Copyright (c) 1993-1997 by Paul Gortmaker. Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.

Permission is granted to copy and distribute modified versions of this document under the conditions for verbatim copying, provided that this copyright notice is included exactly as in the original, and that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.

Permission is granted to copy and distribute translations of this document into another language, under the above conditions for modified versions.

If you are intending to incorporate this document into a published work, please make contact (via e-mail) so that you can be supplied with the most up to date information available. In the past, out of date versions of the Linux HowTo documents have been published, which caused the developers undue grief from being plagued with questions that were already answered in the up to date versions.

Ce document fait partie des HOWTO Linux traduits en français. Vous pouvez trouver une liste à jour de ces documents à l'adresse http://www.freenix.fr/linux/HOWTO/Liste-des-HOWTO.html

Les HOWTO Linux font partie du Linux Documentation Project (LDP). Si vous souhaitez participer au LDP ou à sa traduction en français, vous pouvez consulter http://www.freenix.fr/linux/HOWTO/Liste-des-HOWTO.html ou contacter Eric Dumas, dumas@linux.eu.org.

Cette version française a été réalisée par Mathieu Arnold <arn@multimania.com>, Stéphane Alnet <alnet@u-picardie.fr> était l'ancien traducteur. Elle est Copyright (c) 1997-1998, Mathieu Arnold, selon les termes de la notice ci-dessus.

Si vous constatez des erreurs dans la traduction en français, merci d'en informer le traducteur. Vos remarques seront prises en compte pour la prochaine version de la traduction.

10.7 Conclusion

Si vous avez trouvé une faute de frappe énaurme, ou des informations dépassées dans ce document, merci d'envoyer un courrier électronique. Il a tendance à devenir grand, et il est facile de rater certaines choses. Si vous avez envoyé un courrier à propos d'une modification, et qu'elle n'a pas été incluse dans la version suivante, n'hésitez pas à la ré-envoyer, car elle a pu se perdre dans le flot habituel de SPAM et de prospectus.

Merci !


Page suivante Page précédente Table des matières