Clavier

De wiki.nexiat.fr
Aller à la navigation Aller à la recherche
Fiche express
Domaine Disposition du clavier (layout)
Session graphique (X11) setxkbmap fr
Console texte (TTY) loadkeys fr
Persistance Debian/Ubuntu /etc/default/keyboard
Persistance RHEL/CentOS /etc/sysconfig/keyboard

Changer la disposition du clavier sous Linux dépend du contexte : une session graphique (X11) et une console texte (TTY) utilisent chacune leur propre mécanisme, et aucun des deux n'est persistant par défaut — un redémarrage revient à la configuration du système. La persistance se règle à part, dans un fichier différent selon la distribution.

Session graphique (X11) : setxkbmap

setxkbmap change la disposition du clavier pour la session X11 en cours. C'est temporaire : la modification est perdue à la fermeture de la session ou au redémarrage du serveur X.

setxkbmap fr          # bascule en clavier français (azerty)
setxkbmap us           # bascule en clavier américain (qwerty)
setxkbmap -query       # affiche la disposition actuellement active
setxkbmap -print       # affiche la configuration XKB complète (layout, modèle, variante...)

Console texte (TTY) : loadkeys

loadkeys charge une table de correspondance clavier pour les consoles virtuelles (TTY), en dehors de tout serveur graphique. Comme setxkbmap, l'effet est temporaire et ne survit pas à un redémarrage.

loadkeys fr            # charge la table de touches française
loadkeys us             # charge la table de touches américaine
dumpkeys | less         # affiche la table de touches actuellement chargée

Rendre la disposition permanente

Les deux commandes ci-dessus ne modifient que l'état courant. Pour que la disposition survive à un redémarrage, il faut l'écrire dans le fichier de configuration persistant de la distribution.

Debian / Ubuntu

Le fichier /etc/default/keyboard centralise la configuration clavier pour X11 et la console :

cat /etc/default/keyboard
# XKBLAYOUT="fr"
# XKBVARIANT=""
# BACKSPACE="guess"

dpkg-reconfigure keyboard-configuration  # assistant interactif pour régénérer le fichier
setupcon                                  # réapplique la config sur la console courante

RHEL / CentOS (5/6)

Sur les versions historiques RHEL/CentOS 5 et 6, la disposition persistante se règle dans /etc/sysconfig/keyboard :

cat /etc/sysconfig/keyboard
# KEYTABLE="fr-latin9"
# MODEL="pc105"
# LAYOUT="fr"

⚠️ Sur RHEL/CentOS 7 et plus, ce fichier n'est plus lu : la configuration passe par localectl (systemd) — voir la commande localectl set-keymap pour la console et localectl set-x11-keymap pour X11.

Vérifier la disposition active

setxkbmap -query        # disposition X11 active (Layout, Variant...)
localectl status         # résumé complet (VC Keymap, X11 Layout) sur les distributions systemd
dumpkeys -l               # liste les tables de touches disponibles pour loadkeys

Voir aussi

  • Systemctllocalectl fait partie de la suite d'outils systemd, au même

titre que systemctl