Клавиши-стрелки Grub CLI не работают с IPMI SOL

Когда я использую Grub CLI через IPMI sol, я не могу использовать клавиши со стрелками, а также некоторые клавиши, такие как delete. Что происходит, когда я нажимаю клавишу "Влево", появляются случайные символы "D", даже если курсор перемещается влево, когда буква D не сдвигается. Для правой клавиши я иногда получаю символ "С". Я понимаю, что "^[[C" и "^[[D" "- это коды только для клавиш со стрелками влево / вправо, поэтому они передаются правильно, но иногда не читаются правильно.

Я считаю, что у меня нормальная скорость передачи, так как я могу читать экран во время POST, в BIOS и GRUB, на экранах, а также в Linux. Эта проблема не появляется при вводе текста в меню BIOS или приглашение Linux. Я попытался установить несколько скоростей передачи через BIOS и ipmitool sol set violotile-bit-rate, но проблема, кажется, продолжается с любой скоростью передачи данных.

Я могу без проблем набирать следующие символы: a through z, upper and lower case. 1234567890-= ~!@#$%^&*()_+ []\;',./ {}|:"<>?

Мои мысли о возможных исправлениях таковы, что я не знаю всего процесса для:

У Grub есть отдельная скорость передачи, которую мне нужно попробовать?

"Термин" Grub, указанный в terminfo, нужно изменить?

Использовать Grub setkey для левой / правой клавиш?

3 ответа

У меня была точно такая же проблема, как и у вас, но, наконец, я понял, что для навигации нам не нужны стрелки вверх и стрелки вниз. См. комментарий внизу экрана GRUB:

            Use the ^ and v keys to select which entry is highlighted.          
      Press enter to boot the selected OS, `e' to edit the commands       
      before booting or `c' for a command-line. ESC to return             
      previous menu.

Буквально это означает ^и V. Поэтому, используя это, мне не нужны стрелки.

Была аналогичная проблема. Изменение конфигурации Grub из...

      GRUB_TERMINAL="gfxterm serial"

... к ...

      GRUB_TERMINAL_INPUT="gfxterm serial"
GRUB_TERMINAL_OUTPUT="gfxterm serial"

... исправил проблему. Насколько я понимаю, это не имеет смысла, потому что первое утверждение должно быть просто краткой формой следующих. В любом случае, проблема решена воспроизводимо.

Вы бы попробовали этот grub> Terminal_input Serial; Terminal_output serial Это может решить вашу проблему.

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