在 X11 SSH 转发中,键盘无法正常工作(只有 Ctrl + .. 和数字键盘可以工作!)

在 X11 SSH 转发中,键盘无法正常工作(只有 Ctrl + .. 和数字键盘可以工作!)

我在办公室使用 Ubuntu 18.04 桌面。

为了使用服务器,我们需要连接到远程 Windows 8 计算机,然后从这里打开 SSH 连接到 Ubuntu 16.04 服务器。

所以,本地(ubuntu18.04)--->远程(windows8server)--->服务器(ubuntu16.04)

在远程 Windows 计算机上,我使用 Git Bash (MINGW64) 此命令打开与服务器的连接:

export DISPLAY=localhost:0
ssh -Y -C -i "C:/path/to/key" user@serverIP

我能够在 GUI 模式下运行大多数应用程序,例如 Nautilus、Geany、VSCode、Git...。


然而,有一个很大的问题: 键盘上的大多数按键都不起作用,但 Ctrl + S、Ctrl + V、Ctrl + Z ...(大多数热键)和数字键盘上的 1、2、3..9 键除外。

另外,我注意到一个奇怪的行为:有时会同时“输入”数十个相同的字符,例如:“zzzzzzzzzz”“aaaaaaaaaaaa”


我尝试过的:

  • 验证服务器上的键盘布局是否正确
user@serverIP~$: localectl status
System Locale: LANG=en_US.UTF-8
LANGUAGE=en_US:en
VC Keymap: us
X11 Layout: us
X11 Model: pc105+inet
X11 Options: terminate:ctrl_alt_bksp

我已将其添加到 settings.json 但它不起作用:

"keyboard.dispatch": "keyCode"

答案1

我最终得到了一个替代解决方案 - 使用代码服务器:https://github.com/codercom/code-server

首先,下载二进制文件并将其粘贴到服务器上的 /usr/local/bin 中,然后从任何地方运行它。

nohup code-server --password=123456 &

在我的远程计算机上,我通过 SSH 在 git-bash 中输入以下命令来通过隧道连接服务器的本地主机:

ssh -i "/path/to/yourkey" -L 8080:127.0.0.1:8443 user@ipaddress -N

(确保 git-bash 窗口保持打开状态)

最后我打开Chrome并打开http://本地主机:8080开始使用代码服务器!

相关内容