| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente |
| sysadmin:grub2:modifier-disposition-touches-clavier-fr [2026/08/15 10:14] – yoann | sysadmin:grub2:modifier-disposition-touches-clavier-fr [2026/08/16 09:05] (Version actuelle) – yoann |
|---|
| |
| ====== Grub2 : Modifier la disposition des touches du clavier ====== | ====== Grub2 : Modifier la disposition des touches du clavier ====== |
| | |
| | :TODO_DOCUPDATE: |
| |
| Depuis le menu de GRUB il est possible d'ouvrir un interpréteur de commande (shell) en appuyant sur la touche <key>c</key>. 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. | Depuis le menu de GRUB il est possible d'ouvrir un interpréteur de commande (shell) en appuyant sur la touche <key>c</key>. 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. |
| |
| <note warning> | <note warning> |
| Certains utilisateurs ont signalés que sur leur ordinateur portable 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'[[https://askubuntu.com/a/1557137|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. | 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'[[https://askubuntu.com/a/1557137|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. |
| </note> | </note> |
| |
| |
| On peut dans un premier temps valider le type d'entrée utilisée par défaut par GRUB : | Dans un premier temps, on peut observer le type d'entrée utilisée par GRUB et vérifier s'il peut utiliser le clavier ''at_keyboard'' car c'est ce clavier seulement qui accepte différents layouts. Au démarrage, depuis le menu GRUB, appuyer sur C pour ouvrir l'interpréteur de commande. |
| <code bash> | <code bash> |
| # Affiche la valeur utilisée par défaut | # Affiche les valeurs utilisées par défaut |
| terminal_input | terminal_input |
| |
| # continuer le démarrage normalement | # Modifier le clavier et vérifier que la saisie fonctionne |
| boot | terminal_input at_keyboard |
| | |
| | |
| | # Echap pour revenir au menu ou redémarrer |
| | reboot |
| </code> | </code> |
| |
| Créer le fichier de | NB : "terminal_input" peut prendre plusieurs valeurs comme ''serial'', ''console'' ou ''at_keyboard''. Sur mon système, le "terminal_input" utilisé par défaut est ''console'' mais ''at_keyboard'' est bien disponible. Lorsque je modifie la valeur de terminal_input, le clavier continue à répondre normalement. |
| | |
| | <note warning> |
| | Si votre clavier ne répond plus lorsque vous utilisez ''at_keyboard'' votre système ne supporte pas correctement l'utilisation de ce type d'entrée. Redémarrez la machine : aucune modification permanente n'a été faite à ce stade. La solution proposée ci-dessous ne fonctionnera pas su votre système car elle repose sur la reconfiguration du clavier ''at_keyboard''. |
| | </note> |
| | |
| | Une fois le système correctement démarré, on peut modifier la configuration de GRUB. |
| |
| <code bash> | <code bash> |
| if [ ! -d /boot/grub/layouts ] ; then mkdir /boot/grub/layouts; fi | if [ ! -d /boot/grub/layouts ] ; then mkdir /boot/grub/layouts; fi |
| |
| # Générer le fichier | # Générer le fichier layout |
| grub-kbdcomp -o /boot/grub/layouts/fr.gkb fr | grub-kbdcomp -o /boot/grub/layouts/fr.gkb fr |
| |
| |
| |
| On ajoute la fonction qui chargera | On ajoute la fonction de reconfiguration de l'entrée |
| <file> | <file> |
| #!/bin/sh | #!/bin/sh |
| # Stopper l’exécution à la première anomalie | # Stopper l’exécution à la première anomalie |
| set -e | set -e |
| |
| |
| # Define function to set keyboard layout | |
| # Can be called from user if wanted but is | |
| # not executed as default | |
| |
| cat <<EOF | cat <<EOF |
| function kbdfr { | function kbfr { |
| echo "Active 'at_keyboard' avec la disposition français" | echo "Active 'at_keyboard' avec la disposition français" |
| terminal_input at_keyboard | terminal_input console |
| insmod keylayouts | insmod keylayouts |
| keymap /boot/grub/layouts/fr01.gkb | keymap /boot/grub/layouts/fr.gkb |
| } | } |
| EOF | EOF |
| update-grub | update-grub |
| </code> | </code> |
| | |
| | |
| | Si la machine ne supporte pas at_keyboard il n'y aura que la recompilation de grub avec une table azerty. |
| | |
| | |
| |
| ===== Références ===== | ===== Références ===== |
| * https://forums.archlinux.fr/viewtopic.php?t=17913 | * https://forums.archlinux.fr/viewtopic.php?t=17913 |
| * [[https://unix.stackexchange.com/questions/729418/how-to-change-grub2s-keyboard-layout-on-a-laptop|Modifier la disposition des touches de GRUB2 sur un laptop (unix.stackexchange.com) (en)]] | * [[https://unix.stackexchange.com/questions/729418/how-to-change-grub2s-keyboard-layout-on-a-laptop|Modifier la disposition des touches de GRUB2 sur un laptop (unix.stackexchange.com) (en)]] |
| | * https://papy-tux.legtux.org/doc1193/index.html#mozTocId725141 |
| | * https://www.debian-fr.org/t/grub2-et-azerty/28506 |