getty (Français) - ArchWiki

Jump to content

État de la traduction: Cet article est la version francophone de getty. Date de la dernière traduction: 2022-10-04. Vous pouvez aider à synchroniser la traduction s'il y a eu des changements dans la version anglaise.

Related articles

- Display manager (Français)

Un «getty» est une façon générale de parler d'un programme qui gère un terminal et la ligne à laquelle il est connecté. Sa principale utilité est de protéger le système des accès non-autorisés.

Généralement, un processus getty est démarré à la demande par systemd et ne gère qu'une seule ligne.

Note: Vous pourriez être intéressé par la lecture de la page console série.

## Installation

`agetty` est le getty par défaut sous Arch Linux, il fait partie de util-linux.

Parmi les alternatives:

- mingetty — Un getty minimaliste qui prends en charge la connexion automatique.

  mingettyAUR || mingettyAUR

- mgetty — Un programme capable de gérer tous les différents aspects d'une connexion par un modem sur les Unix modernes.

  http://mgetty.greenie.net/ || mgettyAUR

## Trucs et astuces

### Effet d'escalier

agetty modifie les paramètres du TTY en attendant une connexion afin que les nouvelles lignes ne soient pas traduites en CR-LF. Cela a tendance à provoquer un "effet d'escalier" pour les messages imprimés sur la console.

C'est totalement inoffensif, mais dans le cas où il persiste une fois connecté, vous pouvez corriger ce comportement avec :

    $ stty onlcr

Voir cette discussion sur les forums à ce sujet.

### Ajouter des consoles virtuelles

Agetty gère les consoles virtuelles et six de ces consoles virtuelles sont fournies par défaut dans Arch Linux. Elles sont généralement accessibles en appuyant sur `Ctrl+Alt+F1` à `Ctrl+Alt+F6`.

Ouvrez le fichier `/etc/systemd/logind.conf` et ajustez l'option `NAutoVTs=6` au nombre de terminaux que vous souhaitez.

Si besoin, démarrez temporairement un service `getty@ttyN.service` directement.

### Connexion automatique à la console

La configuration repose sur les fichiers de substitution de `systemd` pour changer les paramètres fournis par défaut à `agetty`.

Elle diffère entre les consoles virtuelles et série. Dans la majorité des cas, la connexion se fait sur une console virtuelle, dont le nom est `ttyN`, où `N` est un entier. La configuration pour une console série est légèrement différente, et le nom de la console sera `ttySN`, `N` étant un nombre.

Astuce: Vous pouvez utiliser la fonction de connexion automatique de greetd. Il ne se connectera pas automatiquement une seconde fois si la session initiale se termine, mais affichera un écran de connexion à la place.

#### Console virtuelle

Créez un fichier de substitution `getty@tty1` avec le contenu suivant:

    /etc/systemd/system/getty@tty1.service.d/autologin.conf

    [Service]
    ExecStart=
    ExecStart=-/sbin/agetty -o '-p -f -- \\u' --noclear --autologin username %I $TERM

Astuce:

- L'option `Type=idle` présente dans le `getty@.service` par défaut retardera le démarrage du service jusqu'à ce que toutes les t (demandes de changement d'état adressées aux unités) soient terminés afin d'éviter de polluer l'invite de connexion avec des messages de démarrage. Lorsque X est démarré automatiquement, il peut être utile de démarrer `getty@tty1.service` immédiatement en ajoutant `Type=simple` dans le fichier de substitution. Le système init et startx peuvent être réduit au silence pour éviter l'entrelacement de leurs messages pendant le démarrage.
- L'exemple ci-dessus fera en sorte que le type de session de loginctl soit défini sur `tty`. Si cela est souhaitable (par exemple si vous démarrez X automatiquement), il est possible de définir manuellement le type de session à `wayland` ou `x11` en ajoutant `Environment=XDG_SESSION_TYPE=x11` ou `Environment=XDG_SESSION_TYPE=wayland` dans ce fichier.

Si vous ne souhaitez pas une connexion automatique complète, mais que vous ne voulez pas non plus taper votre nom d'utilisateur, consultez #Ne demander que le mot de passe pour la connexion d'un utilisateur par défaut dans une console virtuelle.

Si vous voulez utiliser un tty autre que `tty1`, voyez la FAQ de systemd en anglais.

#### Console série

Créez un fichier de substitution:

    /etc/systemd/system/serial-getty@ttyS0.service.d/autologin.conf

    [Service]
    ExecStart=
    ExecStart=-/sbin/agetty -o '-p -f -- \\u' --keep-baud --autologin username 115200,57600,38400,9600 - $TERM

#### Console nspawn

Pour configurer la connexion automatique pour un conteneur systemd, surchargez `console-getty.service` en créant un fichier de substitution:

    /etc/systemd/system/console-getty.service.d/autologin.conf

    [Service]
    ExecStart=
    ExecStart=-/sbin/agetty -o '-p -f -- \\u' --noclear --keep-baud --autologin username - 115200,38400,9600 $TERM

Si `machinectl login my-container` est la méthode utilisée pour accéder au conteneur, modifiez aussi `container-getty@.service`, l'unité qui gère les pseudo ttys `pts/[0-9]`:

    /etc/systemd/system/container-getty@.service.d/autologin.conf

    [Service]
    ExecStart=
    ExecStart=-/sbin/agetty -o '-p -f -- \\u' --noclear --keep-baud --autologin username - 115200,38400,9600 $TERM

### Ne demander que le mot de passe pour la connexion d'un utilisateur par défaut dans une console virtuelle

Getty peut être utilisé pour se connecter depuis une console virtuelle au moyen d'un utilisateur par défaut. On entre le mot de passe sans avoir préalablement entré le nom d'utilisateur. Par exemple, pour reclamer le mot de passe d'un utilisateur `username` sur `tty1`:

    /etc/systemd/system/getty@tty1.service.d/skip-username.conf

    [Service]
    ExecStart=
    ExecStart=-/sbin/agetty -o '-p -- username' --noclear --skip-login - $TERM

et ensuite activez `getty@tty1`

### Garder les messages de démarrage sur tty1

Par défaut, service `getty@tty1` est activé sur Arch. Le fichier de service passe déjà `--noclear`, ce qui empêche agetty d'effacer l'écran. Cependant, systemd efface l'écran avant de le démarrer. Pour désactiver ce comportement, créez un fichier de substitution:

    /etc/systemd/system/getty@tty1.service.d/noclear.conf

    [Service]
    TTYVTDisallocate=no

Note:

- Assurez-vous de supprimer `quiet` des paramètres du noyau.
- Un démarrage tardif de KMS peut entraîner l'effacement des premiers messages de démarrage. Consultez Kernel mode setting (Français)#Démarrage précoce de KMS ou Kernel mode setting (Français)#Désactiver modesetting.

## Voir aussi

- systemd (Français)#Changer la cible par défaut pour le démarrage
- Le TTY démystifié
- Wikipedia:fr:tty (Unix)

Categories:

- Boot process (Français)
- Linux console (Français)