agetty – getty alternatif pour Linux
agetty [options] port [taux_baud ...]
[term]
agetty ouvre un port de terminal, demande un nom
d'utilisateur, puis appelle la commande /bin/login. Il est
normalement appelé par init(8).
agetty a plusieurs fonctionnalités non
normalisées qui sont utiles pour les lignes série et
modem.
- •
- Adapter la configuration du terminal aux bits de parité et aux
caractères supprimer, tuer, fin de ligne et majuscules lors de la
lecture de l'identifiant de connexion. Le programme peut gérer les
caractères 7 bits avec une parité paire, impaire,
aucune ou parité 0 et les caractères 8 bits sans
parité. Les caractères spéciaux suivants sont
reconnus : « Ctrl-U » (tuer) ;
suppression et espace arrière (supprimer) ; retour chariot
et changement de ligne (fin de ligne). Consultez également les
options --erase-chars et --kill-chars.
- •
- Option pour trouver la vitesse en baud des messages CONNECT produits par
les modems Hayes™ ou compatibles.
- •
- Option pour ne pas raccrocher quand il y a déjà une ligne
ouverte (utile pour les applications avec rappel).
- •
- Option pour ne pas afficher le contenu du fichier /etc/issue.
- •
- Option pour afficher un autre fichier ou répertoire issue
à la place de /etc/issue ou /etc/issue.d.
- •
- Option pour ne pas demander de nom d'utilisateur.
- •
- Option pour appeler un programme de connexion non standard au lieu de
/bin/login.
- •
- Option pour activer le contrôle matériel de flux.
- •
- Option pour forcer la ligne à être locale sans
nécessité de détection de porteuse.
Ce programme n'utilise pas les fichiers /etc/gettydefs
(Système V) ou /etc/gettytab (SunOS 4).
- port
- Un nom de chemin relatif au répertoire /dev. Si un
« - » est utilisé, agetty
suppose que son entrée standard est déjà
connectée à un port de terminal et que la connexion à
un utilisateur distant est déjà établie.
Sous Système V, un paramètre port
avec la valeur « - » doit être
précédé de
« -- ».
- taux_baud,
...
- Une liste de vitesses en baud séparées par des virgules.
Chaque fois que agetty reçoit un caractère BREAK, il
avance dans la liste qui sera considérée comme une liste
circulaire.
Les vitesses devraient être indiquées en ordre
décroissant, de telle sorte que l’octet NULL final
(Ctrl-@) puisse être utilisé pour changer de vitesse.
Cet argument est facultatif et inutile pour les terminaux
virtuels.
La valeur par défaut pour les terminaux
série est de conserver la vitesse actuelle (consultez
--keep-baud) et en cas d’insuccès, la valeur par
défaut « 9600 ».
- term
- La valeur à utiliser pour la variable d'environnement TERM.
Cela surcharge toute valeur positionnée par init(8) et est
héritée par la connexion et l'interpréteur de
commande.
La valeur par défaut est
« vt100 » ou
« linux » pour Linux sur un terminal virtuel
ou « hurd » pour le GNU Hurd sur un
terminal virtuel.
- -8, --8bits
- Supposer que le terminal gère les caractères 8 bits,
désactiver de ce fait la détection de parité.
- -a, --autologin
nom_utilisateur
- Connecter automatiquement l’utilisateur indiqué sans
demander un identifiant ou un mot de passe. Utiliser cette option fait que
l’option et l’argument -f username sont
ajoutés à la ligne de commande de /bin/login.
Consultez --login-options qui peut être utilisée pour
modifier le comportement de cette option.
Remarquez que --autologin peut affecter la façon
dont agetty initialise une ligne série, car lors
d’une connexion automatique agetty ne lit pas à
partir de la ligne et n’a aucune opportunité
d’optimisation des réglages de la ligne.
- -c, --noreset
- Ne pas réinitialiser les cflags du terminal (modes de
contrôle). Consultez termios(3) pour plus de
précisions.
- -E, --remote
- Classiquement, la commande login(1) est fournie avec un non
d’hôte distant lorsqu’elle est appelée par
quelque chose comme telnetd(8). Cette option permet à
agetty de passer ce qu’il utilise comme nom
d’hôte à login(1) pour une utilisation dans
utmp(5). Consultez --host, login(1) et
utmp(5).
- Si une option --host hôte_factice est donnée,
alors une option -h hôte_factice est ajoutée
à la ligne de commande /bin/login.
- Si l’option --nohostname est fournie, alors une option
-H est ajoutée à la ligne de commande
/bin/login.
- Consultez --login-options.
- -f, --issue-file
chemin
- Indiquer une liste délimitée par
« : » de fichiers et répertoires
à afficher au lieu de /etc/issue (ou autre). Tous les
fichiers et répertoires sont affichés, les fichiers
manquants ou vides sont ignorés silencieusement. Si le chemin
indiqué est un répertoire, alors tous ses fichiers avec
l’extension .issue sont affichés triés selon
les versions. Cela permet d’afficher des messages
personnalisés sur des terminaux différents. L’option
--noissue écrasera cette option.
- --show-issue
- Afficher le fichier issue en cours (ou autre) sur le terminal
utilisé et quitter. Cette option est à utiliser pour
examiner le réglage en cours, elle n’est pas prévue
pour tout autre but. Remarquez que la sortie peut utiliser une information
par défaut ou incomplète, car la sortie correcte
dépend du terminal et de la ligne de commande de
agetty.
- -h,
--flow-control
- Activer le contrôle matériel de flux (RTS/CTS).
L'application est libre de désactiver le contrôle logiciel
de flux (XON/XOFF) quand elle le juge opportun.
- -H, --host
hôte_factice
- Écrire l'hôte de connexion hôte_factice
indiqué dans le fichier utmp. Normalement, aucun hôte
de connexion n'est fourni, puisque agetty est utilisé pour
les connexions filaires locales et les terminaux du système.
Cependant, cette option peut être utile pour identifier les
concentrateurs de terminaux et matériels similaires.
- -i, --noissue
- Ne pas afficher le contenu de /etc/issue (ou autre) avant
d'écrire l'invite de connexion. Les terminaux ou le matériel
de communication peuvent ne pas fonctionner normalement lorsqu'ils
reçoivent beaucoup de texte à une mauvaise vitesse ;
les scripts de connexion peuvent échouer si l'invite de connexion
est précédée par beaucoup trop de texte.
- -I, --init-string
chaîne_initiale
- Définir une chaîne_initiale à envoyer au
terminal ou au modem avant d'envoyer des données utiles. Cela peut
être utilisé pour initialiser un modem. Les
caractères non imprimables peuvent être envoyés en
utilisant leur code octal précédé d'une barre oblique
inversée (\). Par exemple, pour envoyer le caractère de
changement de ligne (ASCII 10, dont le code octal est 012), il faut
envoyer « \012 ».
- -J, --noclear
- Ne pas effacer l'écran avant de demander l'identifiant de
connexion. Par défaut, l'écran est effacé.
- -l, --login-program
programme_connexion
- Appeler le programme de connexion programme_connexion à la
place de /bin/login. Cela permet d'utiliser un programme de
connexion non standard. Un tel programme, par exemple, peut demander un
mot de passe lors de l'établissement de la connexion ou utiliser un
fichier de mot de passe différent. Consultez
--login-options.
- -L,
--local-line[=mode]
- Contrôler l’attribut de ligne CLOCAL. L’argument
facultatif mode est auto, always ou never. En
l'absence d’argument mode, la valeur par défaut est
always. Si l’option --local-line n’est pas
donnée du tout, la valeur par défaut est auto.
- always
- Le mode always force la ligne à être une ligne
locale sans détection de porteuse. C'est utile pour un terminal
connecté localement dont la ligne série n’utilise pas
le signal « détection de
porteuse ».
- never
- Le mode never efface explicitement l’attribut CLOCAL
de la configuration de la ligne et le signal
« détection de porteuse » est attendu
sur la ligne.
- auto
- La valeur par défaut pour agetty. Cela ne modifie pas la
configuration CLOCAL et suit la configuration activée par le
noyau.
- -m,
--extract-baud
- Essayer d'extraire la vitesse depuis le message d'état CONNECT
produit par les modems compatibles Hayes™. Ces messages
d'état sont de la forme suivante :
« <bruit><vitesse><bruit> ».
agetty suppose que le modem envoie les messages d'état
à la même vitesse que celle indiquée (la
première) par taux_baud sur la ligne de commande.
Puisque la fonctionnalité --extract-baud peut
échouer sur des systèmes lourdement chargés, vous
devriez activer le traitement de BREAK en énumérant toutes
les vitesses attendues sur la ligne de commande.
- --list-speeds
- Afficher les vitesses prises en charge. Elles sont
déterminées au moment de la compilation.
- -n,
--skip-login
- Ne pas demander d'identifiant de connexion à l'utilisateur. Cela
peut être utilisé avec l'option --login-program lors
d'une procédure de connexion non standard comme les systèmes
BBS. Remarquez qu'avec l'option --skip-login, agetty ne
reçoit pas de saisie de l'utilisateur qui se connecte et donc n'est
pas capable de détecter la parité, la taille des
caractères ni le processus de nouvelle ligne de la connexion. La
configuration par défaut est : parité 0,
caractères 7 bits et le caractère fin de ligne est le
retour chariot RC en ASCII (13). Assurez vous que le programme
lancé par agetty (en général,
/bin/login) est exécuté avec les droits du
superutilisateur.
- -N,
--nonewline
- Ne pas ajouter de changement ligne avant d'écrire
/etc/issue.
- -o, --login-options
"options_connexion"
- Options et arguments passés à login(1), où \u
est remplacé par le nom de connexion. Par exemple :
-
- --login-options '-h darkstar -- \u'
Consultez --autologin, --login-program et
--remote.
Veuillez consulter l'AVIS DE SÉCURITÉ
ci-dessous si vous avez l'intention d'utiliser cette option.
- -p,
--login-pause
- Attendre une action sur une touche avant de basculer vers l'invite de
connexion. Cela peut être combiné avec --autologin
pour économiser de la mémoire avec les interpréteurs
de commandes lents à relancer.
- -r, --chroot
répertoire
- Modifier la racine vers le répertoire indiqué.
- -R, --hangup
- Appeler vhangup() pour faire un raccrochage virtuel du terminal
indiqué.
- -s,
--keep-baud
- Essayer de conserver la vitesse existante. Les vitesses reçues sur
la ligne de commande sont utilisées quand agetty
reçoit un caractère BREAK. Si d’autres vitesses sont
indiquées, alors la vitesse originale est aussi enregistrée
à la fin de la liste des vitesses désirées. Cela peut
être utilisé pour retourner à la vitesse originale
après des BREAK inattendus.
- -t, --timeout
délai
- Quitter si aucun nom d'utilisateur n'a pu être lu pendant le
délai exprimé en seconde. Cette option ne devrait pas
être utilisée pour les lignes filaires de terminaux.
- -U,
--detect-case
- Activer la détection des terminaux à caractères
majuscules seuls. Cela ne détectera qu'un identifiant de connexion
ne possédant que des caractères majuscules et activera des
opérations de conversions de casse majuscules vers minuscules.
Cette option ne gère aucun caractère Unicode.
- -w, --wait-cr
- Attendre que l'utilisateur ou le modem envoient un caractère retour
à la ligne ou nouvelle ligne avant d'envoyer le fichier
/etc/issue (ou autres) et l'invite de connexion. Cela est
très utile lors de connexions avec l'option
--init-string.
- --nohints
- Ne pas afficher de conseils sur le verrouillage numérique ou
majuscules ni sur l’arrêt de défilement.
- --nohostname
- Par défaut, le nom d'hôte sera affiché. En activant
cette option, aucun nom d'hôte ne sera montré.
- --long-hostname
- Par défaut, le nom d'hôte n'est affiché que jusqu'au
premier point. En activant cette option, le nom d'hôte pleinement
qualifié par gethostname(3P), ou (si non trouvé) par
getaddrinfo(3), est montré.
- --erase-chars
chaîne
- Cette option indique des caractères supplémentaires à
interpréter comme une espace arrière
(« ignorer le caractère
précédent ») lorsque l’utilisateur
saisit l’identifiant de connexion. Le caractère
supplémentaire d’« effacement »
par défaut était « # », mais
depuis util-linux 2.23, aucun caractère
supplémentaire d’effacement n’est activé par
défaut.
- --kill-chars
chaîne
- Cette option indique des caractères supplémentaires à
interpréter pour tuer (« ignorer tous les
caractères précédents ») lorsque
l’utilisateur saisit l’identifiant de connexion. Le
caractère supplémentaire « pour
tuer » par défaut était
« @ », mais depuis util-linux 2.23,
aucun caractère supplémentaire pour tuer n’est
activé par défaut.
- --chdir
répertoire
- Changer de répertoire avant la connexion.
- --delay
nombre
- Temps de sommeil, en seconde, avant d’ouvrir le tty.
- --nice
nombre
- Exécuter la connexion avec cette priorité.
- --reload
- Demander à toutes les instances agetty en cours de recharger
et mettre à jour leurs invites de commande affichées, si
l’utilisateur n’a pas encore commencé à se
connecter. Après cela, la commande quittera. Cette
fonctionnalité pourrait ne pas être prise en charge sur les
systèmes sans inotify(7) de Linux.
- --version
- Afficher le nom et la version du logiciel et quitter.
- --help
- Afficher l’aide-mémoire puis quitter.
Cette section présente des exemples pour le champ processus
d'une entrée dans le fichier /etc/inittab. Vous devrez faire
précéder les autres champs par les valeurs appropriées.
Consultez inittab(5) pour plus de précisions.
Pour une ligne câblée ou une console
tty :
/sbin/agetty 9600 ttyS1
Pour un terminal connecté directement sans câblage
avec signal « détection de porteuse ».
Utilisez ceci si le terminal se met en veille au lieu de demander un mot de
passe :
/sbin/agetty --local-line 9600 ttyS1 vt100
Pour une ligne avec un vieux modem acceptant les vitesses de 9600,
2400 et 1200 bauds :
/sbin/agetty --extract-baud --timeout 60 ttyS1
9600,2400,1200
Pour un modem Hayes avec une vitesse fixe de
115 200 bauds (la chaîne d'initialisation de l'exemple
désactive l'écho du modem et les codes de retour, fait que le
signal DCD du modem/ordinateur suive le signal DCD du modem distant, fait
que la disparition du signal DTR provoque une déconnexion et active
l'autoréponse après une sonnerie) :
/sbin/agetty --wait-cr --init-string
'ATE0Q1&D2&C1S0=1 15' 115200 ttyS1
Si vous utilisez les options --login-program et
--login-options, soyez conscient qu'un utilisateur malveillant
pourrait essayer d'entrer des identifiants avec des options
intégrées, qui seraient alors passées au programme
login utilisé. agetty vérifie la présence
d'un - initial et s'assure que l'identifiant est passé comme
un paramètre (de telle sorte que les espaces incorporées ne
créent pas encore un autre paramètre), mais suivant la
façon dont le binaire login analyse la ligne de commande, cela
risque d'être insuffisant. Vérifiez que le programme
login utilisé ne peut pas être abusé de cette
façon.
Certains programmes utilisent -- pour indiquer que la suite
de la ligne de commande ne devrait pas être interprétée
en tant qu'options. Utilisez cette fonctionnalité si elle est
disponible en passant « -- » avant que le nom
d’utilisateur ne soit passé par \u.
Le fichier issue par défaut est /etc/issue.
Si le fichier existe, alors agetty recherche aussi pour un
répertoire /etc/issue.d. Le répertoire est une
extension facultative au fichier issue par défaut et le
contenu du répertoire est écrit après le contenu de
/etc/issue. Si /etc/issue n’existe pas, alors le
répertoire est ignoré. Tous les fichiers avec une extension
.issue du répertoire sont écrits triés selon les
versions. Le répertoire peut être utilisé pour
gérer indépendamment les messages de parties tierces dans le
fichier principal /etc/issue du système.
Depuis la version 2.35 des emplacements
supplémentaires pour des fichiers et répertoires issue
sont gérés. Si le fichier par défaut /etc/issue
n’existe pas, alors agetty recherche /run/issue et
/run/issue.d, ensuite /usr/lib/issue et
/usr/lib/issue.d. Le répertoire /etc est attendu pour
une configuration spécifique à l’hôte, le
répertoire /run est attendu pour ce qui est
généré et le fichier /usr/lib pour la
configuration statique de la distribution.
Le chemin par défaut peut être écrasé
avec l’option --issue-file. Dans ce cas, le chemin
précisé doit être un fichier ou un répertoire et
tous les emplacements par défaut de fichier ou répertoire sont
ignorés.
La fonctionnalité du fichier issue peut être
désactivée complètement avec l’option
--noissue.
Il est possible d’examiner le fichier issue en cours
avec agetty --show-issue sur le terminal en cours.
Les fichiers issue peuvent contenir certains codes
d’échappement afin d'afficher le nom du système, la
date, l’heure, etc. Tous les codes d’échappement
sont formés d'une barre oblique inversée (\)
immédiatement suivie par l'une des caractères suivants.
- 4 ou 4{interface}
- Insérer l’adresse IPv4 de l’interface réseau
indiquée (par exemple \4{eth0}). Si l’argument
interface n’est pas indiqué, alors
sélectionner la première interface complètement
configurée (activée, non boucle locale, en fonctionnement).
Si aucune interface configurée n’est trouvée, se
replier sur l’adresse IP du nom d’hôte de la
machine.
- 6 ou 6{interface}
- Comme \4, mais pour l’IPv6.
- b
- Insérer la vitesse en baud de la ligne actuelle.
- d
- Insérer la date actuelle.
- e ou
e{nom}
- Transformer le nom lisible avec une séquence
d’échappement et l’insérer (par exemple,
\e{red}Alert text.\e{reset}). Si l’argument nom n’est
pas indiqué, alors insérer \033. Les noms actuellement
gérés sont black, blink, blue,
bold, brown, cyan, darkgray, gray,
green, halfbright, lightblue, lightcyan,
lightgray, lightgreen, lightmagenta, lightred,
magenta, red, reset, reverse, yellow et
white. Tous les noms inconnus sont ignorés
silencieusement.
- s
- Insérer le nom du système (le nom du système
d'exploitation). Identique à uname -s. Consultez
également le code d’échappement \S.
- S ou
S{VARIABLE}
- Insérer la donnée VARIABLE de /etc/os-release.
Si le fichier n’existe pas, /usr/lib/os-release est alors
utilisé. Si l’argument VARIABLE n’est pas
indiqué, alors utiliser PRETTY_NAME du fichier ou le nom du
système (consultez \s). Ce code d’échappement
permet de garder les /etc/issue de la distribution et de la
publication indépendants. Remarquez que \S{ANSI_COLOR} est
convertie en séquence réelle d’échappement du
terminal.
- l
- Insérer le nom de la ligne tty actuelle.
- m
- Insérer l'identifiant de l'architecture de la machine. Identique
à uname -m.
- n
- Insérer le nom de nœud de la machine, aussi appelé
nom d'hôte. Identique à uname -n.
- o
- Insérer le nom de domaine NIS de la machine. Identique à
hostname -d.
- O
- Insérer le nom de domaine DNS de la machine.
- r
- Insérer le numéro de version du système
d'exploitation. Identique à uname -r.
- t
- Insérer l'heure actuelle.
- u
- Insérer le nombre d'utilisateurs actuellement
connectés.
- U
- Insérer la chaîne « 1
utilisateur » ou « n
utilisateurs » où n est le nombre
d'utilisateurs actuellement connectés.
- v
- Insérer la version du système d'exploitation, par exemple sa
date de construction, etc.
Par exemple, si le fichier /etc/issue contient :
Voici \n.\o (\s \m \r) \t
il pourrait afficher :
Voici thingol.orcan.dk (Linux i386 1.1.9) 18:29:30
- /var/run/utmp
- fichier d’état du système
- /etc/issue
- affichage avant l’invite de connexion
- /etc/os-release /usr/lib/os-release
- données d’identification du système
d'exploitation
- /dev/console
- rapports de problème (si syslog(3) n’est pas
utilisée)
- /etc/inittab
- fichier de configuration d’init(8) pour le démon init
de type SysV
La détection de la vitesse de connexion (l'option
--extract-baud) nécessite que agetty soit
exécuté dès le début de l'appel réseau
(dans les 30 ms pour un modem communiquant à
2400 bauds). Pour être robuste, utilisez toujours l'option
--extract-baud avec comme argument de ligne de commande
différentes vitesses, ainsi le traitement de BREAK est
activé.
Le texte du fichier /etc/issue (ou d'un autre fichier) et
l'invite de connexion sont toujours affichés avec des
caractères 7 bits et la parité 0.
La fonctionnalité de détection de la vitesse
(l'option --extract-baud) nécessite que le modem envoie son
message d'état après avoir mis à un état
haut la ligne DCD.
Suivant la façon dont le programme a été
configuré, tous les diagnostics sont dirigés vers le
périphérique de console ou signalés par le service
syslog(3). Des messages d'erreur sont produits si le paramètre
port ne précise pas un périphérique de terminal,
s'il n'y a pas d'entrée utmp pour le processus actuel
(Système V uniquement), etc.
Werner Fink
Karel Zak
L’agetty d’origine pour les terminaux
série a été écrit par W.Z. Venema
<wietse@wzv.win.tue.nl> et porté pour Linux par Peter
Orbaek <poe@daimi.aau.dk>.
La commande agetty fait partie du paquet util-linux, elle
est disponible sur
<https://www.kernel.org/pub/linux/utils/util-linux>.
La traduction française de cette page de manuel a
été créée par Christophe Blaess
<ccb@club-internet.fr>, Michel Quercia <quercia AT cal DOT enst DOT
fr>, Thierry Vignaud <tvignaud@mandriva.com>,
Frédéric Delanoy <delanoy_f@yahoo.com>, Thierry Vignaud
<tvignaud@mandriva.com>, Christophe Sauthier
<christophe@sauthier.com>, Sébastien Blanchet,
Jérôme Perzyna <jperzyna@yahoo.fr>, Aymeric Nys
<aymeric AT nnx POINT com>, Alain Portal
<aportal@univ-montp2.fr>, Thomas Huriaux
<thomas.huriaux@gmail.com>, Yves Rütschlé
<l10n@rutschle.net>, Jean-Luc Coulon (f5ibh)
<jean-luc.coulon@wanadoo.fr>, Julien Cristau
<jcristau@debian.org>, Philippe Piette
<foudre-blanche@skynet.be>, Jean-Baka Domelevo-Entfellner
<domelevo@gmail.com>, Nicolas Haller <nicolas@boiteameuh.org>,
Sylvain Archenault <sylvain.archenault@laposte.net>, Valéry
Perrin <valery.perrin.debian@free.fr>, Jade Alglave
<jade.alglave@ens-lyon.org>, Nicolas François
<nicolas.francois@centraliens.net>, Alexandre Kuoch
<alex.kuoch@gmail.com>, Lyes Zemmouche <iliaas@hotmail.fr>,
Florentin Duneau <fduneau@gmail.com>, Alexandre Normand
<aj.normand@free.fr>, David Prévot <david@tilapin.org> et
Jean-Paul Guillonneau <guillonneau.jeanpaul@free.fr>
Cette traduction est une documentation libre ; veuillez
vous reporter à la
GNU General
Public License version 3 concernant les conditions de copie et de
distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.
Si vous découvrez un bogue dans la traduction de cette page
de manuel, veuillez envoyer un message à
debian-l10n-french@lists.debian.org.