Linux Console Teclado Bloqueio pressionando CapsLock

1

O console Ubuntu 14.04 LTS rodando no VirtualBox no Win7 trava ao pressionar Caps Lock : nenhuma outra entrada de teclado é aceita, nem mesmo Alt + CursorRight ou Ctrl + Alt + Del (emitido pelo VirtualBox).
Edit: acontece somente depois de trocar Y e Z emitindo
echo -e keymaps 0-2,4-5,8,12 \n keycode 21=z \n keycode 44=y | loadkeys

Eu posso desbloquear o console e continuar trabalhando sem problemas depois de emitir um reset 2>/dev/tty1 de uma sessão ssh.
Eu sou capaz de emitir o reset dentro do próprio console bloqueado usando o gpm (pressionando o botão do meio do mouse) quando o comando reset está no buffer do gpm.

reproduzível toda vez e em qualquer /dev/tty<n> .

O mesmo efeito no VirtualBox versões 4 e 5.
Parece que o bloqueio não ocorre no lado do VirtualBox porque ele pode ser curado no lado do linux.

Não há diferenças na saída de stty -a < /dev/tty1 antes e depois disso reset .

Outros vcs continuam funcionando (chvt emitido pelo ssh), mas depois de Alt + F1 o console travado ainda está travado: Parece que o problema deve estar localizado dentro do virtual código do console.

Não há mensagens aparecendo em /var/log/syslog ou dmesg quando esse problema ocorre (quando o CapsLock é pressionado). Houve um problema não reproduzível possivelmente causado por salvar / restaurar a VM e não estar relacionado:

atkbd serio0: Spurious NAK on isa0060/serio0. Some program might be trying to access hardware directly

em dmesg .

Como posso depurar isso?
Em particular: Como posso encontrar a diferença de status do console antes e depois da redefinição?

    
por Juergen 10.11.2015 / 23:30

1 resposta

0

Tente alterar o comando para:

echo -e keymaps 0-127 \n keycode 21=z \n keycode 44=y | loadkeys

Eu poderia reproduzir o problema em um PC físico executando o Ubuntu 14.04 LTS (embora o comando não tenha nenhum outro efeito porque o mapa de teclado francês suíço que eu uso já possui Y e Z nessa posição) e alterando o 0-2,4-5,8,12 para 0-127 no comando parece resolvê-lo. Eu não entendo completamente por que ele trava com o outro comando, mas minha intuição é que os intervalos de mapa de teclado especificados não definem os existentes no mapa de teclado, indefinindo o estado de todas as teclas quando o Caps Lock está ativado (a emissão deste comando também cria o problema: echo -e keymaps 0-2,4-5,8,12 | loadkeys ). Não tenho certeza se é um bug ou um recurso pretendido.

    
por 16.11.2015 / 11:00