Content-type: text/html
Manpage of GETTY
GETTY
Section: Manuel de l'utilisateur Linux (1)
Updated: 5 mai 1999
Index
Return to Main Contents
NOM
getty - Configurer le mode terminal, la vitesse et la discipline de ligne.
SYNOPSIS
/etc/getty
[-d
fichier_défaut]
[-a] [-h] [-r
délai]
[-t
timeout]
[-w
waitfor]
ligne
[vitesse [type [lined]]]
/etc/getty -c
fichier_gettydefs
DESCRIPTION
Getty
est le deuxième des trois programmes
(init(1m),
getty(1m),
et
login(1m)),
utilisés par le système pour permettre aux utilisateurs
de se connecter.
Getty
est appelé par
init(1m)
pour :
- 1.
-
Ouvrir les lignes tty et les configurer.
- 2.
-
Afficher l'invite de connexion, et saisir le nom d'utilisateur.
- 3.
-
Lancer un processus de connexion (login) pour l'utilisateur.
La procédure précise suivie par
getty
est la suivante : En premier lieu,
getty
examine sa ligne de commande. Si aucune erreur n'est détectée,
getty
lit le fichier par défaut, normalement
/etc/conf.getty,
pour déterminer certaines valeurs de démarrage (/etc/conf.getty
s'il est compilé avec l'option FSSTND). Les valeurs données dans
le fichier par défaut (qui peut être changé par l'argument
optionnel
-d
fichier_défauts)
l'emportent sur celles de la ligne de commande.
Getty
ouvre alors la
ligne
en lecture/écriture et désactive le tampon stdio.
Si une initialisation a été spécifiée, elle est exécutée
(voir INITIALISATION DE LA LIGNE)
Après l'initialisation, la ligne est fermée puis réouverte.
Cette fois, par contre, la ligne est ouverte en mode bloc, de sorte
que le périphérique ne reste pas occupé.
La détection d'une porteuse (carrier) permettra d'ouvrir la ligne.
Ensuite,
getty
affiche la bannière de connexion, habituellement
/etc/issue)
et l'invite de connexion (login)
getty
lit le nom d'utilisateur et appelle
login(1m)
avec ce nom comme argument. Pendant qu'il lit le nom,
getty
tente d'adapter le système à la vitesse du terminal utilisé,
et configure aussi certains paramètres du terminal (voir
termio(7))
pour se conformer à la procédure de connexion de l'utilisateur.
Le périphérique tty utilisé par
getty
est déterminé par l'argument
ligne.
Getty
utilise la chaîne
/dev/line
comme nom du périphérique qu'il va utiliser.
À moins que
getty
soit invoqué avec le drapeau
-h
(ou que
HANGUP=NO
soit spécifié dans le fichier par défaut), il forcera à raccrocher la
ligne, en mettant sa vitesse à zéro.
-r
délai
sur la ligne de commande (ou
WAITCHAR=YES
et
DELAY=délai
dans le fichier par défaut) forcera
getty
à attendre un (seul) caractère sur la ligne, puis à attendre
délai
secondes avant de continuer. Si vous ne désirez aucun délai, utilisez
-r0.
-w
attendue
sur la ligne de commande (ou
WAITFOR=attendue
dans le fichier par défaut) forcera
getty
à attendre la chaîne
attendue
sur la ligne avant de continuer.
-t
timeout
sur la ligne de commande (ou
TIMEOUT=timeout
dans le fichier par défaut) forcera
getty
à terminer si aucun nom d'utilisateur n'est accepté pendant les
timeout
secondes suivant l'affichage de l'invite de connexion.
L'argument
vitesse
est une étiquette qui correspond à une entrée dans le fichier
/etc/gettydefs
(voir
gettydefs(5)).
Cette entrée définit à
getty
la vitesse initiale (en bauds) et la configuration tty, l'invite
de connexion à utiliser, la vitesse finale, et la configuration tty,
et un pointeur sur une autre entrée à essayer si jamais l'utilisateur
signale que la vitesse n'est pas correcte. Ça se fait en envoyant un
caractère
<break>
(en réalité, une séquence de caractères). Sous certaines conditions,
un retour-chariot remplit le même rôle. C'est habituellement le cas quand
getty est configuré avec une vitesse plus élevée que le terminal ou le modem.
Getty
parcourt le fichier gettydefs séquentiellement, en cherchant une entrée
correspondant à la vitesse. Si aucune
vitesse
n'est donnée, ou si aucune entrée correspondante n'est trouvée, la première
entrée de
/etc/gettydefs
est utilisée par défaut. Dans le cas où le fichier gettydefs n'est pas
accessible, une entrée par défaut spécifiée à la compilation est utilisée.
L'argument
type
est une chaîne qui donne le nom du type de terminal relié à la ligne.
Le
type
devrait être un nom de terminal valide, apparaissant dans la base de
données
termcap(7).
Getty
utilise cette valeur pour déterminer comment effacer l'écran. Il
recopie aussi le contenu de cette valeur dans la variable
d'environnement TERM.
L'argument
lined
est une chaîne décrivant la discipline de ligne à utiliser sur la
ligne. La valeur par défaut est
LDISC0.
Comme signalé plus haut,
getty
affiche l'invite de connexion puis lit le nom d'utilisateur. Si un
caractère nul est reçu, il est pris comme venant de l'appui sur la
touche
<break>
(ou sur Entrée / Retour-chariot) par l'utilisateur,
pour indiquer que la vitesse est mauvaise. Cela force
getty
à passer à la
vitesse
suivante de la série (définie dans /etc/gettydefs).
Le nom d'utilisateur est terminé par un caractère saut de ligne (LF)
ou retour chariot (CR). Si c'est un retour chariot, le système est
configuré pour transformer ceux-ci en sauts de ligne (voir
ioctl(2)).
Le nom d'utilisateur est vérifié. S'il ne contient que des majuscules,
le système est configuré pour transformer toutes les (futures)
majuscules en minuscules.
Une option de vérification est fournie pour tester le fichier gettydefs.
Quand
getty
est invoqué avec l'option
-c
gettydefs,
il examine le fichier appelé
gettydefs
et affiche (sur la sortie standard) les valeurs qu'il lit. Si des
erreurs d'analyse surviennent (dues à des erreurs dans la syntaxe du
fichier gettydefs), elles sont signalées.
FICHIER PAR DÉFAUT
Au démarrage,
getty
cherche le fichier
/etc/conf.getty.ligne,
(ou, s'il ne le trouve pas,
/etc/conf.getty),
et, s'il le trouve, lit le contenu des lignes de la forme
NOM=valeur
Cela permet d'avoir certaines fonctionnalités de getty configurables
au démarrage, sans recompilation. Les chaînes NOM reconnues, et leurs
valeurs correspondantes, sont les suivantes :
- SYSTEM=nom
-
Positionne le nom de noeud (affiché par
@S
-- voir SUBSTITUTIONS DE L'INVITE) à
nom.
La valeur par défaut est la valeur
nom_de_noeud
retournée par la fonction
uname(3).
- VERSION=chaîne
-
Positionne la valeur affichée par le paramètre
@V
(voir SUBSTITUTIONS DE L'INVITE) à
chaîne.
Si
chaîne
commence par un caractère '/', elle est prise comme le chemin complet
d'un fichier, et
@V
représente le contenu de ce fichier. Par défaut c'est
/proc/version.
- LOGIN=nom
-
Positionne le nom du programme de connexion (login) à
nom.
Par défaut c'est
/bin/login
(voir
login(1m)).
S'il est utilisé,
nom
doit être le chemin complet du programme que
getty
doit appeler au lieu de
/bin/login.
Notez que ce programme est appelé, comme
/bin/login,
avec le nom d'utilisateur pour seul argument.
- INIT=chaîne
-
Si elle est définie,
chaîne
est une séquence attendue/envoyée qui est utilisée pour initialiser la
ligne avant que
getty
ne tente de l'utiliser. Cette chaîne a la même forme que celles
utilisées dans le fichier
L.sys
d'
uucp(1).
Pour plus de détails, voir INITIALISATION DE LIGNE. Par défaut, aucune
initialisation n'est faite.
- ISSUE=chaîne
-
Au lancement,
getty
affiche par défaut, comme bannière de connexion, le contenu du fichier
/etc/issue.
Si ISSUE est défini comme
chaîne,
cette chaîne est affichée en remplacement. Si
chaîne
débute par un '/', chaîne est considérée comme le chemin complet du
fichier à utiliser à la place de
/etc/issue.
- CLEAR=valeur
-
Si
valeur
est
NO,
getty
n'essaiera pas d'effacer l'écran avant d'afficher la bannière et
l'invite de connexion. Par défaut, il efface l'écran.
- HANGUP=valeur
-
Si
valeur
est
NO,
getty
NE raccrochera PAS la ligne pendant son lancement.
Analogue à l'argument
-h
sur la ligne de commande.
- WAITCHAR=valeur
-
Si
valeur
est
YES,
getty
attendra un simple caractère sur la ligne avant de continuer. C'est
utile pour les connexions par modem, avec des modems qui forcent le
signal CD (=porteuse détectée) systématiquement, pour empêcher getty
de négocier indéfiniment avec le modem.
- DELAY=secondes
-
Utilisé en conjonction avec
WAITCHAR,
cela ajoute un délai de
secondes
après l'acceptation du caractère, avant d'autoriser
getty
à continuer. L'utilisation des deux paramètres
WAITCHAR
et
DELAY
ont le même effet que
-rdélai
sur la ligne de commande.
Si
WAITCHAR
est donné sans
DELAY,
le résultat est le même que de mettre
-r0
sur la ligne de commande.
Par défaut, getty n'attend pas de caractère.
- TIMEOUT=nombre
-
Comme avec l'argument de ligne de commande
-t
timeout,
force
getty
à terminer si aucun nom d'utilisateur n'est accepté avant que
nombre
secondes se soient écoulées à partir de l'affichage de l'invite de
connexion. Par défaut, il attend indéfiniment.
- CONNECT=chaîne
-
Si elle est définie,
chaîne
est une séquence attendue/envoyée (comme pour INIT) pour guider
getty
dans l'établissement d'une connexion.
chaîne
peut être définie à
DEFAULT,
ce qui substituera la chaîne prédéfinie :
CONNECT\s\A\r\n
L'échappement \A marque la place où les chiffres donnant la vitesse
seront affichés. Voir CONNEXION ET CONFIGURATION AUTOMATIQUE DE LA
VITESSE pour plus de détails. Par défaut il n'y a pas de séquence de
discussion (chat).
- WAITFOR=chaîne
-
Ce paramètre est similaire à WAITCHAR, mais il définit une chaîne de
caractères attendue.
Getty
attendra la réception de
chaîne
avant d'afficher l'invite de connexion.
Il vaut mieux utiliser ce paramètre en même temps que CONNECT, comme
dans l'exemple suivant :
WAITFOR=RING
CONNECT="" ATA\r CONNECT\s\A
Cela va forcer
getty
à attendre la chaîne
RING,
puis n'attendre rien, envoyer
ATA
suivi d'un retour-chariot, puis attendre une chaîne de type
CONNECT 2400,
auquel cas,
getty
se configurera à 2400 bauds.
Par défaut,
getty
n'attend pas de chaîne de caractères.
- ALTLOCK=ligne
-
Uugetty
utilise ce paramètre pour verrouiller un deuxième périphérique, en
plus de celui auquel il est attaché. C'est prévu pour les systèmes qui
utilisent deux noms de périphérique différents pour le même port
série, par exemple /dev/tty1A et /dev/tty1a, l'un utilisant le
contrôle modem, l'autre pas. Voir la section sur UUGETTY pour plus de
détails.
Par défaut, il n'y a pas de deuxième fichier de verrouillage.
- ALTLINE=ligne
-
Getty
utilise ce paramètre pour spécifier un périphérique différent pour
l'initialisation du modem. Si l'option WAITFOR est utilisée, WAITFOR
sera exécuté aussi sur cette ligne. C'est nécessaire pour les systèmes
qui exercent le verrouillage entre deux lignes.
- RINGBACK=valeur
-
Si
valeur
vaut
YES ,
la procédure de rappel est configurée. Elle est utilisée en
conjonction avec
WAITFOR
et
CONNECT
pour négocier les appels entrants. L'action par défaut est de
connecter seulement si la ligne sonne de une à trois fois, est
raccrochée puis est rappelée dans les 60 secondes suivant le premier
appel.
MINRBTIME
et
MAXRBTIME
spécifient les durée minimale et maximale séparant les deux appels.
INTERRING
spécifie la durée maximale entre deux sonneries du même appel.
MINRINGS
et
MAXRINGS
spécifient les nombres minimum et maximum de sonneries pour le premier
appel.
- SCHED=intervalle1 intervalle2 intervalle3 ...
-
Getty
utilise cette ligne pour programmer les horaires de connexion
autorisés. Chaque intervalle est de la forme JdS:HR:MIN-JdS:HR:MIN.
JdS est le jour de la semaine (0 = Dimanche, 1 = Lundi, ... 6 =
Samedi), HR:MIN est l'horaire (heures, minutes).
Si l'heure courante est dans l'un de ces intervalles, la séquence INIT
(s'il y en a une) est envoyée et
getty
continue de tourner jusqu'à l'heure de fin. Sinon, la séquence OFF est
envoyée et getty "dort" jusqu'à la prochaine heure de démarrage.
- OFF=chaîne
-
Cette ligne est identique à la ligne INIT, sauf qu'elle est envoyée
uniquement quand la ligne est coupée (OFF) par le programmateur SCHED.
- FIDO=chaîne
-
Cette ligne spécifie le chemin du mailer FidoNet (habituellement
ifcico). Non définie par défaut. En installant un mailer FidoNet, vous
devriez aussi positionner EMSI à yes. Quand un appel entrant
FidoNet est reçu, la chaîne tsync ou yoohoo est passée au
mailer FidoNet comme unique option de ligne de commande si deux
séquences TSYNC ou YOOHOO sont reçues.
Si EMSI est positionnée à yes, la chaîne EMSI entière
(commençant au premier astérisque, et finissant au retour chariot
final -exclu-) est passée comme unique option de ligne de commande.
- EMSI=valeur
-
Si valeur=yes, intercepte les séquences FidoNet EMSI en entrée.
Le nom du fichier de configuration par défaut peut être changé en
spécifiant
-d
fichier_défaut
sur la ligne de commande. Si
fichier_défaut
commence par un slash, c'est considéré comme le chemin complet du
fichier à utiliser. Sinon, c'est supposé être un fichier régulier, et
getty
utilise le chemin
/etc/conf.defaults_file
ou
/etc/conf .defaults_file
s'il est compilé avec la directive de respect de FSSTND (FileSystem
STaNDard).
SUBSTITUTIONS D'INVITE
Quand
getty
affiche
la bannière de connexion (habituellement
/etc/issue),
ou
l'invite de connexion,
il reconnaît plusieurs caractères d'échappement. Quand
l'un de ces caractères est trouvé, sa valeur est substitué dans la
sortie produite par
getty.
Les caractères d'échappement reconnus sont :
- \\
-
Backslash (\).
- \b
-
Effacement-arrière (Backspace) (^H).
- \c
-
Placé à la fin d'une chaîne, empêche le passage à la ligne
suivante après la chaîne.
- \f
-
Saut de page (Formfeed) (^L).
- \n
-
Saut de ligne (^J).
- \r
-
Retour Chariot (^M).
- \s
-
Une espace simple (' ').
- \t
-
Tabulation horizontale (^I).
- \nnn
-
Affiche le caractère ASCII dont la valeur décimale est
nnn.
Si
nnn
commence par 0, la valeur est lue en octal. Si elle commence par 0x,
elle est lue en hexadécimal.
De plus, un simple backslash à la fin d'une ligne ignore le saut de
ligne adjacent, permettant la continuation des lignes.
Certains paramètres
@car
sont également reconnus. Ces paramètres, et les valeurs qui leur sont
substituées, sont :
- @B
-
Le débit courant, en bauds (évalué au moment où
@B
est vu).
- @D
-
La date courante, format MM/JJ/AA.
- @L
-
La
ligne
à laquelle
getty
est attaché.
- @S
-
Le nom de noeud système.
- @T
-
L'heure courante, format HH:MM:SS (24 heures) .
- @U
-
Le nombre d'utilisateurs connectés. C'est le nombre d'entrées dans le
fichier
/etc/utmp
qui ont un champ ut_name non-nul.
- @V
-
La valeur de
VERSION,
telle que donnée dans le fichier de configuration par défaut.
Pour afficher un simple caractère '@', utilisez '\@' ou
INITIALISATION DE LA LIGNE
L'un des gros avantages de
getty
(selon l'auteur, du moins) est sa capacité à initialiser sa ligne
avant de s'en servir. C'est certainement beaucoup plus utile avec des
lignes modem, pas des terminaux, même si l'initialisation de terminaux
n'est pas complètement hors-sujet.
L'initialisation de la ligne est effectuée juste après son ouverture,
et avant la gestion des options WAITCHAR et WAITFOR.
L'initialisation est effectuée en plaçant une ligne
INIT=chaîne
dans le fichier de configuration par défaut.
Chaîne
est une série d'un ou plusieurs champs de la forme
attendu [ envoyé [ attendu [ envoyé ] ] ... ]
Cela ressemble aux séquences attendues/envoyées utilisées dans le
fichier UUCP
L.sys,
avec les exceptions suivantes :
AUCUN retour chariot n'est ajouté automatiquement aux séquences
envoyées. Si vous voulez envoyer un Retour Chariot, il faut le montrer
explicitement avec '\r'.
Getty
supporte des sous-champs dans le champ 'attendu', comme UUCO, sous la
forme
attendu[-envoyé-attendu]...
Tous les caractères d'échappement (ceux commençant par '\'
listés dans la section SUBSTITUTIONS D'INVITE sont valides dans les
champs attendus et envoyés. De plus, les caractères d'échappement
suivants sont reconnus :
- \p
-
insère une pause d'une seconde.
- \d
-
insère une pause de deux secondes.
- \K
-
envoie un Arrêt (Break) de 0,25 s (interruption de porteuse).
- \Tnnn
-
Passe le timeout par défaut (habituellement 30 s) à la valeur indiquée
par la valeur
nnn.
La valeur
nnn
peut être en décimal, octal ou hexadécimal ; voir l'usage de
\nnn dans SUBSTITIONS D'INVITE.
Notez que pour ces caractères d'échappement supplémentaires, aucun
caractère réel n'est envoyé.
CONNEXION ET RÉGLAGE AUTOMATIQUE DU DÉBIT
Getty
entreprend une séquence de "discussion" (chat) pour établir une
connexion propre. Le meilleur usage de cette caractéristique est de
regarder le message
CONNECT
envoyé par le modem et de régler le débit de ligne à la valeur donnée
dans ce message (par exemple CONNECT 2400).
La [syntaxe ? : NdT] du script de connexion chat est exactement la
même que celle du script INIT (voir INITIALISATION DE LIGNE), avec en
plus :
- \A
-
Marque la place où le débit (en bauds) apparaîtra. Cette marque
recouvrira tous les chiffres 0-9 trouvés à cet endroit du script,
passera le débit à cette valeur si c'est possible.
Pour cela, le réglage automatique du débit (autobauding) est
"mis en route" en plaçant la marque
\A
dans le script chat. Par exemple, la définition :
CONNECT=CONNECT\s\A
reconnaîtra la chaîne
CONNECT 1200
et forcera
getty
à passer son débit à 1200 bauds, en 3 étapes :
- 1.
-
Après avoir reconnu la valeur 1200,
getty
essaiera de trouver une entrée étiquetée
1200
dans le fichier
gettydefs.
Si une entrée correspondante est trouvée, les valeurs indiquées sont
utilisées. Si aucune entrée ne correspond, alors
- 2.
-
Les valeurs gettydefs courantes sont modifiées pour utiliser le débit
reconnu (par exemple 1200). Malgré tout, si la valeur reconnue est
invalide, alors
- 3.
-
Getty
envoie (log) un message d'avertissement et reprend une exécution
normale. Cela permet à la pratique de la bascule entre des entrées
liées du fichier gettydefs de fonctionner normalement [même si les
premiers débits ne sont pas acceptés, NdT].
UUGETTY
Uugetty
a un comportement identique à
getty,
excepté que
uugetty
est prévu pour créer et utiliser les fichiers de verrou utilisés par
la famille UUCP
(uucp(1),
cu(1)
et autres). Cela empêche plusieurs processus d'utiliser la même ligne
tty.
Quand
uugetty
démarre, s'il voit un fichier de verrou sur la ligne qu'il avait
l'intention d'utiliser, il utilise le PID du fichier verrou pour
vérifier si un processus actif tient le verrou. Si ce n'est pas le
cas,
uugetty
supprime le fichier verrou et continue. Si un processus valide est
trouvé,
uugetty
dort jusqu'à ce que le processus déverrouille la ligne, puis il se
termine, forçant
init(1m)
à relancer (spawn) un nouvel
uugetty.
Une fois qu'il n'y a plus de processus en conflit,
uugetty
récupère la ligne en créant son propre fichier de verrou avant
d'afficher l'invite de connexion.
Uugetty
ne verrouille normalement que la ligne qu'il utilise. Sur les systèmes
comportant deux noms de périphérique correspondant au même port (par
exemple, quand un périphérique utilise le contrôle modem, et pas
l'autre), placez une ligne de la forme
ALTLOCK=ligne
ligne est le fichier par défaut. Par exemple, si
uugetty
est sur
/dev/tty1a,
et vous voulez qu'il verrouille aussi
/dev/tty1A,
utilisez la ligne
ALTLOCK=tty1A
dans le fichier de configuration par défaut.
Pendant qu'il attend une porteuse,
Uugetty
vérifie les fichiers de verrou toutes les 30 secondes. Si des verrous
sont trouvés, uugetty se termine et init relance un autre
getty.
Cela permet au modem d'être réinitialisé après qu'un autre processus
l'a utilisé.
FICHIERS
- /etc/conf.getty[.ligne]
-
Contient la configuration de démarrage. Noter que
uugetty
utilise /etc/conf.uugetty[.ligne].
- /etc/gettydefs
-
Contient les débits et paramètres tty à utiliser.
- /etc/issue
-
La bannière de connexion par défaut.
- /bin/login
-
Le programme de connexion appelé par défaut une fois qu'un nom
d'utilisateur est saisi.
VOIR AUSSI
init(1m),
login(1m),
uucp(1),
ioctl(2),
uname(3),
gettydefs(5),
utmp(5),
termio(7),
mgetty(8) [Ndt : plus compact, aussi efficace]
AUTEURS
Getty_ps dans sa forme courante :
Kris Gleason <gleasokr@boulder.colorado.edu>
Le getty_ps d'origine :
Paul Sutcliffe, Jr. <paul@devon.lns.pa.us>
UUCP: ...!rutgers!devon!paul
Routines de réglage automatique du débit adaptées du code soumis par
Mark Keating <...!utzoo!censor!markk>
TRADUCTION
Guillaume Allègre, <Guillaume.Allegre@mail.dotcom.fr>, avril 1999.
AVERTISSEMENT SUR LA TRADUCTION
Il est possible que cette traduction soit imparfaite ou périmée. En cas de
doute, veuillez vous reporter au document original en langue anglaise fourni
avec le programme.
Index
- NOM
-
- SYNOPSIS
-
- DESCRIPTION
-
- FICHIER PAR DÉFAUT
-
- SUBSTITUTIONS D'INVITE
-
- INITIALISATION DE LA LIGNE
-
- CONNEXION ET RÉGLAGE AUTOMATIQUE DU DÉBIT
-
- UUGETTY
-
- FICHIERS
-
- VOIR AUSSI
-
- AUTEURS
-
- TRADUCTION
-
- AVERTISSEMENT SUR LA TRADUCTION
-
This document was created by
man2html,
using the manual pages.
Time: 20:41:56 GMT, July 10, 2005