How do I change the keyboard layout used when entering in my sda_crypt password?

I am currently using ТУСКЛЫЙ Ubuntu 15.10. While setting up Ubuntu, I accidentally selected the Colemak layout when I wanted the QWERTY layout. Now, when I am entering my password for sda_crypt at startup (which I believe is my LUKS encryption key?), it types in Colemak.

гve tried changing my default layout from Систем Сеттингс, but this does not affect the layout I использовал at sda_crypt.

3
задан 30 December 2015 в 01:02

2 ответа

На машине Ubuntu 18.04 я сделал:

dpkg-reconfigure keyboard-configuration

с корневыми полномочиями. Это повторно создало initramfs автоматически, и я смог использовать новую раскладку клавиатуры для ввода ключа на следующей начальной загрузке.

2
ответ дан 1 December 2019 в 16:26

Я думаю, что главным образом решил это (кроме наоборот, пытаясь выйти из QWERTY), на 16.04 установках LTS.

Так как подсказка после GRUB, но прежде чем зашифрованный корневой раздел доступен, мы знаем, что выбор расположения встраивается в initramfs (мини-файловая система, загруженная в память перед реальной корневой файловой системой, содержа все необходимое для загрузки реального).

initramfs создается initramfs-tools, который является гигантским списком сценариев для копирования материала в там. Это похоже на определенный, влияющий, это /usr/share/initramfs-tools/hooks/console_setup, который снова использует то же /etc/console-setup/cached.kmap.gz это использовало (я думаю?) для нормальных serial/tty консолей.

(Я ценил бы некоторую ясность в этом, если у кого-либо есть кто-либо. Выполнение dpkg -S на тех шоу "рычага", что это прибывает из keyboard-configuration пакет, который мог быть подсказкой.)

Так или иначе раскладка клавиатуры консольной установки прибывает из /etc/default/keyboard, который имеет некоторые переменные присвоения в нем. Чтобы дать общее представление, как установить это, можно изобразить его из нормального xkb расположения (это - то что изменения "Параметров настройки системы"), путем выполнения этого в терминале:

$ setxkbmap -print

xkb_keymap {
    xkb_keycodes  { include "evdev+aliases(qwerty)" };
    xkb_types     { include "complete+numpad(mac)" };
    xkb_compat    { include "complete" };
    xkb_symbols   { include "pc+us(dvorak)+inet(evdev)+capslock(backspace)+shift(both_capslock)" };
    xkb_geometry  { include "pc(pc105)" };
};

Мое немного странное расположение, но важные биты xkb_symbols ... us(dvorak) и xkb_geometry ... pc(pc105). От этого мы получаем следующее /etc/default/keyboard переменные:

$ sudo nano /etc/default/keyboard

XKBMODEL="pc105"
XKBLAYOUT="us"
XKBVARIANT="dvorak"
XKBOPTIONS=""
[...]

После того как Вы отредактировали /etc/default/keyboard, необходимо обмануть console-setup в обновление. Я понятия не имею, как сделать это так, я просто перезагрузил, который, казалось, работал. (Это могло на самом деле быть, потому что я уже сделал следующий шаг перед этой перезагрузкой, хотя это не работало на этот раз.)

После этого, просто выполненный sudo update-initramfs -u. Это скажет 'Генерацию/boot/initrd.img-{последняя версия ядра}' и займет время, в то время как это копирует набор материала в новое изображение initramfs. После этого Ваша следующая перезагрузка должна иметь расположение, которое Вы хотите в подсказке dm-склепа :).

TL; DR:

  1. Править /etc/default/keyboard на основе вывода от setxkbmap -print.
  2. Перезагрузка (или фигура надлежащий способ обновить консольную установку).
  3. Выполненный sudo update-initramfs -u.
  4. Надо надеяться, наслаждайтесь следующей перезагрузкой немного больше.

Удача и я сожалеем, что только имели ту же проблему теперь. Возможно, через еще 18 месяцев кто-то с той же проблемой сообщит мне, как она идет?

1
ответ дан 1 December 2019 в 16:26

Другие вопросы по тегам:

Похожие вопросы: