Outils pour utilisateurs

Outils du site


sysadmin:grub2:modifier-disposition-touches-clavier-fr

Ceci est une ancienne révision du document !


Grub2 : Modifier la disposition des touches du clavier

Depuis le menu de GRUB il est possible d'ouvrir un interpréteur de commande (shell) en appuyant sur la touche C. Par défaut la disposition des touches du clavier (layout) est en qwerty. Il est possible de paramétrer GRUB pour qu'il utilise un layout différent mais il faut rester prudent.

Certains utilisateurs ont signalés que sur leur ordinateur portable notamment, la reconfiguration du clavier ne fonctionnait pas et pouvait même rendre les interactions avec GRUB impossibles. Pour éviter cela on a fait le choix d'appliquer une recommandation : utiliser une fonction pour modifier la disposition des touches. Cela permet de conserver le layout existant par défaut et de le modifier seulement lors de l'appel de la fonction depuis le shell au besoin.

Dans un premier temps, on peut observer le type d'entrée utilisée par GRUB. Au démarrage, depuis le menu GRUB, appuyer sur C pour ouvrir l'interpréteur de commande.

# Affiche la valeur utilisée par défaut
terminal_input
terminal_output
terminfo
 
# Redémarrer
reboot

NB : “terminal_input” peut prendre plusieurs valeurs comme serial, console ou at_keyboard. Sur mon système, le “terminal_input” disponible est console. C'est donc celui que je vais définir dans la fonction.

Une fois le système correctement démarré, on peut modifier la configuration de GRUB.

# Création du répertoire s'il n'existe pas
if [ ! -d /boot/grub/layouts ] ; then mkdir /boot/grub/layouts; fi
 
# Générer le fichier layout
grub-kbdcomp -o /boot/grub/layouts/fr.gkb fr
 
# Alternative (génère le même contenu)
ckbcomp fr | grub-mklayout -o /boot/grub/layouts/fr.gkb

A ce stade le fichier layout existe mais n'est pas utilisé. :TODO:

On ajoute la fonction de reconfiguration de l'entrée

#!/bin/sh

# Stopper l’exécution à la première anomalie
set -e

cat <<EOF
function kbfr {
    echo "Active 'at_keyboard' avec la disposition français"
    terminal_input console
    insmod keylayouts
    keymap /boot/grub/layouts/fr.gkb
}
EOF

Pour que les modifications apportées soient prises en compte :

update-grub

Références

sysadmin/grub2/modifier-disposition-touches-clavier-fr.1786792772.txt.gz · Dernière modification : 2026/08/15 11:19 de yoann