回到 Gnome 2 时代,我很高兴使用 NX(NoMachine、FreeNX、neatx)与多个 Linux 机器建立极低延迟且可用的连接。一切都运行如梦如幻。
然后,Gnome 3 出现了,它在 NX 中以回退模式运行。当我登录时,按键开始出现问题,向下箭头变成了回车键,还有很多其他奇怪的事情。我注意到 NX 会话与我连接的盒子的键盘映射不同,并且读完这篇文章后,我发现以下命令(在任何连接或恢复上)暂时解决了该问题:
setxkbmap -model evdev -layout us
这也证实了NoMachine 的此错误报告。
然而,在我最近升级到 Gnome 3.6 之后,这个命令不再能解决问题。当我第一次启动会话时,按键会执行一组操作。如果我运行该命令,它们会执行一组不同的操作,但仍然不正确。Gnome 3.6 处理键盘的方式与 Gnome 3.4/3.2 相比一定有一些不同之处,但我不知道是什么。也许有人可以指出 Gnome 3.6 有什么变化,这样我就可以再次使用我的系统了。
Gnome 3.6 之前有关该问题的其他帖子:
- http://mail.kde.org/pipermail/freenx-knx/2009-November/008606.html
- http://code.google.com/p/neatx/issues/detail?id=7
在您将这个问题标记为离题之前,请允许我指出,NX 是程序员最常用的工具,而 Gnome 3 是许多 Linux 发行版的默认显示管理器。我觉得这个问题在 AskUbuntu(我不使用 Ubuntu)或 SuperUser 上不会得到应有的关注。
更新:
- Gnome 3.6 似乎对键盘做了一些疯狂的事情,这可能与它有关:http://anarsoul.blogspot.com/2012/10/gnome-36-and-keyboard-layout.html
答案1
http://anarsoul.blogspot.com/2012/10/gnome-36-and-keyboard-layout.html
从上面的帖子来看,Gnome 3.6 似乎用其键盘插件gnome-settings-daemon
覆盖了xkbmap
设置,导致任何键盘重新映射都无用。正如建议的那样,可以通过删除键盘插件来暂时修复它;在我的系统上,这是:
rm /usr/lib64/gnome-settings-daemon-3.0/libkeyboard.so
然后,上述setxkbmap
命令将在 Gnome 3 以前的版本中正常工作。
然而,这显然会造成巨大的混乱,因为 NX 无法直接与 evdev 键盘配合使用,而 Gnome 开发人员会弄乱键盘映射。我只希望将来某个时候事情会趋于一致。