Измените раскладку клавиатуры GRUB на этапе 1

Измените раскладку клавиатуры GRUB на этапе 1

Я установил grub на систему на базе EFI. Поэтому у меня раздел EFI на /dev/sdc2 и мой контейнер LUKS в /dev/sdc5. У меня только один раздел linux в контейнере LUKS. Поэтому даже /boot с этапом 2 grub зашифрован.

При загрузке системы EFI загружает запись grub и загружает grub stage 1. Он пытается открыть контейнер LUKS в /dev/sdc5 и запрашивает пароль.

Это время, когда я хочу иметь немецкую раскладку вместо англо-американской. Я знаю, как изменить раскладку в grub stage 2, но как мне изменить ее в stage 1. Это вообще возможно?

Операционная система — Debian Jessie.

решение1

Поскольку вы используете EFI с зашифрованным /boot, я предполагаю, что вы уже знакомы сgrub-mkstandalone

Добавить в /etc/default/grub:

GRUB_TERMINAL_INPUT=at_keyboard

Добавить в /etc/grub.d/40_custom:

insmod keylayouts
keymap /boot/grub/de.gkb

Следующий запуск grub-kbdcomp -o /tmp/de.gkb deдля генерации немецкой раскладки grub.

Теперь все, что вам нужно сделать, это добавить "boot/grub/de.gkb=/tmp/de.gkb"в вашу grub-mkstandaloneкоманду. В моем случае это выглядит так:

grub-mkstandalone -d /usr/lib/grub/x86_64-efi/ -O x86_64-efi --compress="xz" --modules="part_gpt part_msdos crypto cryptodisk luks disk diskfilter lvm" --fonts="unicode" -o "/boot/efi/EFI/linux/grubx64.efi" "boot/grub/grub.cfg=/tmp/grub.cfg" "boot/grub/de.gkb=/tmp/de.gkb"

решение2

Это невозможно сделать, см.это Введение в Grub2в котором прямо говорится:

Важно: Раскладка клавиатуры во время процедуры загрузки

При загрузке доступна только американская раскладка клавиатуры.

Связанный контент