Como alterar o layout do teclado de entrada enquanto estiver no console?

42

Preciso alterar o layout do teclado enquanto estiver trabalhando no console no Linux. Preciso configurar o layout em inglês como padrão para o console. Como fazer isso?

J.Olufsen
fonte
Que distro você está usando?
emzero
Ubuntu, logado como root
J.Olufsen
1
"loadkeys us" funcionou! Como torná-lo layout padrão?
J.Olufsen

Respostas:

42

Para alterar o layout do teclado em todo o sistema, execute

sudo dpkg-reconfigure keyboard-configuration

ou edite a XKBLAYOUTlinha /etc/default/keyboard.

efémero
fonte
2
No Red Hat 7: localectl status, localectl list-keymaps, localectl set-keymap cz, consulte Alterar o layout do teclado ... Os keymaps estão em /usr/lib/kbd/keymaps/btw ..
David Tonhofer
Oi)) O Ubuntu 18.04.2 com a área de trabalho do Gnome não responde ao estado /etc/default/keyboard. Para alterar as configurações do teclado neste caso, você precisa usardconf
AtachiShadow
16

Para alterar o layout do teclado rapidamente, basta instalar o setxkbmap com:

sudo apt-get install x11-xkb-utils

Depois disso, você sempre pode alterar o layout do teclado com:

setxkbmap us

Para fazer isso automaticamente sempre, estenda seu .bashrccom:

echo "setxkbmap us" >> ~/.bashrc

Agora, abra um novo console e o layout do teclado dos EUA será ativado. Não se preocupe se o pequeno ícone de layout do teclado no painel Ubuntu não mudar.

Malte Ahl
fonte
Isso realmente não altera o layout do teclado padrão, mas é uma espécie de hack para redefinir o layout do teclado para outro sempre que você abre um novo console (embora seja necessário redefinir apenas após a reinicialização). Para uma solução permanente, é possível defini-la diretamente, por exemplo, /etc/default/keyboardcomo sugerido por outras respostas.
precisa saber é
Isso não responde à pergunta. setxkbmap (1) funciona no X (gráfico) enquanto o OP pergunta sobre o console. O OP até mencionou o loadkeys (1) em um comentário sobre a pergunta dele, três anos antes de você postar esta resposta (o loadkeys (1) é um programa somente para console).
Guildenstern
6

de outra maneira, mas entendo que não vai durar a próxima inicialização:

sudo loadkeys /usr/share/keymaps/i386/qwerty/us.kmap.gz

verifique / usr / share / keymaps / i386 / para o layout do teclado e os mapas de teclas para o que melhor lhe convier

Aquarius Power
fonte
Coloque-o no /etc/profile.d/bashrc
BK
@BK, pode estar em /etc/rc.localpara não exigir sudo?
Poder de Aquário
1

loadkeys us ---- carrega chaves dos EUA, mas para uma única sessão.

sunilyadav0201
fonte
O Loadkeys já foi sugerido e em melhores respostas, que incluíam informações sobre como usá-lo. Evite postar informações duplicadas nas respostas, especialmente quando suas postagens não consistirem em uma resposta completa.
music2myear 22/09
Melhor resposta para mim.
not2savvy 23/09
0

o mais engraçado pode ser voltar atrás .. a solução possível é criar um script bash (nomeado com símbolos do idioma de destino. por exemplo, англ). O segundo truque é digitar "setxkbmap us; setxkbmap ru", então é possível usar o histórico do bash para retornar o layout principal ao console.

Z0dCHiY8
fonte
1
Você pode esclarecer (1) o que está dizendo e (2) como ele responde à pergunta?
Scott
bem, você trocou de console no idioma russo. como você gostaria de voltar para o inglês 777, na verdade, não respondi à pergunta principal, apenas adicionei alguns truques para evitar possíveis problemas. Por exemplo, você trabalha sem o GUI e alterna o console para o russo, portanto não pode digitar nenhum comando. :)
Z0dCHiY8
0

Um truque melhor é monitorar o udev e redefini-lo automaticamente se o teclado for desconectado. Até usuários de laptops podem precisar dele, pois ele pode ser desconectado instantaneamente. Acabei de fazer um repositório no github para fazer isso.

Spenser Truex
fonte