<!DOCTYPE LINUXDOC SYSTEM>

<ARTICLE>
<TITLE>Le Linux HOWTO pour les ports série
<AUTHOR>Greg Hankins, <TT><HTMLURL URL="mailto:greg.hankins@cc.gatech.edu"
NAME="greg.hankins@cc.gatech.edu"></TT> <NEWLINE>
traduit par Eric Festinger, <TT><HTMLURL URL="mailto:eric@midix.frmug.org" NAME="eric@midix.frmug.org"></TT>
<DATE>v1.11, 15 Novembre 1997
<ABSTRACT>
        Ce document décrit la configuration sous Linux des ports série,
        des programmes associés, et des périphériques qui y sont
        connectés.
</ABSTRACT>
<TOC>

<SECT>Introduction
<P>
        Ce document est la traduction française du Linux Serial HOWTO.
        Il tente de décrire la configuration des modems et terminaux
        sous Linux, de donner quelques conseils, et enfin de résoudre
        les problèmes liés aux ports série.  Il est destiné plus
        particulièrement aux plateformes Intel x86, même s'il doit être
        applicable à d'autres architectures.

<SECT1>Copyright
<P>
        Copyright (c) 1993 - 1997 Greg Hankins.  Ce document peut être
        redistribué sous les termes de la licence LDP disponible à
        <TT><HTMLURL URL="http://sunsite.unc.edu/LDP/COPYRIGHT.html"
        NAME="http://sunsite.unc.edu/LDP/COPYRIGHT.html"></TT>.  Il ne
        peut être modifié sans l'accord de son auteur.

<SECT1>Nouvelles versions de ce document
<P>
        La version originale la plus récente de ce document est
        disponible à <TT><HTMLURL
        URL="ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/"
        NAME="ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/"></TT> ainsi
        que sur les sites miroirs. D'autres formats (PostScript, DVI...)
        existent dans le répertoire <TT><HTMLURL
        URL="ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/other-formats/"
        NAME="other-formats"></TT>. Ce HOWTO est également consultable à
        <TT><HTMLURL
        URL="http://sunsite.unc.edu/LDP/HOWTO/Serial-HOWTO.html"
        NAME="http://sunsite.unc.edu/LDP/HOWTO/Serial-HOWTO.html"></TT>
        et est posté mensuellement dans le forum de discussions
        <TT><HTMLURL URL="news:comp.os.linux.answers"
        NAME="comp.os.linux.answers"></TT>.

        La version française est disponible sur  <TT><HTMLURL
        URL="http://www.freenix.fr/linux/HOWTO/Serial-HOWTO.html"
        NAME="http://www.freenix.fr/linux/HOWTO/Serial-HOWTO.html"></TT>,
        et est postée tous les mois dans <TT><HTMLURL
        URL="news:fr.comp.os.linux.annonces"
        NAME="fr.comp.os.linux.annonces"></TT>.

<SECT1>Retour d'informations
<P>
        Merci de me faire parvenir par email à <TT><HTMLURL
        URL="mailto:greg.hankins@cc.gatech.edu"
        NAME="greg.hankins@cc.gatech.edu"></TT> toutes questions,
        commentaires et suggestions. Je suis extrêmement intéressé par
        ce que vous pensez à propos de ce HOWTO, et par les éventuelles
        améliorations.   Faites-moi part de ce que vous ne comprenez pas
        ou de ce qui nécessite des éclaircissements. Je répondrais à
        tous les emails, même si ça peut me prendre une semaine ou plus.
        Je reçois beaucoup de messages de <TT/root/ ou de sites mal
        configurés. Assurez-vous de m'envoyer un message électronique en
        tant que personne réelle, ainsi que du bon fonctionnement de
        votre système de messagerie. Si vous n'avez toujours pas de
        réponse de ma part au bout de deux semaines, merci de m'envoyer
        à nouveau votre message.
<P>
        Je peux également être joint à&nbsp;:<NEWLINE> 
        Greg Hankins<NEWLINE>
        College of Computing<NEWLINE>
        801 Atlantic Drive<NEWLINE>
        Atlanta, GA 30332-0280<NEWLINE>
        par courrier postal, et à  <TT><HTMLURL
        URL="http://www.cc.gatech.edu/staff/h/Greg.Hankins/"
        NAME="http://www.cc.gatech.edu/staff/h/Greg.Hankins/"></TT>.
<P>
        Merci d'inclure le numéro de version de ce HOWTO dans votre
        message.  Ceci est la version 1.11.

<SECT1>Avertissement
<P>
        Votre système peut varier par rapport aux exemples, et les
        solutions présentées dans ce HOWTO peuvent ne pas fonctionner.

<SECT>Matériel supporté 
<P>
        Les matériels suivants fonctionnent correctement sous Linux.

<SECT1>Cartes série standards pour PC
<P>
<ITEMIZE>
        <ITEM>cartes série standards pour PC (COM1 - COM4), auxquelles
        peuvent être connectés des périphériques série externes (modems,
        souris série, etc.)
        <ITEM>modems internes standards pour PC (COM1 - COM4)
        <ITEM>Quickpath Systems Port-Folio 550e (autorisant les IRQ 3,
        4, 5, 9, 10, 11, 12, ou 15)
</ITEMIZE>

<P>
        Remarque&nbsp;: en raison de conflits d'adresses, vous ne pouvez
        pas utilisez simultanément COM4 et une carte vidéo IBM8514.
        Ceci est dû à un bogue de la carte IBM8514.

<SECT1>Modems Plug And Play (PnP)
<P>
        Même si les modems PnP fonctionnent sous Linux, je ne les recommande pas.
        Néanmoins, voici quelques conseils&nbsp;:
<ITEMIZE>
        <ITEM>Essayez de désactiver les fonctionnalités PnP dans le BIOS
        de l'ordinateur et du modem.
        <ITEM>Démarrez sous Win95, configurez le modem, et vérifiez que
        les paramètres sont sauvegardés lorsque vous redémarrez sous
        Linux. Si ce n'est pas le cas&nbsp;:
        <ITEM>Démarrez sous Win95, configurez le modem, et redémarrez à
        chaud (<EM/warm boot/) sous Linux, de manière à ce que les
        paramètres soient préservés. Vous pouvez effectuer cette
        manipulation avec <TT/loadlin/.
        <ITEM>Récupérez les outils PnP à <TT><HTMLURL
        URL="http://www.redhat.com/linux-info/pnp"
        NAME="http://www.redhat.com/linux-info/pnp"></TT>.
        <ITEM>Et, bien sûr, utilisez un <EM/vrai/ modem&nbsp;:-)
</ITEMIZE>

<SECT1>Cartes série multiports simples (équipées d'UART 8250/16450/16550A)
<P>
<ITEMIZE>
        <ITEM>AST FourPort et compatibles (4 ports)
        <ITEM>Accent Async-4 (4 ports)
        <ITEM>Arnet Multiport-8 (8 ports)
        <ITEM>Bell Technologies HUB6 (6 ports)
        <ITEM>Boca BB-1004 (4 ports), BB-1008 (8 ports), BB-2016 (16
        ports)
        <ITEM>Boca IOAT66 (6 ports)
        <ITEM>Boca 2by4 (4 ports série, 2 ports parallèles)
        <ITEM>Computone ValuePort V4-ISA (compatible AST FourPort)
        <ITEM>Digi PC/8 (8 ports)
        <ITEM>GTEK BBS-550 (8 ports)
        <ITEM>Longshine LCS-8880, Longshine LCS-8880+ (compatible AST
        FourPort)
        <ITEM>Moxa C104, Moxa C104+ (compatible AST FourPort)
        <ITEM>PC-COMM (4 ports)
        <ITEM><URL URL="http://www.sealevel.com" NAME="Sealevel
        Systems"> COMM-2 (2 ports), COMM-4 (4 ports) et COMM-8 (8
        ports)
        <ITEM>SIIG I/O Expander 2S IO1812 (4 ports)
        <ITEM>STB-4COM (4 ports)
        <ITEM>Twincom ACI/550
        <ITEM>Usenet Serial Board II (4 ports)
</ITEMIZE>
<P>
        De manière générale, Linux supporte n'importe quelle carte
        équipée d'un UART 8250, 16450, 16550 ou 16550A (ou compatible),
        et n'importe quel modem émulant un de ces composants.
<P>
        Remarque&nbsp;: les BB-1004 et BB-1008 ne supportent pas les
        signaux DCD et RI, et ne sont donc pas utilisables pour des
        modems répondeurs. Ils fonctionnent néanmoins très bien dans les
        autres cas.

<SECT1>Cartes série multiports intelligentes
<P>
<ITEMIZE>
        <ITEM>Comtrol RocketPort (ASIC 36MHz ; 4, 8, 16 ou 32 ports)<NEWLINE>
        contact&nbsp;: <TT><HTMLURL URL="mailto:info@comtrol.com"
        NAME="info@comtrol.com"></TT> ou <TT><HTMLURL
        URL="http://www.comtrol.com"
        NAME="http://www.comtrol.com"></TT><NEWLINE> 
        état du gestionnaire de périphérique&nbsp;: supporté par
        Comtrol<NEWLINE>
        emplacement&nbsp;: <TT><HTMLURL
        URL="ftp://tsx-11.mit.edu/pub/linux/packages/comtrol"
        NAME="ftp://tsx-11.mit.edu/pub/linux/packages/comtrol"></TT>

        <ITEM>Computone IntelliPort II (80186 16MHz ; 4, 8, ou 16
        ports),<NEWLINE>
        IntelliPort II EXpandable (80186 20MHz ; 16 - 64 ports)<NEWLINE>
        contact&nbsp;: Michael H. Warfield, <TT><HTMLURL
        URL="mailto:mhw@wittsend.atl.ga.us"
        NAME="mhw@wittsend.atl.ga.us"></TT><NEWLINE>
        état du gestionnaire de périphérique&nbsp;: pré-ALPHA

        <ITEM>Cyclades Cyclom-Y (UART Cirrus Logic CD1400 ; 8 - 32
        ports),<NEWLINE>
        Cyclom-Z (MIPS R3000 25MHz ; 8 - 128 ports)<NEWLINE>
        contact&nbsp;: <TT><HTMLURL URL="mailto:sales@cyclades.com"
        NAME="sales@cyclades.com"></TT> ou <TT><HTMLURL
        URL="http://www.cyclades.com"
        NAME="http://www.cyclades.com"></TT><NEWLINE>
        état du gestionnaire de périphérique&nbsp;: supporté par
        Cyclades<NEWLINE>
        emplacement&nbsp;: <TT><HTMLURL
        URL="ftp://ftp.cyclades.com/pub/cyclades"
        NAME="ftp://ftp.cyclades.com/pub/cyclades"></TT> et inclus dans
        le noyau Linux depuis la version 1.1.75

        <ITEM>Decision PCCOM8 (8 ports)<NEWLINE>
        contact&nbsp;: <TT><HTMLURL URL="mailto:pccom8@signum.se"
        NAME="pccom8@signum.se"></TT><NEWLINE>
        emplacement&nbsp;: <TT><HTMLURL
        URL="ftp://ftp.signum.se/pub/pccom8"
        NAME="ftp://ftp.signum.se/pub/pccom8"></TT>

        <ITEM>Digi PC/Xi (80186 12.5MHz ; 4, 8, ou 16 ports),<NEWLINE>
        PC/Xe (80186 12.5/16MHz ; 2, 4, ou 8 ports),<NEWLINE>
        PC/Xr (IDT3041 16MHz ; 4 ou 8 ports),<NEWLINE>
        PC/Xem (IDT3051 20MHz ; 8 - 64 ports)<NEWLINE>
        contact&nbsp;: <TT><HTMLURL URL="mailto:sales@dgii.com"
        NAME="sales@dgii.com"></TT> ou <TT><HTMLURL
        URL="http://www.dgii.com"
        NAME="http://www.dgii.com"></TT><NEWLINE>
        état du gestionnaire de périphérique&nbsp;: supporté par
        Digi<NEWLINE>
        emplacement&nbsp;: <TT><HTMLURL
        URL="ftp://ftp.dgii.com/drivers/linux"
        NAME="ftp://ftp.dgii.com/drivers/linux"></TT> et inclus dans le
        noyau Linux depuis la version 2.0

        <ITEM>Digi COM/Xi (80188 10MHz ; 4 ou 8 ports)<NEWLINE>
        contact&nbsp;: Simon Park, <TT><HTMLURL
        URL="mailto:si@wimpol.demon.co.uk"
        NAME="si@wimpol.demon.co.uk"></TT><NEWLINE>
        état du gestionnaire de périphérique&nbsp;: ALPHA<NEWLINE>
        Remarque&nbsp;: régulièrement, Simon ne peut pas lire son mail
        pendant plusieurs mois à cause de son travail. Mark Hatle,
        <TT><HTMLURL URL="mailto:fray@krypton.mankato.msus.edu"
        NAME="fray@krypton.mankato.msus.edu"></TT> s'est gracieusement
        porté volontaire pour rendre le gestionnaire de périphérique
        disponible si vous en avez besoin. Néanmoins, Mark ne s'occupe
        pas de la maintenance ni du support de ce gestionnaire.

        <ITEM>Equinox SuperSerial Technology (ASIC 30MHz ; 2 - 128
        ports)<NEWLINE>
        contact&nbsp;: <TT><HTMLURL URL="mailto:sales@equinox.com"
        NAME="sales@equinox.com"></TT> ou <TT><HTMLURL
        URL="http://www.equinox.com"
        NAME="http://www.equinox.com"></TT><NEWLINE>
        état du gestionnaire de périphérique&nbsp;: supporté par
        Equinox<NEWLINE>
        emplacement&nbsp;: <TT><HTMLURL
        URL="ftp://ftp.equinox.com/library/sst"
        NAME="ftp://ftp.equinox.com/library/sst"></TT>

        <ITEM>GTEK Cyclone (UART 16C654 ; 6, 16 et 32 ports),<NEWLINE>
        SmartCard (Dallas DS80C320 24MHz ; 8 ports),<NEWLINE>
        BlackBoard-8A (UART 16C654 ; 8 ports),<NEWLINE>
        PCSS (8032 15/24MHz ; 8 ports)<NEWLINE>
        contact&nbsp;: <TT><HTMLURL URL="mailto:spot@gtek.com"
        NAME="spot@gtek.com"></TT> ou <TT><HTMLURL
        URL="http://www.gtek.com"
        NAME="http://www.gtek.com"></TT><NEWLINE>
        état du gestionnaire de périphérique&nbsp;: supporté par
        GTEK<NEWLINE>
        emplacement&nbsp;: <TT><HTMLURL URL="ftp://ftp.gtek.com/pub"
        NAME="ftp://ftp.gtek.com/pub"></TT>

        <ITEM>Hayes ESP (COM-bic ; 1 - 8 ports)<NEWLINE> 
        contact&nbsp;: Andrew J. Robinson, <TT><HTMLURL
        URL="mailto:arobinso@nyx.net" NAME="arobinso@nyx.net"></TT> ou
        <TT><HTMLURL URL="http://www.nyx.net/&tilde;arobinso"
        NAME="http://www.nyx.net/&tilde;arobinso"></TT><NEWLINE>
        état du gestionnaire de périphérique&nbsp;: supporté par
        l'auteur<NEWLINE>
        emplacement&nbsp;: <TT><HTMLURL
        URL="http://www.nyx.net/&tilde;arobinso"
        NAME="http://www.nyx.net/&tilde;arobinso"></TT> et inclus dans
        le noyau Linux depuis la version 2.1.15

        <ITEM>Maxpeed SS (Toshiba ; 4, 8 et 16 ports)<NEWLINE>
        contact&nbsp;: <TT><HTMLURL URL="mailto:info@maxpeed.com"
        NAME="info@maxpeed.com"></TT> ou <TT><HTMLURL
        URL="http://www.maxpeed.com"
        NAME="http://www.maxpeed.com"></TT><NEWLINE>
        état du gestionnaire de périphérique&nbsp;: supporté par
        Maxpeed<NEWLINE>
        emplacement&nbsp;: <TT><HTMLURL URL="ftp://maxpeed.com/pub/ss"
        NAME="ftp://maxpeed.com/pub/ss"></TT>

        <ITEM>Moxa C218 (80286 12MHz ; 8 ports),<NEWLINE> 
        Moxa C320 (TMS320 40MHz ; 8 - 32 ports)<NEWLINE>
        contact&nbsp;: <TT><HTMLURL URL="mailto:info@moxa.com.tw"
        NAME="info@moxa.com.tw"></TT> ou <TT><HTMLURL
        URL="http://www.moxa.com.tw"
        NAME="http://www.moxa.com.tw"></TT><NEWLINE>
        état du gestionnaire de périphérique&nbsp;: supporté par
        Moxa<NEWLINE>
        emplacement&nbsp;: <TT><HTMLURL
        URL="ftp://ftp.moxa.com.tw/drivers/c218-320/linux"
        NAME="ftp://ftp.moxa.com.tw/drivers/c218-320/linux"></TT>

        <ITEM>SDL RISCom/8 (Cirrus Logic CD180 ; 8 ports)<NEWLINE>
        contact&nbsp;: <TT><HTMLURL URL="sales@sdlcomm.com"
        NAME="sales@sdlcomm.com"></TT> ou <TT><HTMLURL
        URL="http://www.sdlcomm.com"
        NAME="http://www.sdlcomm.com"></TT><NEWLINE>
        état du gestionnaire de périphérique&nbsp;: supporté par
        SDL<NEWLINE>
        emplacement&nbsp;: <TT><HTMLURL
        URL="ftp://ftp.sdlcomm.com/pub/drivers"
        NAME="ftp://ftp.sdlcomm.com/pub/drivers"</TT>

        <ITEM>Specialix SIO (Zilog Z280 20MHz ; 4 - 32 ports),<NEWLINE>
        XIO (25MHz Zilog Z280 ; 4 - 32 ports)<NEWLINE>
        contact : Simon Allen, <TT><HTMLURL
        URL="mailto:simonallen@cix.compulink.co.uk"
        NAME="simonallen@cix.compulink.co.uk"></TT><NEWLINE>
        état du gestionnaire de périphérique&nbsp;: BETA<NEWLINE>
        emplacement&nbsp;: <TT><HTMLURL
        URL="ftp://sunsite.unc.edu/pub/Linux/kernel/patches/serial"
        NAME="ftp://sunsite.unc.edu/pub/Linux/kernel/patches/serial"></TT>

        <ITEM>Stallion EasyIO-4 (4 ports), EasyIO-8 (8 ports),
        et<NEWLINE>
        EasyConnection (8 - 32 ports) - toutes avec des UART,<NEWLINE>
        Stallion (CPU 80186 8MHz ; 8 ou 16 ports),<NEWLINE>
        Brumby (CPU 80186 10/12 MHz ; 4, 8 ou 16 ports),<NEWLINE>
        ONboard (CPU 80186 16MHz ; 4, 8, 12, 16 ou 32 ports),<NEWLINE>
        EasyConnection 8/64 (CPU 80186 25MHz ; 8 - 64 ports)<NEWLINE>
        contact&nbsp;: <TT><HTMLURL URL="mailto:sales@stallion.com"
        NAME="sales@stallion.com"></TT> ou <TT><HTMLURL
        URL="http://www.stallion.com"
        NAME="http://www.stallion.com"></TT><NEWLINE>
        état du gestionnaire de périphérique&nbsp;: supporté par
        Stallion<NEWLINE>
        emplacement&nbsp;: <TT><HTMLURL
        URL="ftp://ftp.stallion.com/drivers/ata5/Linux"
        NAME="ftp://ftp.stallion.com/drivers/ata5/Linux"></TT> et inclus
        dans le noyau Linux depuis la version 1.3.27
</ITEMIZE>               
<P>
        Un descriptif des produits Comtrol, Cyclades, Digi, et Stallion
        est paru dans le numéro 14 de juin 1995 du <EM/Linux Journal/.
        Il est disponible à <TT><HTMLURL
        URL="http://www.ssc.com/lj/issue14"
        NAME="http://www.ssc.com/lj/issue14"></TT>. 

<SECT1>Matériel non supporté
<P>
        Les modems dits ``Winmodems'', par exemple l'USR Sportster
        Winmodem et l'IBM Aptiva MWAVE, ne sont <EM/pas/ supportés sous
        Linux.  Ils utilisent des technologies propriétaires nécessitant
        des gestionnaires de périphériques spéciaux pour Windows. Les
        modems nécessitant des gestionnaires Rockwell RPI sont à éviter
        pour la même raison.
<P>
        Les cartes série intelligentes nécessitant des gestionnaires non
        disponibles sous Linux, ne pourront pas fonctionner.

<SECT>Comment se nomment les ports série&nbsp;?
<P>
        Un port d'E/S permet de recevoir des données depuis, et d'en
        envoyer à partir d'un ordinateur. Il existe plusieurs types de
        ports d'E/S, comme les ports série, les ports parallèles, les
        contrôleurs de disques durs, les cartes Ethernet, etc. Les
        modems et les terminaux dont nous allons traiter n'utilisent que
        des ports série.   Chacun de ces ports possède une adresse
        d'E/S, et un vecteur d'interruption (IRQ). Les quatre ports
        série suivants correspondent à COM1 - COM4 :
<TSCREEN><VERB>
ttyS0 (COM1) adresse 0x3f8 IRQ 4
ttyS1 (COM2) adresse 0x2f8 IRQ 3
ttyS2 (COM3) adresse 0x3e8 IRQ 4
ttyS3 (COM4) adresse 0x2e8 IRQ 3
</VERB></TSCREEN>
        Si aucun port série n'est détecté lors de l'amorçage de Linux,
        assurez-vous que leur support a été sélectionné et compilé dans
        le noyau. Dans ce document, je me réfère à COM1 pour <TT/ttyS0/,
        COM2 pour <TT/ttyS1/, COM3 pour <TT/ttyS2/, et à COM4 pour
        <TT/ttyS3/.   Par défaut, ces ports ont des IRQ communes, et
        vous ne pouvez pas les utiliser simultanément dans cette
        configuration. Certaines de ces IRQ doivent être réassignées.
        Reportez-vous à la section <REF ID="irqaddr" NAME="Puis-je
        utiliser plus de deux ports série&nbsp;?">.
<P>
        Sur certaines installations, deux périphériques supplémentaires
        vont être créés&nbsp;: <TT>/dev/modem</TT> pour le modem et
        <TT>/dev/mouse</TT> pour la souris.  Ce sont des liens
        symboliques sur le périphérique approprié (dans le répertoire
        <TT>/dev</TT>) que vous avez spécifié lors de l'installation.
        Si vous possédez une souris de type bus PS/2,
        <TT>/dev/mouse</TT> pointera correctement sur le périphérique de
        la souris bus.
<P>
        Plusieurs discussions ont porté sur les avantages et
        inconvénients de ces pseudo-périphériques <TT>/dev/mouse</TT> et
        <TT>/dev/modem</TT>.  Personnellement, je décourage
        <EM/fortement/ l'utilisation de ces liens.  En particulier, si
        vous prévoyez d'employer plusieurs modems pour les connexions
        entrantes sur <TT>/dev/modem</TT>, des problèmes peuvent
        apparaître à cause des fichiers de verrouillage (<EM/lock
        files/).  Vous pouvez néanmoins les utiliser si vous le désirez,
        mais <EM/assurez-vous qu'ils pointent bien sur les bons
        périphériques/.  Cependant, si vous supprimez ces liens,
        certaines applications (comme <TT/minicom/) peuvent ne plus
        fonctionner sans reconfiguration.

<SECT1>Périphériques série et numéros dans <TT>/dev</TT>
<P>
<TSCREEN><VERB>
/dev/ttyS0 majeur 4, mineur 64         /dev/cua0 majeur 5, mineur 64
/dev/ttyS1 majeur 4, mineur 65         /dev/cua1 majeur 5, mineur 65
/dev/ttyS2 majeur 4, mineur 66         /dev/cua2 majeur 5, mineur 66
/dev/ttyS3 majeur 4, mineur 67         /dev/cua3 majeur 5, mineur 67
</VERB></TSCREEN>
        Remarque&nbsp;: toutes les distributions doivent être livrées
        avec ces périphériques déjà correctement configurés, ce que vous
        pouvez vérifier en tapant les commandes&nbsp;:
<TSCREEN><VERB>
linux% ls -l /dev/cua*
linux% ls -l /dev/ttyS*
</VERB></TSCREEN>

<SECT2>Créer les périphériques dans <TT>/dev</TT><LABEL ID="dev">
<P>
        Si un périphérique est absent, vous devez le créer avec la
        commande <TT/mknod/.  Par exemple, pour <TT/ttyS0/&nbsp;:
<TSCREEN><VERB>
linux# mknod -m 666 /dev/cua0 c 5 64
linux# mknod -m 666 /dev/ttyS0 c 4 64
</VERB></TSCREEN>
        Le script <TT/MAKEDEV/, situé dans le répertoire <TT>/dev</TT>,
        peut être utilisé pour simplifier leur création. Par exemple,
        pour <TT>ttyS0</TT>&nbsp;:
<TSCREEN><VERB>
linux# cd /dev
linux# ./MAKEDEV ttyS0
</VERB></TSCREEN>
        Cette commande crée les périphériques d'entrée et de sortie
        correspondants, et positionne également les bonnes permissions.

<SECT1>Remarques pour les cartes multiports simples
<P>
        Les périphériques utilisés par les cartes multiports sont
        dépendants du type de carte que vous possédez. Ils sont listés
        en détail dans le fichier <TT>rc.serial</TT> fourni avec le
        programme <TT>setserial</TT>.  Je recommande vivement de
        récupérer la version la plus récente de <TT/setserial/ si vous
        devez utiliser une telle carte. Vous devrez alors sûrement créer
        ces périphériques, soit avec la commande <TT/mknod/, soit avec
        le script <TT/MAKEDEV/.  Ils doivent être déclarés en ajoutant
        64 au numéro du port.  Par exemple, pour <TT>ttyS17</TT>&nbsp;:
<TSCREEN><VERB>
linux# mknod -m 666 /dev/cua17 c 5 81
linux# mknod -m 666 /dev/ttyS17 c 4 81
</VERB></TSCREEN>
        Car ``64 + 17 = 81''.  En utilisant le script <TT/MAKEDEV/, il
        suffit d'entrer&nbsp;:
<TSCREEN><VERB>
linux# cd /dev
linux# ./MAKEDEV ttyS17
</VERB></TSCREEN>
<P>
        Remarque&nbsp;: le listing des ports COM5-COM8 pour les IO1812
        est erroné dans le manuel SIIG. Les valeurs doivent être
        remplacées par COM5=0x250, COM6=0x258, COM7=0x260, et
        COM8=0x268.
<P>
        Remarque&nbsp;: le registre d'état d'interruption (<EM/Interrupt
        Status Register/) de la carte Digi PC/8 se trouve en 0x140.
          
<P>
        Remarque&nbsp;: pour la carte AST Fourport, le fichier
        <TT/rc.serial/ doit spécifier le paramètre <TT/skip_test/.

<SECT1>Remarques pour les cartes multiports intelligentes
<P>
        Lisez les informations fournies avec le gestionnaire.  Ces
        cartes utilisent des périphériques non-standards. Ces
        informations varient suivant le matériel.

<SECT>Quelques programmes intéressants à connaître

<SECT1>Qu'est-ce que <TT/getty/ ?
<P>
        <TT/getty/ est un programme qui gère la phase d'entrée en
        session (<EM/login/) sur un système Unix. Il est indispensable
        si vous souhaitez vous loguer sur votre machine Linux avec un
        modem. Il n'est par contre pas utile pour des communications
        sortantes. Il existe trois versions couramment utilisées avec
        Linux&nbsp;: <TT/getty_ps/, <TT/mgetty/ et <TT/agetty/. Chacune
        possède sa propre syntaxe. Aussi, assurez-vous d'utiliser celle
        correspondant à votre version de <TT/getty/.

<SECT2>À propos de <TT>getty_ps</TT>
<P>     
        La plupart des distributions installent directement le paquetage
        <TT/getty_ps/.  Il contient deux programmes&nbsp;: <TT/getty/
        pour la console et les terminaux, et <TT/uugetty/ pour les
        modems.  Je parlerai essentiellement de cette version, car c'est
        celle que j'utilise.

<SECT2>À propos de <TT>mgetty</TT>
<P>
        <TT/mgetty/ est un <TT/getty/ spécialisé pour l'utilisation avec
        des modems. Par rapport aux autres versions, <TT/mgetty/ gère
        les fax, et détecte automatiquement les connexions PPP. La
        documentation est excellente et suffisante. Veuillez vous y
        reporter pour l'installation. Les informations les plus récentes
        sur <TT/mgetty/ peuvent être trouvées à <TT><HTMLURL
        URL="http://www.leo.org/&tilde;doering/mgetty/"
        NAME="http://www.leo.org/&tilde;doering/mgetty/"></TT>.

<SECT2>À propos de <TT>agetty</TT>
<P>
        <TT/agetty/ est la troisième variante de <TT/getty/. C'est une
        version simple complètement fonctionnelle, et plus
        particulièrement destinée à l'utilisation des consoles
        virtuelles et des terminaux plutôt que des modems.

<SECT1>Qu'est-ce que <TT>setserial</TT>&nbsp;?
<P>
        <TT/setserial/ est un programme autorisant la consultation et la
        modification des différents attributs (adresse de port,
        interruption, etc.) d'un périphérique série.  Vous pouvez
        déterminer le numéro de version installée en lançant
        <TT/setserial/ sans argument.
<P>
        Lorsque votre système Linux démarre, seuls <TT/ttyS{0-3}/ sont
        configurés avec les IRQ positionnées par défault à 4 et 3. Si
        vous possédez d'autres ports série sur d'autres cartes, ou si
        <TT/ttyS{0-3}/ utilisent des IRQ non standards, vous <EM/devez/
        lancer ce programme pour configurer ces ports. Consultez le
        manuel pour une description complète des options.

<SECT>Comment puis-je appeler avec mon modem&nbsp;?<LABEL ID="dialout">

<SECT1>Matériel nécessaire
<P>
        Tout d'abord, assurez-vous d'avoir le bon câble. Votre modem
        requiert un câble droit, sans inversion de fils. Vous devriez
        pouvoir vous en procurer dans n'importe quel magasin
        d'informatique. Vérifiez également le genre des connecteurs.
        Pour un port à 25 broches, ce sera toujours un modèle mâle DB25,
        à ne pas confondre avec les ports parallèles à embase femelle
        DB25. Connectez votre modem sur un de vos ports série.
        Consultez si nécessaire le manuel de votre modem.

<SECT2>Remarques pour les modems internes
<P>
        Pour un modem interne, aucun câble n'est nécessaire. De même,
        aucun port série n'est requis, car la carte modem en possède un
        interne.  Vous devez seulement configurer votre modem pour qu'il
        utilise une interruption (IRQ) et une adresse d'E/S libres.
        Reportez-vous au manuel de votre modem, ainsi qu'à la section
        <REF ID="irqaddr" NAME="Puis-je utiliser plus de deux
        périphériques série&nbsp;?"> si vous avez besoin d'aide pour
        choisir les interruptions et les adresses.
<P>
        Sur certaines cartes mères, il peut être nécessaire de
        désactiver les ports série afin d'éviter les conflits avec le
        modem. Cette manipulation peut être effectuée avec des cavaliers
        ou les paramètres du BIOS. Consultez le manuel de votre carte
        mère.
<P>
        Suite à un bogue des cartes vidéo IBM8514, les modems internes
        ne peuvent pas fonctionner sur <TT/ttyS3/.  Si Linux ne détecte
        pas le modem sur <TT/ttyS3/, il suffit alors d'utiliser
        <TT>setserial</TT> pour que le modem fonctionne correctement. Un
        modem interne <TT/ttyS{0-2}/ ne devrait pas poser de problème de
        détection.  Linux n'effectue pas d'autoconfiguration du
        <TT/ttyS3/ à cause de ce bogue lié à la carte vidéo.

<SECT1>``Parlez'' à votre modem 
<P>
        Avant de vous lancez dans le paramétrage assez complexe de SLIP
        ou PPP, utilisez <TT/kermit/ ou n'importe quel autre programme
        de communication pour tester votre configuration.  La version la
        plus récente de <TT/kermit/ peut être téléchargée depuis
        <TT><HTMLURL URL="http://www.columbia.edu/kermit/"
        NAME="http://www.columbia.edu/kermit/"></TT>.  L'exemple suivant
        suppose que votre modem est sur <TT>ttyS3</TT>, et que sa
        vitesse est fixée à 115200 bps&nbsp;:
<TSCREEN><VERB>
linux# kermit
C-Kermit 6.0.192, 6 Sep 96, for Linux
 Copyright (C) 1985, 1996,
  Trustees of Columbia University in the City of New York.
Default file-transfer mode is BINARY
Type&nbsp;? or HELP for help.
C-Kermit>set line /dev/ttyS3
C-Kermit>set carrier-watch off
C-Kermit>set speed 115200
/dev/ttyS3, 115200 bps
C-Kermit>c
Connecting to /dev/ttyS3, speed 115200.
The escape character is Ctrl-\ (ASCII 28, FS)
Type the escape character followed by C to get back,
or followed by&nbsp;? to see other options.
ATE1Q0V1                   ; vous tapez cette chaine puis la touche Entree
OK                         ; le modem doit repondre comme ca
</VERB></TSCREEN>

        Si votre modem répond aux commandes <TT/AT/, vous pouvez
        supposer qu'il fonctionne correctement du côté Linux. Il ne
        reste plus qu'à essayer d'appeler un autre modem&nbsp;:
<TSCREEN><VERB>
ATDT7654321
</VERB></TSCREEN>
        où 7654321 est un numéro de téléphone.  Utilisez ATDP à la place
        de ATDT si vous n'êtes pas connecté à un central numérique.
        Votre modem fonctionne si l'appel aboutit.
<P>
        Pour revenir à l'invite <TT/kermit/, appuyez simultanément sur
        les touches Ctrl et backslash, puis sur C&nbsp;:
<TSCREEN><VERB>
Ctrl-\-C
(Retour a linux)
C-Kermit>quit
linux#
</VERB></TSCREEN>

        Il s'agissait juste d'un test de numérotation ``à la main''. La
        méthode normale est de laisser <TT/kermit/ numéroter à votre
        place à l'aide de sa base de données interne de modems. Par
        exemple, pour un modem US Robotics (USR)&nbsp;:
<TSCREEN><VERB>
linux# kermit
C-Kermit 6.0.192, 6 Sep 1997, for Linux
 Copyright (C) 1985, 1996,
  Trustees of Columbia University in the City of New York.
Default file-transfer mode is BINARY
Type&nbsp;? or HELP for help
C-Kermit>set modem type usr        ; Selection du type de modem
C-Kermit>set line /dev/ttyS3       ; Choix du peripherique
C-Kermit>set speed 115200          ; Vitesse de communication
C-Kermit>dial 7654321              ; Numerotation
 Number: 7654321
 Device=/dev/ttyS3, modem=usr, speed=115200
 Call completed.<BEEP>
Connecting to /dev/ttyS3, speed 115200
The escape character is Ctrl-\ (ASCII 28, FS).
Type the escape character followed by C to get back,
or followed by&nbsp;? to see other options.

Welcome to ...

login:
</VERB></TSCREEN>

        Reportez-vous à la section <REF ID="comms" NAME="Programmes de
        communication"> pour plus de liens.
<P>
        Lorsque vous appelez avec votre modem, paramétrez la vitesse au
        débit maximal supporté par votre modem. Les systèmes Linux avec
        une version de la <TT/libc/ supérieure à 5.x supportent des
        vitesses jusqu'à 115200 bps. <TT/libc/ est habituellement située
        dans <TT>/lib</TT>.   Vérifiez dans ce répertoire la version que
        vous avez. Si Linux ne reconnaît pas des vitesses de 57600 ou
        115200 bps, vous devez alors utiliser le program <TT/setserial/
        pour passer votre port série à une vitesse supérieure.
        Reportez-vous à la section <REF ID="spdhi" NAME="Comment
        configurer mes ports série à des vitesses supérieures&nbsp;?">.
        Sélectionnez ensuite une vitesse de 38400 bps dans votre
        programme de communications.

<SECT1>Configuration du modem en mode appelant
<P>
        Pour appeler, vous pouvez configurer votre modem comme vous le
        voulez.  Si vous souhaitez l'utiliser pour des communications
        entrantes, vous <EM/devez/ paramétrer votre modem à la même
        vitesse que pour <TT/getty/.  Ainsi, si vous voulez exécuter
        <TT/getty/ à 38400 bps, fixez également la vitesse à 38400 bps
        lors du paramétrage du modem, pour éviter une incompatibilité de
        vitesses avec l'ordinateur. En général, les réglages d'usine
        avec correction d'erreurs et contrôle de flux matériel
        correspondent au réglage optimal en mode appelant. Consultez le
        manuel du modem pour obtenir ces réglages.

<SECT1>Contrôle de flux matériel
<P>
        Je vous recommande vivement d'utiliser le contrôle de flux
        matériel (RTS/CTS) si votre modem le supporte. Cette
        fonctionalité est particulièrement importante lorsque la
        compression de données est active.  Premièrement, vous devez
        autoriser le contrôle de flux RTS/CTS sur le port série. Le
        mieux est de le faire au démarrage, par exemple dans
        <TT>/etc/rc.d/rc.local</TT> ou <TT>/etc/rc.d/rc.serial</TT>.
        Assurez-vous que ces fichiers sont bien exécutés par le fichier
        principal <TT/rc.sysinit/. Ensuite, pour chacun des ports série
        pour lesquels vous désirez activer le contrôle de flux matériel,
        vous devez entrer la commande suivante&nbsp;:
<TSCREEN><VERB>
stty crtscts < /dev/ttyS3
</VERB></TSCREEN> 
        Vous devez également activer le contrôle de flux RTS/CTS sur le
        modem.   Consultez le manuel du modem, car le paramétrage varie
        suivant les fabricants. N'oubliez pas de sauvegarder cette
        configuration, si votre modem le permet.

<SECT>Comment puis-je appeler et être appelé avec mon modem et <TT/getty_ps/&nbsp;?
<P>
        Faites déjà fonctionner correctement votre modem en mode
        appelant. Si vous n'avez pas encore lu la section <REF
        ID="dialout" NAME="Comment puis-je appeler avec mon
        modem&nbsp;?">, <EM/lisez-la maintenant/&nbsp;! Elle contient
        des informations importantes sur la configuration. Il <EM/n'est
        pas nécessaire/ de lire cette section si vous souhaitez juste
        <EM/appeler/ avec votre modem.
        
<SECT1>Configuration en modes appelant et appelé
<P>
        Encore une fois, le modem <EM/doit/ être spécialement configuré
        (avec les commandes <TT/AT/) afin de pouvoir être utilisé aussi
        bien en appelant qu'en appelé&nbsp;:
<TSCREEN><VERB>
E1       echo local active en mode commande
Q0       envoie les codes de retour
V1       envoie les reponses sous la forme de donnees textuelles
S0=0     decrochage automatique desactive (uugetty s'en occupe avec l'option WAITFOR) 
</VERB></TSCREEN>
        Si ces options ne sont pas sélectionnées, il se peut que la
        chaîne d'initialisation définie dans le fichier de
        configuration, ne fonctionne pas.
<TSCREEN><VERB>
&ero;C1 le signal DCD est haut seulement apres la connexion
&ero;S0 DSR est toujours haut
        un changement d'etat du DTR reinitialise le modem (dependant du fabricant - RTFM)
</VERB></TSCREEN>
        Ces réglages déterminent le comportement du modem au début et à
        la fin d'un appel.
<P>
        Si votre modem ne permet pas la sauvegarde d'un profil, ces
        paramètres peuvent être indiqués dans la chaîne d'initialisation
        du fichier de configuration. Certains modems sont pourvus de
        commutateurs DIP qui affectent les valeurs des registres.
        Assurez-vous également qu'ils sont correctement configurés.
<P>     
        J'ai débuté une compilation de configurations pour différents
        modèles de modems. Pour l'instant, j'en ai seulement quelques
        uns.   Ne vous privez donc pas de m'envoyer vos paramétrages
        opérationnels. Cette collection est récupérable à <TT><HTMLURL
        URL="ftp://ftp.cc.gatech.edu/pub/people/gregh/modem-configs"
        NAME="ftp://ftp.cc.gatech.edu/pub/people/gregh/modem-configs"></TT>.

<P>
        Remarque&nbsp;: pour que mon modem USR Courier V.34 se
        réinitialise correctement à l'ouverture du signal DTR, je suis
        obligé de forcer <TT/&amp;D2/ et <TT/S13=1/ (le bit 0 du
        registre S13 est mis à 1).  On m'a confirmé que ça fonctionnait
        aussi sur les modems USR Sportster V.34.
        
<P>
        Remarque&nbsp;: certains modems Supra traitent le signal DCD
        différement.  Dans ce cas, essayez avec <TT/&amp;C0/ et <EM/non/
        <TT/&amp;C1/. <TT/&amp;D2/ doit également être positionné afin
        de gérer correctement le DTR.

<SECT1>Installer <TT>getty_ps</TT>
<P>
        Récupérez la dernière version à partir de <TT><HTMLURL
        URL="ftp://sunsite.unc.edu:/pub/Linux/system/serial"
        NAME="sunsite.unc.edu:/pub/Linux/system/serial"></TT>.  Les
        versions 2.0.7j et ultérieures sont indispensables pour les
        hauts débits (57600 and 115200 bps).  Vous devez aussi avoir la
        libc 5.x ou supérieure.
<P>
        Par défaut, <TT/getty_ps/ est conforme au FSSTND Linux (<EM/File
        System Standard/ - norme de système de fichiers), ce qui
        implique que les binaires résident dans <TT>/sbin</TT>, et les
        fichiers verrous (<EM/lock files/) dans <TT>/var/lock</TT>.
        Assurez-vous donc que le répertoire <TT>/var/lock</TT> existe
        bien.
<P>
        Si vous ne souhaitez pas la conformité FSSTND, les binaires
        seront  stockés dans <TT>/etc</TT>, les fichiers de
        configuration dans <TT>/etc/default/{uu}getty.ttyS</TT><EM/N/,
        et les fichiers verrous dans <TT>/usr/spool/uucp</TT>.  Je
        recommande cette méthode en cas d'utilisation conjointe avec
        UUCP afin que les fichiers verrous soient bien partagés entre
        <TT/getty_ps/ et UUCP.
<P>     
        <TT/getty_ps/ peut aussi utiliser <TT/syslogd/ pour enregistrer
        les messages. Reportez-vous aux pages de manuel <TT/syslogd(1)/
        et <TT/syslog.conf(5)/ pour configurer <TT/syslogd/, s'il ne
        tourne pas déjà.  Les messages sont enregistrés avec la priorité
        LOG_AUTH, les erreurs avec LOG_ERR, et les informations de
        débogage avec LOG_DEBUG. Si vous ne souhaitez pas utiliser
        <TT/syslogd/, éditez <TT/tune.h/ dans le répertoire des fichiers
        source de <TT/getty_ps/ pour enregistrer les messages dans un
        fichier, <TT>/var/adm/getty.log</TT> par défaut.
<P>     
        Vous devez donc décider si vous voulez la conformité FSSTND, les
        possibilités offertes par syslog, ou une combinaison des deux.
        Modifiez en conséquence les fichiers <TT/Makefile/, <TT/tune.h/
        et <TT/config.h/. Il ne reste plus qu'à compiler et installer le
        paquetage, en suivant les instructions fournies.
<P>
        À partir de maintenant, toutes les références à <TT/getty/
        concerneront <TT/getty_ps/, et celles à <TT/uugetty/ le
        programme <TT/uugetty/ fourni avec le paquetage <TT/getty_ps/.
        Ces instructions ne sont pas applicables à <TT/mgetty/ ou
        <TT/agetty/.

<SECT1>Configurer <TT/uugetty/
<P>
        <TT/uugetty/, qui assure d'importantes vérifications sur les
        fichiers verrous, sera utilisé pour se connecter sur votre
        modem.  Mettez à jour <TT>/etc/gettydefs</TT> pour inclure les
        différentes entrées pour les modems, si elles ne sont pas déjà
        présentes (remarquez que ces entrées sont rebouclées sur
        elles-mêmes et autorisent donc différentes vitesses - une ligne
        vide est nécessaire entre deux entrées)&nbsp;:
<TSCREEN><VERB>
# Entrees modem
115200# B115200 CS8 # B115200 SANE -ISTRIP HUPCL #@S @L @B login: #57600

57600# B57600 CS8 # B57600 SANE -ISTRIP HUPCL #@S @L @B login: #38400

38400# B38400 CS8 # B38400 SANE -ISTRIP HUPCL #@S @L @B login: #19200

19200# B19200 CS8 # B19200 SANE -ISTRIP HUPCL #@S @L @B login: #9600

9600# B9600 CS8 # B9600 SANE -ISTRIP HUPCL #@S @L @B login: #2400

2400# B2400 CS8 # B2400 SANE -ISTRIP HUPCL #@S @L @B login: #115200
</VERB></TSCREEN>
<P>
        Si votre modem permet des vitesses de 9600 bps ou plus avec
        compression de données, vous pouvez fixer une vitesse constante
        pour le port série et laisser le modem choisir la vitesse de
        connexion. Le fichier <TT>/etc/gettydefs</TT> se simplifie et ne
        nécessite plus qu'une seule ligne pour le modem, par
        exemple&nbsp;:
<TSCREEN><VERB>
# vitesse fixe 115200
F115200# B115200 CS8 # B115200 SANE -ISTRIP HUPCL #@S @L @B login: #F115200
</VERB></TSCREEN>
<P>     
        Si le contrôle de flux RTS/CTS est activé sur votre modem, le
        drapeau <TT/CRTSCTS/ peut être ajouté dans les entrées&nbsp;:
<TSCREEN><VERB>
# vitesse fixe 115200 avec controle de flux materiel
F115200# B115200 CS8 CRTSCTS # B115200 SANE -ISTRIP HUPCL CRTSCTS #@S @L @B login: #F115200
</VERB></TSCREEN>
<P>
        Si vous le désirez, <TT/uugetty/ peut imprimer quelques
        informations sur le système dans la bannière de login. Dans mes
        exemples, j'ai fait figurer le nom du système, le port série,
        ainsi que la vitesse courante en bps.  D'autres champs sont
        disponibles&nbsp;:
<TSCREEN><VERB>
       @B    La vitesse courante en bps (evaluee lorsque le @B est affiche).
       @D    La date courante (MM/DD/YY).
       @L    Le port serie auquel getty est attache.
       @S    Le nom du systeme.
       @T    L'heure courante (HH:MM:SS / 24-heures).
       @U    Le nombre d'utilisateurs actuellement connectes.  Il s'agit du
             nombre d'entrees dans le fichier /etc/utmp qui possedent un
             champ ut_name non nul.
       @V    La valeur de VERSION, telle qu'elle est definie dans le fichier
             des valeurs par defaut.
       Pour afficher un simple '@', utilisez soit '\@', soit '@@'.
</VERB></TSCREEN>
<P>
        Ensuite, assurez-vous de connaître un périphérique d'entrée et
        de sortie pour le port série dédié au modem. Si votre modem est
        attaché à <TT/ttyS3/, aucun périphérique correct n'existe et
        vous devez donc le créer (voir la section  <Ref ID="dev"
        NAME="Créer les périphériques dans <TT>/dev</TT>">). Si vous
        souhaitez pouvoir appeler avec votre modem alors que
        <TT/uugetty/ est en attente de connexion sur le même port,
        utilisez le périphérique <TT>/dev/cua</TT><EM/N/ à la place de
        <TT>/dev/ttyS</TT><EM/N/.
<P>
        Une fois que vous avez terminé l'édition de
        <TT>/etc/gettydefs</TT>, vous pouvez en vérifier la syntaxe
        par&nbsp;:
<TSCREEN><VERB>
linux# getty -c /etc/gettydefs
</VERB></TSCREEN>

<SECT1>Personnaliser <TT/uugetty/
<P>
        De nombreuses options peuvent être configurées dans des fichiers
        séparés pour chacun des ports présents. Le fichier
        <TT>/etc/conf.uugetty</TT> sert à <EM/toutes/ les instances de
        <TT/uugetty/, alors que <TT>/etc/conf.uugetty.ttyS</TT><EM/N/
        est spécifique à un seul port. Des exemples de fichiers de
        configuration sont disponibles parmi les fichiers sources de
        <TT/getty_ps/ livrés avec la plupart des distributions Linux.
        Ces exemples ne sont pas repris dans ce document pour des
        problèmes d'espace. Notez que pour les versions anciennes de
        <TT/getty/ (avant la 2.0.7e), ou si vous n'utilisez pas la
        conformité FSSTND, le fichier par défaut réside dans
        <TT>/etc/default/uugetty.ttyS</TT><EM/N/. Mon fichier
        <TT>/etc/conf.uugetty.ttyS3</TT> ressemble à&nbsp;:
<TSCREEN><VERB>
# exemple de fichier de configuration uugetty pour un modem compatible
# Hayes en mode appele
#
# fichier verrou alternatif... s'il existe, uugetty est relance afin de
# reinitialiser le modem
ALTLOCK=cua3
ALTLINE=cua3
# port serie a initialiser
INITLINE=cua3
# delai de liberation de la ligne en cas d'inactivite...
TIMEOUT=60
# chaine d'initialisation du modem... 
# format : <expect> <send> ... (protocole de connexion)
INIT="" AT\r OK\r\n
WAITFOR=RING
CONNECT="" ATA\r CONNECT\s\A
# delai d'attente avant l'envoi de la banniere
DELAY=1
#DEBUG=010
</VERB></TSCREEN>
<P>
        Ajoutez la ligne suivante dans <TT>/etc/inittab</TT>, afin que
        <TT/uugetty/ soit automatiquement lancé sur le port série (en
        adaptant pour votre configuration la localisation du fichier de
        configuration, le port, la vitesse, et le type de terminal par
        défaut)&nbsp;:
<TSCREEN><VERB>
S3:456:respawn:/sbin/uugetty -d /etc/default/uugetty.ttyS3 ttyS3 F115200 vt100
</VERB></TSCREEN>
        Redémarrez <TT/init/&nbsp;:
<TSCREEN><VERB>
linux# init q 
</VERB></TSCREEN>
        La vitesse maximale supportée par le modem a été sélectionnée
        dans <TT>/etc/inittab</TT>.
<P>
        À partir de maintenant, Linux est en attente de connexions sur
        le port série. Appelez depuis une autre machine et loguez-vous
        sur votre système Linux.
<P>
        <TT/uugetty/ possède de nombreuses autres options, décrites en
        détail dans la page de manuel <TT/getty(1m)/. Entre autres
        choses, on peut y trouver des fonctionnalités de programmation
        horaire (<EM/scheduling/), et de rappel (<EM/ringback/).
 
<SECT>Comment configurer un terminal raccordé à mon PC&nbsp;?
<P>
        Ces instructions permettent aussi bien de connecter des
        terminaux que d'autres ordinateurs sur le port série de votre
        machine Linux.

<SECT1>Besoins matériels
<P>
        Assurez-vous de posséder le bon type de câble. Un câble <EM/null
        modem/ acheté dans n'importe quel magasin informatique fera
        l'affaire, mais il doit s'agir effectivement d'un câble <EM/null
        modem/&nbsp;! De nombreux magasins d'informatique  les vendent
        comme des câbles pour imprimante série. Vérifiez que vous
        utilisez bien le port série (embase mâle DB25 ou DB9), et non le
        port parallèle (embase femelle DB25 ou Centronics).
<P>     
        Pour un connecteur DB25, il faut au minimum&nbsp;:
<VERB> 
        DB25 male du PC                         DB25 du terminal
        TxD   Donnees emises        2 --> 3     RxD   Donnees recues
        RxD   Donnees recues        3 <-- 2     TxD   Donnees emises
        SG    Masse du signal       7 --- 7     SG    Masse du signal
</VERB>
<P>
        Si vous voulez profiter du contrôle de flux matériel, la
        connexion null modem doit être intégralement câblée&nbsp;:
<VERB>
        DB25 male du PC                         DB25 du terminal
        TxD   Donnees emises        2 --> 3     RxD   Donnees recues
        RxD   Donnees recues        3 <-- 2     TxD   Donnees emises
        RTS   Demande pour emettre  4 --> 5     CTS   Pret a emettre
        CTS   Pret a emettre        5 <-- 4     RTS   Demande pour emettre
        DSR   Poste de donnees pret 6
                                    |
        DCD   Detection de porteuse 8 <-- 20    DTR   Terminal de donnees pret
        SG    Masse du signal       7 --- 7     SG    Masse du signal
                                          6     DSR   Poste de donnees pret
                                          |
        DTR   Terminal pret        20 --> 8     DCD   Detection de porteuse
</VERB>
<P>
        Si vous avez un connecteur DB9, vous pouvez essayer&nbsp;:
<VERB>
        DB9 du PC                               DB25 du terminal 
        RxD   Donnees recues        2 <-- 2     TxD   Donnees emises
        TxD   Donnees emises        3 --> 3     RxD   Donnees recues
        SG    Masse du signal       5 --- 7     SG    Masse du signal
</VERB>
<P>
        Pour un câble complet DB9-DB25, on obtient&nbsp;:
<VERB>
        DB9 du PC                               DB25 du terminal 
        RxD   Donnees recues        2 <-- 2     TxD   Donnees emises
        TxD   Donnees emises        3 --> 3     RxD   Donnees recues
                                          6     DSR   Poste de donnees pret
                                          |
        DTR   Terminal pret         4 --> 8     DCD   Detection de porteuse
        SG    Masse du signal       5 --- 7     SG    Masse du signal
        DCD   Detection de porteuse 1
                                    |
        DSR   Poste de donnees pret 6 <-- 20    DTR   Terminal de donnees pret
        RTS   Demande pour emettre  7 --> 5     CTS   Pret a emettre
        CTS   Pret a emettre        8 <-- 4     RTS   Demande pour emettre
        (RI   Indicateur sonnerie   9 pas necessaire)
</VERB>
        (Eh oui, les broches 2 et 3 ont <EM/effectivement/ la
        signification opposée entre les connecteurs DB9 et DB25&nbsp;!)
<P>
        Ceux qui ne possèdent pas de câble null modem complet devront
        user d'une astuce afin que le PC reçoive (de lui-même) les
        acquittements qu'il demande avec le contrôle de flux
        matériel&nbsp;: sur le connecteur côté PC, rebouclez ensemble
        RTS et CTS, ainsi que DSR, DCD et DTR.
<P>
        Maintenant que avez le bon type de câble, il vous reste à
        connecter votre terminal sur votre ordinateur. Si possible,
        demandez au terminal d'ignorer les signaux de contrôle pour
        modems, et essayez de le paramétrer avec une vitesse de  9600
        bps, 8 bits de données, 1 bit de stop, et pas de parité.

<SECT1>Configurer <TT/getty/
<P>
        Si elles ne sont pas déjà présentes, ajoutez dans
        <TT>/etc/gettydefs</TT> les entrées destinées à <TT/getty/ pour
        votre terminal,
<TSCREEN><VERB>
# Entree de terminal simple a 38400 bps
DT38400# B38400 CS8 CLOCAL # B38400 SANE -ISTRIP CLOCAL #@S @L login: #DT38400

# Entree de terminal simple a 19200 bps
DT19200# B19200 CS8 CLOCAL # B19200 SANE -ISTRIP CLOCAL #@S @L login: #DT19200

# Entree de terminal simple a 9600 bps
DT9600# B9600 CS8 CLOCAL # B9600 SANE -ISTRIP CLOCAL #@S @L login: #DT9600
</VERB></TSCREEN>
<P>
        Si vous le désirez, <TT/getty/ peut imprimer quelques
        informations sur le système dans la bannière de login. Dans mes
        exemples, j'ai fait figurer le nom du système ainsi que le port
        série.  D'autres variables sont disponibles&nbsp;:
<TSCREEN><VERB>
@B    La vitesse courante en bps (evaluee lorsque le @B est affiche).
@D    La date courante (MM/DD/YY).
@L    Le port serie auquel getty est attache.
@S    Le nom du systeme.
@T    L'heure courante (HH:MM:SS / 24-heures).
@U    Le nombre d'utilisateurs actuellement connectes.  Il s'agit du
      nombre d'entrees dans le fichier /etc/utmp qui possedent un
      champ ut_name non nul.
@V    La valeur de VERSION, telle qu'elle est definie dans le fichier
      des valeurs par defaut.
Pour afficher un simple '@', utilisez soit '\@', soit '@@'.
</VERB></TSCREEN>
<P>
        Une fois l'édition de <TT>/etc/gettydefs</TT> terminée, vous
        pouvez en vérifier la syntaxe par&nbsp;:
<TSCREEN><VERB>
linux# getty -c /etc/gettydefs
</VERB></TSCREEN>

<P>     
        Assurez-vous qu'il n'existe pas déjà de fichier de configuration
        <TT/getty/ ou <TT/uugetty/ pour le port série auquel vous avez
        attaché votre terminal
        (<TT>/etc/default/{uu}getty.ttyS</TT><EM/N/ ou
        <TT>/etc/conf.{uu}getty.ttyS</TT><EM/N/), car il risque
        probablement d'interférer avec l'instance de <TT/getty/ du
        terminal. Supprimez le fichier s'il existe.
<P>
        Éditez la ligne suivante dans <TT>/etc/inittab</TT>, afin que
        <TT/getty/ soit  lancé sur le port série (en adaptant pour votre
        configuration le port, la vitesse, et le type de terminal par
        défaut)&nbsp;:
<TSCREEN><VERB>
S1:456:respawn:/sbin/getty ttyS1 DT9600 vt100
</VERB></TSCREEN>
        Redémarrez <TT/init/&nbsp;:
<TSCREEN><VERB>
linux# init q 
</VERB></TSCREEN>
<P>
        Vous devez maintenant voir apparaître une invite de session sur
        le terminal. Il peut néanmoins être nécessaire de taper sur la
        touche <TT/Entrée/ pour avertir le terminal.

<SECT1>Remarques sur la configuration d'un PC en tant que terminal
<P>     
        Nombreux sont ceux qui se servent d'autres PC comme des
        terminaux rattachés à des systèmes Linux. Par exemple, des vieux
        PC 8088 ou 80286 sont parfaits pour cet usage. Vous avez juste
        besoin d'une disquette de démarrage DOS et d'un programme de
        communications pour faire tourner votre terminal-PC. <TT/kermit/
        fonctionne très bien dans cette configuration. Des versions
        compilées de <TT/kermit/ pour n'importe quel système
        d'exploitation sont disponibles sur <TT><HTMLURL
        URL="http://www.columbia.edu/kermit/"
        NAME="http://www.columbia.edu/kermit/"></TT>.  D'autres
        programmes populaires de communications sous DOS, comme
        <TT/telix/ ou <TT/procomm/ remplissent également très bien cette
        fonction. Soyez juste sûr de fournir des informations correctes
        lors du paramétrage des communications de votre terminal-PC.

<SECT>Puis-je utiliser plus de deux ports série&nbsp;?<LABEL ID="irqaddr">
<P>
        Il n'est pas nécessaire que vous lisiez cette section, à moins
        que vous utilisiez au moins trois ports série... (mais pas sur
        une carte multiports).
<P>
        N'importe quel port série libre est utilisable. La seule
        limitation réside dans le nombre d'interruptions (IRQ) et
        d'adresses de port d'entrée/sortie à utiliser.  Cette limitation
        n'est pas spécifique à Linux, mais est due au bus du PC. Chaque
        périphérique série (port série, modem interne, carte série) doit
        posséder ses propres interruption et adresse. 
<P>
        Les cartes série multiports sont spécialement conçues pour
        partager la même interruption sur tous les ports qu'elles
        possèdent. Linux communique avec elles en sélectionnant une
        adresse d'entrée/sortie différente pour chaque port de ces
        cartes.

<SECT1>Choisir les interruptions des périphériques série
<P>
        Par défaut sur un PC, l'IRQ 4 est partagée entre  <TT/ttyS0/ et
        <TT/ttyS2/, et l'IRQ 3 entre <TT/ttyS1/ et <TT/ttyS3/. Les
        interruptions en cours d'utilisation sont regroupées dans
        <TT>/proc/interrupts</TT>. Pour se servir de plus de deux ports
        série,  leur interruption doit être réassignée, par exemple en
        choisissant celle d'un port parallèle.   En effet, les IRQ 5 et
        7 sont sur un PC normalement attribuées aux ports parallèles,
        mais peu de personnes en possèdent deux. Vous pouvez donc
        réassigner une de ces interruptions à un port série, et
        continuer à utiliser joyeusement votre port parallèle&nbsp;!
        Cette manipulation requiert le programme <TT/setserial/. De
        plus, il vous faudra ajuster certains cavaliers sur vos cartes
        (à vérifier sur les manuels des cartes) pour fixer les IRQ.
<P>
        Vous devez vous arranger pour avoir une IRQ unique pour chacun
        des ports série. Voici comment je configure les miens dans
        <TT>/etc/rc.d/rc.local</TT> (cette initialisation doit avoir
        lieu lors du démarrage)&nbsp;: 
<TSCREEN><VERB>
        /sbin/setserial /dev/ttyS0 irq 3        # ma souris
        /sbin/setserial /dev/ttyS1 irq 4        # mon terminal Wyse
        /sbin/setserial /dev/ttyS2 irq 5        # mon modem Zoom 
        /sbin/setserial /dev/ttyS3 irq 9        # mon modem USR
</VERB></TSCREEN>
<P>
        Assignations standards des IRQ&nbsp;:
<VERB>
              IRQ  0    Base de temps 0
              IRQ  1    Clavier
              IRQ  2    Cascade pour le deuxieme controleur d'IRQ
              IRQ  3    Port serie 2
              IRQ  4    Port serie 1
              IRQ  5    Port parallele 2
              IRQ  6    Disquette
              IRQ  7    Port parallele 1
              IRQ  8    Horloge temps-reel (RTC)
              IRQ  9    Redirige vers l'IRQ2
              IRQ 10    Non assignee 
              IRQ 11    Non assignee
              IRQ 12    Non assignee
              IRQ 13    Coprocesseur mathematique
              IRQ 14    Controleur de disques durs 1
              IRQ 15    Controleur de disques durs 2
</VERB>
<P>
        Il n'existe pas vraiment de Bonne Technique pour choisir les
        interruptions. Il faut juste s'assurer qu'elles ne sont pas déjà
        utilisées par la carte mère, ou une autre carte. 2, 3, 4, 5, ou
        7 est généralement un bon choix.  ``Non assignée'' signifie que
        rien de standard n'utilise cette IRQ. Notez également que l'IRQ2
        et l'IRQ9 sont identiques&nbsp;: vous pouvez donc spécifier
        aussi bien 2 que 9, le gestionnaire de périphériques est très
        compréhensif. Si vous possédez une carte série avec un
        connecteur de bus 16 bits, vous pouvez également utiliser l'IRQ
        10, 11, 12 ou 15.
<P>
        N'utilisez pas les IRQ 0, 1, 6, 8, 13 et 14&nbsp;! Elles sont
        réservées par la carte mère. Une fois le paramétrage effectué,
        vérifiez l'absence de conflit avec <TT>/proc/interrupts</TT>.

<SECT1>Choisir les adresses des périphériques série
<P>
        Vous devez ensuite fixer les adresses des ports. Vérifiez le
        manuel pour la position des cavaliers. Comme pour les
        interruptions, chaque périphérique série doit posséder sa propre
        adresse. Par défaut, les ports sont paramétrés de la manière
        suivante&nbsp;:
<TSCREEN><VERB>
        ttyS0 adresse 0x3f8
        ttyS1 adresse 0x2f8
        ttyS2 adresse 0x3e8
        ttyS3 adresse 0x2e8
</VERB></TSCREEN>

        Choisissez les adresses à affecter à chaque port série, et
        positionnez les cavaliers sur la carte en conséquence. Ainsi,
        j'ai mon modem sur <TT>ttyS3</TT>, ma souris sur <TT>ttyS0</TT>,
        et mon terminal sur <TT/ttyS2/.

        Au prochain démarrage, Linux devrait voir vos ports séries aux
        adresses que vous avez sélectionnées. Par contre, les IRQ vues
        par Linux peuvent ne pas correspondre avec celles que vous avez
        configurées. Ne vous inquiétez pas&nbsp;: Linux ne sait pas
        détecter les IRQ au démarrage, car c'est assez aléatoire et le
        résultat peut être faux. Utilisez <TT/setserial/ pour spécifier
        à Linux quelles interruptions sont associées aux ports, puis
        vérifiez après redémarrage de Linux les adresses des ports
        d'entrée/sortie avec <TT>/proc/ioports</TT>.
        
<SECT>Comment configurer des vitesses plus importantes pour mes ports série&nbsp;? À quelle vitesse dois-je fixer mon modem&nbsp;?<LABEL ID="spdhi">
<P>
        Cette section a pour but de vous aider à déterminer la vitesse
        du modem à utiliser avec un programme de communications ou
        <TT/getty/.
<ITEMIZE>
        <ITEM>Si votre modem ne supporte que des vitesses inférieures à
        9600 bps (V.32), choisissez la vitesse la plus importante, par
        exemple 300 bps (V.21/Bell 103), 1200 bps (V.22/Bell 212A), ou
        2400 bps (V.22bis).

        <ITEM>Si vous possédez un modem 9600 bps (V.32), intégrant la
        compression de données V.42bis, choisissez 38400 bps. Le taux
        <EM/théorique/ de compression est de 4:1, soit ``4 * 9600 =
        38400''.        
        
        <ITEM>Si vous possédez un modem 14400 bps (V.32bis), intégrant
        la compression de données V.42bis, configurer le port à 57600
        bps (4 * 14400 = 57600) avec l'option <TT/spd_hi/ de
        <TT/setserial/. 
<P>
        Pour les modems 28800 ou 33600 bps (V.FC ou V.34), utiliser
        l'option <TT/spd_vhi/ (4 * 28800 = 115200).
<P>
        Enfin, fixez la vitesse à 38400 bps dans votre programme de
        communications ou <TT>/etc/inittab</TT>. Vous êtes maintenant en
        grande vitesse&nbsp;! Assurez-vous de posséder des UART 16550A.
<P>
        Il existe des vitesses nommées 57600 et 115200 dans les versions
        de <TT/libc/ supérieures ou égales à 5.x (à vérifier dans le
        répertoire <TT>/lib</TT>). Dans ce cas, vous pouvez les
        sélectionner directement (sans passer par <TT/setserial/) si vos
        applications ont été compilées de manière à en tirer avantage.
        Il existe tellement de distributions Linux, que le mieux à faire
        est d'essayer directement ces vitesses si votre distribution est
        assez récente.
</ITEMIZE>
<P>
        Avant de fixer la configuration de <TT/setserial/ dans
        <TT>/etc/rc.d/rc.serial</TT> ou <TT>/etc/rc.d/rc.local</TT> afin
        qu'elle soit prise en compte au démarrage, il est préférable de
        l'essayer manuellement.  Par exemple, pour fixer <TT/ttyS3/ à
        115200 bps, mon fichier <TT>/etc/rc.d/rc.local</TT>
        contient&nbsp;:
<TSCREEN><VERB>
/sbin/setserial /dev/ttyS3 spd_vhi
</VERB></TSCREEN>
<P>
        Assurez-vous que le chemin d'accès à <TT/setserial/ est valide,
        de même que le nom du périphérique. Le paramétrage d'un port
        série peut être vérifié par&nbsp;:
<TSCREEN><VERB>
setserial -a /dev/ttyS3
</VERB></TSCREEN>

<SECT>Programmes et utilitaires de communications<LABEL ID="comms">
<P>
        Voici une liste de logiciels de communications que vous pouvez
        télécharger par FTP, s'ils ne sont pas fournis dans votre
        distribution&nbsp;:

<ITEMIZE>
        <ITEM><TT/ecu/ - un programme de communications
        <ITEM><URL URL="http://www.columbia.edu/kermit/"
        NAME="C-Kermit"> - programme de communications portable et
        scriptable, par liaison série ou TCP/IP, incluant le transfert
        de fichiers et la traduction des jeux de caractères
        <ITEM><TT/minicom/ - un programme de communications du genre de
        <TT/telix/ 
        <ITEM><TT/pcomm/ - un programme de communications du genre de
        <TT/procomm/ avec protocole zmodem
        <ITEM><TT/seyon/ - un programme de communications sous X11
        <ITEM><TT/xc/ - paquetage de communications xcomm
        <ITEM>D'autres programmes utiles sont <TT/term/ et <TT/SLiRP/
        qui offrent des fonctionnalités TCP/IP à partir d'un compte
        shell.  
        <ITEM><TT/screen/ est un autre programme multi-sessions qui se
        comporte comme les consoles virtuelles.
        <ITEM><TT/callback/ est un programme permettant à votre modem de
        se faire rappeler.
        <ITEM><TT/mgetty+fax/ gère le mode FAX, et offre un <TT/getty/
        alternatif.
        <ITEM><TT/ZyXEL/ est un programme de contrôle pour les modems
        ZyXEL U-1496.  Il gère les appels entrants et sortants, la
        sécurité pour le rappel automatique, le mode FAX, et possède des
        fonctions de messagerie vocale.
        <ITEM>SLIP et PPP peuvent être téléchargés depuis <TT><HTMLURL
        URL="ftp://sunsite.unc.edu/pub/Linux/system/network/serial"
        NAME="ftp://sunsite.unc.edu/pub/Linux/system/network/serial"></TT>.
        <ITEM>On trouve également d'autres programmes pour les liaisons
        série sur <TT><HTMLURL
        URL="ftp://sunsite.unc.edu/pub/Linux/system/serial"
        NAME="ftp://sunsite.unc.edu/pub/Linux/system/serial"></TT> et
        <TT><HTMLURL URL="ftp://sunsite.unc.edu/pub/Linux/apps/comm"
        NAME="ftp://sunsite.unc.edu/pub/Linux/apps/serialcomm"></TT> ou
        sur l'un des nombreux sites miroirs.
</ITEMIZE>

<SECT>Trucs et astuces sur les liaisons série
<P> 
        Je vous présente ici quelques astuces que vous pourrez trouver
        utiles...

<SECT1><TT/kermit/ et zmodem
<P>
        Pour utiliser le protocole zmodem avec <TT/kermit/, ajoutez les
        lignes suivantes dans votre <TT/.kermrc/:
<TSCREEN><VERB>
define rz&nbsp;!rz < /dev/ttyS3 > /dev/ttyS3
define sz&nbsp;!sz \%0 > /dev/ttyS3 < /dev/ttyS3
</VERB></TSCREEN>
        Soyez sûr de positionner le port série auquel votre modem est
        rattaché.  Il suffit alors de taper <TT/rz/ ou <TT>sz
        &lt;filename&gt;</TT> à l'invite de commandes de <TT/kermit/.

<SECT1>Paramétrer les types de terminaux automagiquement
<P>
        Pour sélectionner automagiquement le type de terminal au début
        d'une session, ajoutez-le dans l'entrée correspondante de
        <TT>/etc/inittab</TT>. Par exemple, avec un terminal VT100 sur
        <TT/ttyS1/, j'ajouterais ``vt100'' en paramètre de la commande
        <TT/getty/&nbsp;:
<TSCREEN><VERB>
S1:456:respawn:/sbin/getty ttyS1 DT9600 vt100
</VERB></TSCREEN>
<P>
        Vous pouvez également utiliser <TT/tset/ pour positionner les
        caractéristiques du terminal à l'entrée en session,
        indépendamment des valeurs par défaut.

<SECT1><TT/ls/ en couleurs sur les connexions série
<P>     
        Si l'émulation de votre terminal ne supporte pas correctement
        l'option couleur de <TT/ls/, désactivez-la. Certaines
        installations l'utilisent par défaut (<TT/ls --color/ ou <TT/ls
        --colour/).  Vérifiez les alias sur <TT/ls/ dans
        <TT>/etc/profile</TT> et <TT>/etc/csh.cshrc</TT>. Vous pouvez
        également créer un nouvel alias de <TT/ls/ sur <TT/ls
        --no-color/, si vous ne souhaitez pas modifier les valeurs par
        défaut.

<SECT1>Imprimer sur une imprimante attachée à un terminal
<P>     
        Il existe pour cela un programme appelé <TT/vtprint/, disponible
        sur <TT><HTMLURL URL="ftp://ftp.sdsu.edu/pub/vtprint"
        NAME="ftp://ftp.sdsu.edu/pub/vtprint"></TT>, et sur <TT><HTMLURL
        URL="http://www.sdsu.edu/&tilde;garrett"
        NAME="http://www.sdsu.edu/&tilde;garrett"></TT>.
<P>
        Un deuxième programme est <TT/xprt/. Il peut être téléchargé
        depuis <TT><HTMLURL
        URL="ftp://sunsite.unc.edu/pub/Linux/system/printing"
        NAME="ftp://sunsite.unc.edu/pub/Linux/system/printing"></TT>.

<SECT1>Linux peut-il configurer les périphériques série automagiquement&nbsp;?
<P>
        Effectivement, Linux peut détecter et paramétrer les
        périphériques série automatiquement au démarrage en ajoutant par
        exemple la ligne&nbsp;:
<TSCREEN><VERB>
/sbin/setserial /dev/ttyS3 auto_irq skip_test autoconfig
</VERB></TSCREEN>
        dans votre fichier <TT>/etc/rc.d/rc.local</TT> ou
        <TT>/etc/rc.d/rc.serial</TT>. Répétez la manipulation pour
        chacun des ports série qui doit être configuré automatiquement.
        Soyez juste sûr de fournir un nom de périphérique existant sur
        votre machine.

<SECT2>Remarques pour les cartes multiports
<P>
        Référez-vous au fichier <TT/rc.serial/ fourni avec
        <TT/setserial/ pour les adresses et les IRQ de ces cartes.
        Beaucoup de paramètres y sont détaillés concernant les cartes
        multiports, y compris les adresses et les noms des périphériques
        à utiliser.

<SECT1>Utiliser une console série
<P>
        Un article dans le  numéro 36 du  <EM/Linux Journal/
        (<TT><HTMLURL URL="http://www.ssc.com/lj/issue36/index.html"
        NAME="http://www.ssc.com/lj/issue36/index.html"></TT>) explique
        comment utiliser un terminal comme une console. Malheureusement,
        l'adresse électronique de l'auteur ne semble pas correcte car
        les messages reviennent.   J'espère que cet article figurera
        bientôt sur le site WEB du <EM/Linux Journal/ à l'URL mentionnée
        ci-dessus.  <EM>(NdT&nbsp;: cet article est maintenant
        disponible en ligne à <TT><HTMLURL
        URL="http://www.ssc.com/lj/issue36/console.html"
        NAME="http://www.ssc.com/lj/issue36/console.html"></TT>)</EM>
        
<SECT1>Obtenir des débits plus importants
<P>
        Si vous jugez le débit de vos ports série lent, ou si des
        erreurs d'écrasement de caractères à la réception (<EM/overrun
        errors/) se produisent sur un système muni de disques durs
        (E)IDE, utilisez <TT/hdparm/ pour modifier certains des
        paramètres de ces disques, notamment le démasquage des autres
        IRQ pendant les interruptions disque. Cette manipulation
        augmentera le taux de réponse et aidera à supprimer les
        écrasements de caractères. Lisez bien les pages de manuel, car
        certaines combinaisons sont plus ou moins bien supportées
        suivant les disques et les contrôleurs utilisés, et peuvent
        provoquer une corruption du système de fichiers.
<P>
        Regardez également l'utilitaire <TT>irqtune</TT> qui permet de
        modifier la priorité de l'IRQ d'un périphérique, par exemple
        celle du port série lié au modem. La FAQ d'<TT/irqtune/ est
        disponible sur <TT> <HTMLURL
        URL="http://www.best.com/~cae/irqtune"
        NAME="http://www.best.com/~cae/irqtune"></TT>.

<SECT>Un pas de plus...
<P>
        Cette section n'est absolument pas nécessaire à la compréhension
        des ports série sous Linux, mais peut néanmoins vous apporter
        quelques éclaircissements sur Unix et le monde des
        télécommunications.
        
<SECT1>Qu'est-ce que les fichiers verrous&nbsp;?
<P>
        Un fichier verrou est simplement un fichier qui indique qu'un
        périphérique particulier est en cours d'utilisation. Ils sont
        regroupés dans <TT>/usr/spool/uucp</TT> ou <TT>/var/lock</TT>.
        Sous Linux, ils se nomment <TT/LCK../<EM/nom/ où <EM/nom/ est
        soit un nom de périphérique, soit un nom de site UUCP. Certains
        processus créent de tels fichiers pour s'assurer l'accès
        exclusif aux périphériques. Par exemple, si vous appelez avec
        votre modem, un fichier verrou va être créé pour avertir les
        autres processus que le modem est déjà en cours d'utilisation.
        Les verrous contiennent principalement le PID du processus qui
        s'est attribué le périphérique.  La plupart des programmes
        regardent dans un premier temps si un fichier verrou existe,
        puis s'il est toujours valide en recherchant dans la table des
        processus le programme qui a verrouillé le périphérique. Si le
        fichier verrou est toujours valide, alors le nouveau programme
        doit s'arrêter. Dans le cas contraire, certains programmes
        suppriment le fichier verrou périmé, et utilisent le
        périphérique en créant leur propre verrou à l'intérieur du
        processus. D'autres programmes s'arrêtent tout simplement et
        préviennent l'utilisateur que le périphérique est déjà utilisé.
        
<SECT1>``baud'' et ``bps''
<P>
        ``baud'' et ``bps'' font certainement partie des termes les plus
        mal utilisés dans le monde de l'informatique et des
        télécommunications.  Ils sont souvent considérés à tort comme
        équivalents, alors qu'ils ne le sont pas&nbsp;!
        <DESCRIP>
        <TAG/baud/ Le baud représente la fréquence de (dé)modulation
        d'un signal, par exemple celui envoyé ou reçu par un modem
        (<BF/mo/dulateur-<BF/dém/odulateur), c'est-à-dire le nombre de
        fois où il change par seconde.  Par exemple, 1200 bauds implique
        que le signal change d'état toutes les 833 microsecondes. Les
        fréquences de (dé)modulation les plus courantes pour un modem
        sont 50, 75, 110, 300, 600, 1200, et 2400 bauds.  La plupart des
        modems hautes vitesses fonctionnent à 2400 bauds.  Les
        fréquences plus élevées sont plus difficiles à atteindre.  Cette
        limitation est principalement due aux basses performances des
        lignes téléphoniques dédiées essentiellement au transport de la
        voix.  Plusieurs bits sont alors encodés par baud, ce qui permet
        d'obtenir des taux de transfert en bits plus élevés qu'en bauds.
        L'étymologie du mot ``baud'' vient de l'inventeur de
        l'imprimante télégraphique asynchrone, Émile Baudot.
                
        <TAG/bps/ Le taux de transfert en bps représente le nombre de
        bits transmis en une seconde. Les vitesses en bps les plus
        courantes sont 50, 75, 110, 300, 1200, 2400, 9600, ... 115200.
        Les modems avec compression V.42bis (rapport maximal de 4 à 1)
        activée sont capables <EM/théroriquement/ d'atteindre des
        vitesses de 115200 bps. C'est l'usage mauvais le plus courant du
        terme ``baud''.
        </DESCRIP>      
<P>
        Donc, si les modems hautes vitesses fonctionnent à 2400 bauds,
        comment peuvent-ils émettre à 14400 bps&nbsp;? En fait, les
        modems atteignent des taux de transfert en bps supérieurs à la
        fréquence de modulation, en codant plusieurs bits dans un seul
        changement d'amplitude ou de phase du signal. Ainsi, quand 2
        bits ou plus sont codés par baud, la vitesse en bps dépasse la
        fréquence en bauds. Quand votre modem se connecte à 14400 bps,
        il envoie effectivement 6 bits à chaque changement de phase, à
        2400 bauds.
<P>
        Cette confusion entre bauds et bps date du temps où les taux de
        transfert étaient faibles, et où la vitesse en bps égalait la
        fréquence de modulation en bauds. Par exemple, un modem à 300
        bps fonctionne à une fréquence de 300 bauds. Les deux valeurs
        ont commencé à diverger avec l'apparition des modems hautes
        vitesses.

<SECT1>Qu'est-ce que les UART&nbsp;?  Comment influent-ils sur les performances&nbsp;?<LABEL ID="uart">
<P>
        Les UART (<EM><BF/U/niversal <BF/A/syncronous <BF/R/eceiver
        <BF/T/ransmitter</EM> - Émetteur Récepteur Universel Asynchrone)
        sont des circuits électroniques équipant les cartes série des
        PC.  Ils servent à transformer les données en bits, à les
        envoyer sur la ligne série, puis à reconstruire ces données à
        l'autre bout. Ils travaillent sur des octets, qui correspondent
        justement à la taille des caractères ASCII.
<P>
        Supposons qu'un terminal est connecté à votre PC. Quand vous
        tapez un caractère, le terminal l'envoie à un émetteur (qui est
        aussi un UART). L'émetteur envoie alors cet octet sur la ligne
        série, bit par bit, et à une vitesse spécifique. Du côté PC,
        l'UART réceptionne ces bits, reconstruit l'octet, et enfin le
        place dans une zone mémoire.
<P>
        Il existe essentiellement deux types d'UART&nbsp;: les simples
        (8250 et 16450), et ceux dotés de FIFO (16550A). Pour comprendre
        les différences qui existent entre ces circuits, il faut
        examiner ce qui se passe quand un UART envoie ou reçoit un
        octet.
<P>
        L'UART lui-même ne fait rien avec les données ; il s'occupe
        juste de les émettre ou les réceptionner. Le CPU reçoit une
        interruption du périphérique série chaque fois qu'un octet part
        ou arrive. Le CPU déplace alors l'octet reçu du périphérique
        série vers une zone mémoire, ou alors il redonne à l'UART un
        nouvel octet à transmettre. Les UART 8250 et 16450 ne possèdent
        qu'une zone tampon d'un octet, ce qui signifie que le CPU est
        interrompu à chaque caractère. Ça fonctionne aux vitesses
        faibles, mais pour des vitesses élevées, le CPU est tellement
        occupé par l'UART, qu'il n'a plus assez de temps pour les autres
        tâches. Dans certains cas, le CPU ne peut pas répondre à
        l'interruption assez vite, et les caractères sont alors écrasés
        (<EM/overrun error/).
<P>
        Les UART 16550 sont alors utiles car ils sont équipés de tampons
        FIFO de 16 octets, c'est-à-dire qu'ils peuvent émettre ou
        recevoir jusqu'à 16 octets avant d'interrompre le CPU. Bien que
        ce seuil d'interruption soit rarement fixé à 16, ça représente
        quand même un avantage significatif par rapport aux UART dotés
        d'un tampon d'un seul octet.  Le CPU est alors interrompu moins
        souvent et peut consacrer plus de temps aux autres tâches. Les
        données ne sont donc plus perdues. (Il existe également un UART
        16550, considéré comme un 16450 car il est défectueux.)
<P>
        En général, les 8250 et 16450 peuvent suffire pour des vitesses
        n'excédant pas 38400 bps. À des vitesses supérieures, vous
        pouvez voir apparaître des pertes de caractères. D'autres
        systèmes d'exploitation pour PC, comme DOS (définition
        approximative dans ce cas), qui ne sont pas multitâches, peuvent
        à la rigueur mieux se débrouiller avec des 8250 ou des 16450.
        C'est pour cela que certaines personnes ne constatent aucune
        perte de données, jusqu'au moment où elles passent à Linux.
<P>
        Les cartes multiports intelligentes utilisent des DSP
        (<EM/Digital Signal Processors/ - processeurs de signaux
        digitaux) pour assurer des fonctions supplémentaires de contrôle
        et de mises en mémoire tampon, ce qui permet de décharger encore
        plus le CPU. Par exemple, les cartes Cyclades Cyclom et Stallion
        EasyIO possèdent un UART RISC Cirrus Logic CD1400. La plupart
        des autres cartes sont dotées de CPU 80186, voire de CPU RISC
        spécifiques, pour assurer les entrées/sorties série.
<P>
        Gardez à l'esprit que ces UART ne sont pas mauvais, mais qu'ils
        ne suffisent pas pour des vitesses élevées. Vous ne devriez pas
        rencontrer de problème en connectant un terminal ou une souris
        sur de tels UART. Par contre, les 16550A sont définitivement un
        <EM/must/ pour les modems hautes vitesses.
<P>
        Les cartes à base d'UART 16550A sont à peine plus chères que
        celles à base de 16450. De même, il est possible de remplacer
        les UART 16450 existants sur une carte par des 16550A. Ces
        circuits sont compatibles broche à broche.  Certaines cartes
        sont même équipées à cet effet d'UART montés sur support. Sinon,
        il faudra souder. Remarquez que vous vous éviterez sûrement pas
        mal de soucis en achetant directement une nouvelle carte.

<SECT>Résoudre les problèmes

<SECT1>Le message ``line <EM/NNN/ of inittab invalid'' s'affiche en permanence
<P>
        Assurez-vous d'utiliser une syntaxe correcte pour votre version
        de <TT/init/. En effet, chaque programme <TT/init/ ou presque a
        une syntaxe spécifique pour son fichier de configuration
        <TT>/etc/inittab</TT>. De même, vérifiez les paramètres que vous
        passez à votre <TT/getty/.

<SECT1>Le message ``/dev/cua<EM/N/: Device or resource busy'' apparaît quand j'essaie d'appeler
<P>
        Ce problème peut survenir quand les signaux DCD ou DTR ne sont
        pas positionnés correctement. DCD doit être levé seulement lors
        d'une connexion (<EM/ie/ quelqu'un est déjà connecté), et non
        pas quand <TT/getty/ scrute le port. Assurez-vous donc que le
        modem est configuré pour lever le signal DCD seulement en
        connexion. DTR doit être positionné dès qu'un processus utilise
        ou scrute la ligne, par exemple <TT/getty/, <TT/kermit/, ou
        n'importe quel autre programme de communications.

        Une autre cause possible est que l'IRQ assignée au port série
        est déjà prise par un autre périphérique. En effet, lors de son
        initialisation, chaque périphérique demande l'autorisation à
        Linux d'utiliser l'IRQ sélectionnée.  Linux garde une trace de
        l'affectation des interruptions, et si une IRQ est en cours
        d'utilisation, votre périphérique ne pourra pas s'initialiser.
        Celui-ci n'a aucun moyen de vous prévenir, excepté par le
        message ``device-busy'' lorsque vous tentez de l'utilisez.
        Vérifiez alors les interruptions de toutes vos cartes (série,
        ethernet, SCSI, etc.) et les conflits éventuels.

<SECT1>Le message ``Id S<EM/N/ respawning too fast: disabled for 5 minutes'' s'affiche périodiquement
<P>
        Assurez-vous que votre modem est correctement configuré.
        Examinez particulièrement les registres <TT/E/ et <TT/Q/. Ce
        problème peut apparaître lorque <TT/getty/ discute avec le
        modem.
<P>
        Vérifiez également les paramètres que vous passez à <TT/getty/
        dans <TT>/etc/inittab</TT>. Une syntaxe ou un nom de
        périphérique erroné peut causer de sérieux problèmes. 
<P>
        La syntaxe de <TT>/etc/gettydefs</TT> peut être vérifiée par la
        commande suivante&nbsp;:
<TSCREEN><VERB>
linux# getty -c /etc/gettydefs
</VERB></TSCREEN>

<P>
        Ce problème arrive quelquefois lors de l'échec de
        l'initialisation de <TT/uugetty/. Reportez-vous à la section
        <REF ID="nowork" NAME="getty ou uugetty ne fonctionne toujours
        pas">.

<SECT1>Mes périphériques série sont lents ou unidirectionnels
<P>     
        La cause la plus probable est un conflit d'IRQ. Assurez-vous
        qu'aucune IRQ n'est partagée. Vérifiez les cavaliers sur les
        différentes cartes (série, ethernet, SCSI, etc.) ainsi que les
        paramètres passés à <TT/setserial/ pour tous les périphériques
        série. Les conflits peuvent être localisés avec
        <TT>/proc/ioports</TT> et <TT>/proc/interrupts</TT>.

<SECT1>Mon modem ne répond plus après le raccrochage, ou <TT/uugetty/ ne se relance plus automatiquement
<P>     
        Cela peut se produire si le modem n'est pas réinitialisé lorque
        le signal DTR retombe. J'ai vu les LED RD et SD devenir folles
        quand ça m'est arrivé. Il faut alors réinitialiser le modem. La
        plupart des modems compatibles Hayes ont besoin de la commande
        <TT/&amp;D3/, mais sur mon USR Courier, je dois positionner
        <TT/&amp;D2/ et <TT/S13=1/.  Vérifiez dans la documentation de
        votre modem.

<SECT1>Un terminal est connecté à mon PC, mais il se bloque dès que j'ai entré mon nom d'utilisateur
<P>
<ITEMIZE>
        <ITEM>Si vous utilisez <TT/getty/, vous devez faire figurer
        <TT/CLOCAL/ dans l'entrée correspondante de
        <TT>/etc/gettydefs</TT>, et utiliser un câble null-modem
        complet. L'option <TT/CLOCAL/ indique à Linux d'ignorer les
        signaux de contrôle spécifiques aux modems&nbsp;:
<TSCREEN><VERB>
# Entree de terminal simple a 38400 bps
DT38400# B38400 CS8 CLOCAL # B38400 SANE -ISTRIP CLOCAL #@S @L login: #DT38400

# Entree de terminal simple a 19200 bps
DT19200# B19200 CS8 CLOCAL # B19200 SANE -ISTRIP CLOCAL #@S @L login: #DT19200

# Entree de terminal simple a 9600 bps
DT9600# B9600 CS8 CLOCAL # B9600 SANE -ISTRIP CLOCAL #@S @L login: #DT9600
</VERB></TSCREEN>
        Ensuite, tuez (<TT>kill</TT>) le processus <TT/getty/ afin
        qu'une nouvelle instance soit lancée avec les entrées mises à
        jour.

        <ITEM>Si vous utilisez <TT/agetty/, ajoutez l'option <TT/-L/ à
        la ligne correspondante de <TT>/etc/inittab</TT>, pour indiquer
        que vous désirez ignorer les signaux de contrôle spécifiques aux
        modems.  Redémarrez <TT/init/ en tapant <TT/init q/. L'entrée
        doit ressembler à&nbsp;:
<TSCREEN><VERB>
s1:345:respawn:/sbin/agetty -L 9600 ttyS1 vt100
</VERB></TSCREEN>
</ITEMIZE>

<SECT1>Mon modem perd des données à haute vitesse
<P>
        Si vous essayez de faire fonctionner votre modem à plus de 38400
        bps, vous devez obligatoirement passer en UART 16550A.
        Reportez-vous à la section <REF ID="uart" NAME="Qu'est-ce que
        les UART&nbsp;?">.

<SECT1>Au démarrage, Linux n'affiche pas les ports série tels que je les ai paramétrés
<P>
        Effectivement, Linux ne cherche pas à détecter les IRQ au
        démarrage, mais seulement les ports série. Il suppose que vous
        utilisez les interruptions par défaut, car leur détection est
        hasardeuse et peut se révéler inexacte.
<P>
        Ainsi, même si j'ai forcé <TT/ttyS2/ à l'IRQ 5, je vois
        toujours&nbsp;:
<TSCREEN><VERB>
Jan 23 22:25:28 misfits vmunix: tty02 at 0x03e8 (irq = 4) is a 16550A
</VERB></TSCREEN>
        quand Linux se lance. Il faut alors utiliser <TT/setserial/ pour
        indiquer les IRQ à Linux. Après le démarrage, vous pouvez
        vérifier le paramétrage effectif dans le fichier
        <TT>/proc/interrupts</TT>.

<SECT1><TT/rz/ et/ou <TT/sz/ ne fonctionne pas quand j'appelle mon système Linux avec un modem
<P>
        Si Linux recherche le périphérique <TT>/dev/modem</TT> quand
        vous tentez de transférer des fichiers, regardez les alias
        définis dans <TT>/etc/profile</TT> et <TT>/etc/csh.cshrc</TT>.
        Ils peuvent être nombreux suivant les distributions (notamment
        Slackware) et redéfinir les programmes zmodem. Enlevez ces
        alias, ou corrigez-les.

<SECT1>Mon écran imprime des caractères bizarres
<P>
        Ce phénomène se produit sur les consoles virtuelles, et parfois
        sur les lignes série, quand elles reçoivent des données
        binaires. Il faut alors taper <TT>echo ^v^[c</TT>,
        c'est-à-dire&nbsp;:
<TSCREEN><VERB>
linux% echo <ctrl>v<esc>c
</VERB></TSCREEN>

<SECT1><TT/getty/ ou <TT/uugetty/ ne fonctionne toujours pas<LABEL ID="nowork">
<P>
        <TT/getty_ps/ fournit une option <TT/DEBUG/ que l'on peut
        spécifier dans le fichier de configuration
        <TT>/etc/conf.{uu}getty.ttyS</TT><EM/N/. Éditez-le pour ajouter
        la ligne <TT/DEBUG=/<EM/NNN/ où <EM/NNN/ est une combinaison de
        valeurs octales définissant les informations que vous voulez
        obtenir&nbsp;:
<TSCREEN><VERB>
D_OPT   001            configuration des options
D_DEF   002            traitement du fichier des valeurs par defaut
D_UTMP  004            traitement de utmp/wtmp
D_INIT  010            initialisation de la ligne (INIT)
D_GTAB  020            traitement du fichier gettytab
D_RUN   040            autres diagnostics lors de l'execution
D_RB    100            traitement du mode de rappel (ringback)
D_LOCK  200            traitement des fichiers verrou pour uugetty
D_SCH   400            traitement de la programmation horaire (schedule)
D_ALL   777            tout 
</VERB></TSCREEN>
        Positionner <TT/DEBUG=010/ est un bon point de départ.
<P>
        Si <TT/syslogd/ tourne, ces informations apparaîtront dans les
        fichiers log.  Dans le cas contraire, elles seront enregistrées
        dans <TT>/tmp/getty:ttyS</TT><EM/N/ pour <TT/getty/, dans
        <TT>/tmp/uugetty:ttyS</TT><EM/N/ pour <TT/uugetty/, et dans
        <TT>/var/adm/getty.log</TT>.  Consultez ces fichiers pour
        déterminer ce qui se passe. Vous devrez très probablement
        ajuster certains paramètres dans le fichier de configuration, et
        reconfigurer votre modem.
<P>
        Vous pouvez également essayer <TT/mgetty/&nbsp;: certaines
        personnes ont plus de chance avec...

<SECT>Autres sources d'information
<P>
<ITEMIZE>
<ITEM>les pages de manuel pour&nbsp;: <TT/agetty(8)/, <TT/getty(1m)/, 
<TT/gettydefs(5)/, <TT/init(1)/, <TT/login(1)/, <TT/mgetty(8)/, 
<TT/setserial(8)/
<ITEM>la documentation de votre modem
<ITEM>NET-3 HOWTO&nbsp;: tout sur les réseaux, dont SLIP, CSLIP, et PPP
<ITEM>PPP HOWTO&nbsp;: aide sur PPP
<ITEM>Printing HOWTO&nbsp;: pour installer une imprimante série
<ITEM>Term HOWTO&nbsp;: tout ce que vous voulez savoir sur le programme <TT/term/
<ITEM>UPS HOWTO&nbsp;: pour la connexion d'onduleurs sur un port série
<ITEM>UUCP HOWTO&nbsp;: pour des informations sur le paramétrage de UUCP
<ITEM>forums de discussion Usenet&nbsp;: 
<TSCREEN><VERB>
comp.os.linux.answers
        FAQ, How-To, README, etc. a propos de Linux.
comp.os.linux.hardware 
        compatibilite materielle avec le systeme d'exploitation Linux.
comp.os.linux.networking 
        reseaux et communications sous Linux.
comp.os.linux.setup 
        installation et administration systeme sous Linux.
fr.comp.os.linux
        forum de discussion sur Linux en francais
</VERB></TSCREEN>

<ITEM>la liste de diffusion consacrée aux ports série sous Linux.   Pour
vous abonnez, envoyez un message électronique à <TT><HTMLURL
URL="mailto:majordomo@vger.rutgers.edu"
NAME="majordomo@vger.rutgers.edu"></TT>, avec ``<TT/subscribe
linux-serial/'' dans le corps du message.  La commande ``<TT/help/''
dans le corps du message vous permet de recevoir une message d'aide sur
les commandes supportées.  Ce serveur gère également d'autres listes
consacrées à Linux ; pour les connaître, envoyez la commande
``<TT/lists/''.

<ITEM>un document traitant des communications série et des cartes
multiports est disponible sur&nbsp;: <TT><HTMLURL
URL="http://www.cyclades.com" NAME="http://www.cyclades.com"></TT>.

<ITEM>FAQ sur les modems&nbsp;:<NEWLINE> <URL
URL="http://web.aimnet.com/&tilde;jnavas/modem/faq.html" NAME="Navas
28800 Modem FAQ"><NEWLINE> <URL
URL="http://www.teleport.com/&tilde;curt/modems.html" NAME="Curt's High
Speed Modem Page">

<ITEM>programmation série&nbsp;: <NEWLINE>
<URL
URL="http://heg-school.aw.com/cseng/authors/stevens/advanced/advanced.nclk"
NAME="Advanced Programming in the UNIX Environment">, par W. Richard
Stevens (ISBN 0-201-56317-7; Addison-Wesley)<NEWLINE> 
<URL URL="http://www.ora.com/catalog/posix/" NAME="POSIX Programmer's
Guide">, by Donald Lewine (ISBN 0-937175-73-0; O'Reilly)
</ITEMIZE>

<SECT>Contributions     
<P>     
        Il ne m'aurait pas été possible de rédiger ce HOWTO tout seul.
        Même si j'en ai écrit la plus grande partie, j'ai dû reprendre
        pas mal d'articles existants. Merci à tous ceux qui ont
        contribué à ce document, ou qui l'ont commenté.  La liste de ces
        personnes est maintenant trop longue pour figurer ici (plus
        d'une centaine). J'adresse plus particulièrement mes
        remerciements à Ted T'so pour toutes ses réponses sur les
        périphériques série, à Kris Gleason pour la maintenance de
        <TT/getty_ps/, et à Gert D&ouml;ring pour <TT/mgetty/. 
<P>
        <EM> Note du traducteur&nbsp;: un grand merci à <HTMLURL
        URL="mailto:Olivier.Tharan@int-evry.fr" NAME="Olivier Tharan">
        et <HTMLURL URL="mailto:florian.salamin@siemens.ch"
        NAME="Florian Salamin"> pour la relecture, ainsi qu'à <HTMLURL
        URL="mailto:dumas@Linux.EU.Org" NAME="Eric Dumas"> pour la
        gestion des traductions françaises et à <HTMLURL
        URL="mailto:Sebastien.Blondeel@lifl.fr" NAME="Sébastien
        Blondeel"> pour la mise en place d'un système centralisé des
        relectures.  </EM>
<P>
        FIN DU LINUX HOWTO POUR LES PORTS SÉRIE
</ARTICLE>

Site hébergé sur un Cloud Public IKOULA Ikoula