web-dev-qa-db-fra.com

Comment changer la disposition du clavier en ligne de commande grub (shell Grub)?

Quand je démarre dans GRUB2 et que je presse c, J’ai accès à GRUB Shell.

Comment changer la disposition du clavier de ce shell GRUB?

Notez que je démarre une Ubuntu VM dans Virtualbox.

3
KrisWebDev

Tout d’abord, vérifiez que vous utilisez GRUB 2 (GRUB 0.x fonctionne différemment).

grub-install --version

Générez un fichier de disposition de clavier GRUB. Vous trouverez ci-dessous la commande d'un clavier frname__ench. Pour les autres langues, cochez /usr/share/X11/xkb/symbols/. Le choix du nom de fichier n'est pas important (vous pouvez changer beponame__).

Sudo grub-kbdcomp -o /boot/grub/bepo.gkb fr

Éditez /etc/default/grub avec les droits root pour avoir:

#GRUB_HIDDEN_TIMEOUT=0
GRUB_TERMINAL_INPUT="at_keyboard"

Éditez /etc/grub.d/40_custom avec les droits root pour avoir:

#!/bin/sh
exec tail -n +3 $0

insmod keylayouts
keymap /boot/grub/bepo.gkb

Finalement:

Sudo update-grub

Remarque: Oubliez immédiatement l’utilisation de la Shift touche pour afficher le menu GRUB! Il peut être normal que terminal_input at_keyboard fasse que cette clé ne fonctionne plus. Donc, assurez-vous que #GRUB_HIDDEN_TIMEOUT=0 est correctement commenté.

5
KrisWebDev

Affiner ma grub (2.02-2ubuntu8.3), sur un vieux Asus N73JF entièrement fonctionnel (Windows 7 multiboot, récupération de Windows, Ubuntu 15.10, Ubuntu 18.04 ...) n’était pas une option pour moi.

Sudo grub-kbdcomp -o /boot/grub/layouts/laptop.gkb fr

(Grub2 sous Ubuntu utilise/boot/grub/layouts à partir de 15.10).

Ensuite, je n'ouvre pas /etc/default/grub ni /etc/grub.d/40_custom: je modifie /etc/grub.d/00_header où je remplace

    cat << EOF
  set gfxmode=${GRUB_GFXMODE}
  load_video
  insmod gfxterm
EOF

avec

    cat << EOF
  set gfxmode=${GRUB_GFXMODE}
  load_video
  insmod gfxterm
  insmod terminal
  terminal_output gfxterm
  insmod keylayouts
  insmod at_keyboard
  terminal_input at_keyboard
  keymap laptop
EOF

Merci à KrisWebDev pour sa question-réponse: J'apprends beaucoup en regardant à l'intérieur de /boot/grub/i386-pc/.

1
Anacharsis