如何在控制台中更改输入键盘布局?

J.O*_*sen 68 linux console

在 Linux 上的控制台中工作时,我需要更改键盘的布局。我需要将英文布局设置为控制台的默认设置。我该怎么做?

eph*_*ent 64

要更改系统范围的键盘布局,请运行

sudo dpkg-reconfigure keyboard-configuration
Run Code Online (Sandbox Code Playgroud)

或编辑的XKBLAYOUT一致/etc/default/keyboard

  • 在 Red Hat 7 上:`localectl status`、`localectl list-keymaps`、`localectl set-keymap cz`,请参阅[更改键盘布局](https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux /7/html/system_administrators_guide/s1-changed_the_keyboard_layout) ...键盘映射在`/usr/lib/kbd/keymaps/` btw .. (8认同)

小智 25

要快速更改键盘布局,只需使用以下命令安装 setxkbmap:

sudo apt-get install x11-xkb-utils
Run Code Online (Sandbox Code Playgroud)

在此之后,您可以随时更改键盘布局:

setxkbmap us
Run Code Online (Sandbox Code Playgroud)

要每次自动执行此操作,请扩展您.bashrc的:

echo "setxkbmap us" >> ~/.bashrc
Run Code Online (Sandbox Code Playgroud)

现在,打开一个新的控制台并激活美国键盘布局。如果 Ubuntu 面板中的小键盘布局图标没有改变,请不要担心。

  • 这并不能回答问题。setxkbmap(1) 在 X(图形)下工作,而 OP 询问控制台。[甚至OP](https://superuser.com/questions/404457/how-to-change-input-keyboard-layout-while-in-console#comment460038_404457)在对他的问题的评论中提出了loadkeys(1),在您发布此答案之前三年(loadkeys(1) 是一个仅限控制台的程序)。 (4认同)

Aqu*_*wer 9

另一种方式,但我知道它不会持续到下一次启动:

sudo loadkeys /usr/share/keymaps/i386/qwerty/us.kmap.gz
Run Code Online (Sandbox Code Playgroud)

检查/usr/share/keymaps/i386/您的键盘布局和键盘映射,以找到更适合您的内容。

  • `loadkeys us`(**没有**完整路径)是在没有 *setxkbmap*(全新的最小 RHEL-8 安装)的系统上唯一对我有用的东西。发行版之间的完整路径有所不同,在 RHEL 上,它实际上位于 `/usr/lib/kbd/keymaps` 下,并且有 2 组 - *legacy* 和 *xkb*。 (2认同)

小智 8

loadkeys us,它会加载美国密钥,但只针对单个会话。


TNT*_*TNT 5

在当前基于 systemd 的系统上使用localectl(如 @david-tonhofer 提到的):

sudo localectl set-keymap us
sudo localectl set-x11-keymap us,de pc104
localectl status
Run Code Online (Sandbox Code Playgroud)