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

7. Comment configurer un terminal raccordé à mon PC ?

Ces instructions permettent aussi bien de connecter des terminaux que d'autres ordinateurs sur le port série de votre machine Linux.

7.1 Besoins matériels

Assurez-vous de posséder le bon type de câble. Un câble null modem acheté dans n'importe quel magasin informatique fera l'affaire, mais il doit s'agir effectivement d'un câble null modem ! 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).

Pour un connecteur DB25, il faut au minimum :

 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

Si vous voulez profiter du contrôle de flux matériel, la connexion null modem doit être intégralement câblée :

 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

Si vous avez un connecteur DB9, vous pouvez essayer :

 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

Pour un câble complet DB9-DB25, on obtient :

 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)
(Eh oui, les broches 2 et 3 ont effectivement la signification opposée entre les connecteurs DB9 et DB25 !)

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 : sur le connecteur côté PC, rebouclez ensemble RTS et CTS, ainsi que DSR, DCD et DTR.

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é.

7.2 Configurer getty

Si elles ne sont pas déjà présentes, ajoutez dans /etc/gettydefs les entrées destinées à getty pour votre terminal,

# 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

Si vous le désirez, 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 :

@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 '@@'.

Une fois l'édition de /etc/gettydefs terminée, vous pouvez en vérifier la syntaxe par :

linux# getty -c /etc/gettydefs

Assurez-vous qu'il n'existe pas déjà de fichier de configuration getty ou uugetty pour le port série auquel vous avez attaché votre terminal (/etc/default/{uu}getty.ttySN ou /etc/conf.{uu}getty.ttySN), car il risque probablement d'interférer avec l'instance de getty du terminal. Supprimez le fichier s'il existe.

Éditez la ligne suivante dans /etc/inittab, afin que 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) :

S1:456:respawn:/sbin/getty ttyS1 DT9600 vt100
Redémarrez init :
linux# init q

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 Entrée pour avertir le terminal.

7.3 Remarques sur la configuration d'un PC en tant que terminal

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. kermit fonctionne très bien dans cette configuration. Des versions compilées de kermit pour n'importe quel système d'exploitation sont disponibles sur http://www.columbia.edu/kermit/. D'autres programmes populaires de communications sous DOS, comme telix ou 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.


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