Chromium on Raspberry Pi 中断键盘输入

Chromium on Raspberry Pi breaking keyboard input

我有几台较旧的打印机(一台 Brother 和一台 HP 一体机),我想 运行 作为无线和基于云的打印机。为此,我购买了一个 Raspberry Pi 2 并按照一些在线教程将其设置为无头打印服务器。两台打印机都可以从我的家庭网络无线访问,但因为我的主计算机是 Chromebook,并且我使用 Android 手机和平板电脑,所以我发现使用它们打印的唯一好方法是使用 Google 云打印。

为此,我将 Chromium 下载到 Raspberry Pi 并使用我的 gmail 帐户登录。这种方法工作了几个月,但云连接会在几天后断开,我必须重新启动 Raspberry Pi 才能恢复(可能有更好的方法,但是,因为它是无头,重启似乎更容易)。

最终,我厌倦了重新启动 Raspberry Pi,并在 Internet 上阅读了一些关于升级我的软件以获得新版本 OS 和 Chromium 的内容。不幸的是,自从这样做以来,我一直遇到问题。

由于我 运行 无头,我的主要连接方式是通过我的 Chromebook 的 ssh 和 vnc 连接。 ssh 很好,但我不能通过 ssh 运行 Raspberry Pi 上的 Chromium(有一次,我找到了一个关于如何做到这一点的教程,但它已经被删除了,我认为 Google 取消了对沿线某处的支持)。

为了启动 Chromium,我使用 vnc 连接登录。当我在重启后(或重启 vnc 服务器后)第一次登录时,一切正常。例如,我可以使用通过 GUI 提供的文字处理器或终端。一切都很好。但是,如果我启动 Chromium,突然之间什么都不会接受键盘输入。 几乎就好像此时根本没有连接键盘。鼠标输入仍然可以正常工作,我可以随心所欲地打开和关闭程序。关闭 Chromium 并不能解决问题。从客户端关闭 vnc 连接并重新登录并不能解决问题。重新启动 vnc 服务器 确实 修复它,直到我再次启动 Chromium。

我在上面说 "almost" 是因为,即使按下键盘上的键似乎没有做任何事情,光标(在终端 window 中尤其明显) 确实 每次按键时都会闪烁,就像我输入实际文本时一样。

我在 Google 上搜索过这个问题,但搜索结果很少。有一些关于可能不使用 ibus 的 lubuntu 帖子,但据我所知,这与我的情况无关。至少,我在 ps 中找不到任何 ibus,在 GUI 首选项中也找不到任何选项。

我的 Raspberry Pi 是 运行 我认为是 Raspbian 的最新版本(我昨晚再次 updated/upgraded 以确保):

pi@raspberrypi:~ $ uname -a
Linux raspberrypi 4.4.21-v7+ #911 SMP Thu Sep 15 14:22:38 BST 2016 armv7l GNU/Linux
pi@raspberrypi:~ $ cat /etc/os-release 
PRETTY_NAME="Raspbian GNU/Linux 8 (jessie)"
NAME="Raspbian GNU/Linux"
VERSION_ID="8"
VERSION="8 (jessie)"
ID=raspbian
ID_LIKE=debian
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"

它是 运行ning TightVNC,具有以下命令行选项:

pi@raspberrypi:~ $ ps aux | grep vnc
pi       13537  0.0  2.2  91556 22584 ?        S    01:05   0:27 Xtightvnc :1 -desktop X -auth /home/pi/.Xauthority -geometry 1368x768 -depth 24 -rfbwait 120000 -rfbauth /home/pi/.vnc/passwd -rfbport 5901 -fp /usr/share/fonts/X11/misc/,/usr/share/fonts/X11/Type1/,/usr/share/fonts/X11/75dpi/,/usr/share/fonts/X11/100dpi/ -co /etc/X11/rgb

Chromium 的 chrome://帮助关于部分说 "Version 51.0.2704.91 Built on Ubuntu 14.04, running on Raspbian 8.0"。

除此之外,我不知道还有什么其他 software/versions 是相关的,但如果有人能想到任何其他有用的东西,我可以更新此描述。

(我没有必要的50分,所以我不能评论,只能作为解决方案,在这种情况下是不正确的,因为我也没有找到它。)

我在 Pi 3 上遇到了完全相同的问题,但在我的情况下,当使用 xrdp 远程连接时(w/ Windows 远程桌面)。 我相信这些症状是在 update-upgrade 疗程后出现的。我当前的版本:

pi@raspberrypi:~ $ uname -a
Linux raspberrypi 4.4.38-v7+ #938 SMP Thu Dec 15 15:22:21 GMT 2016 armv7l GNU/Linux

我本来只是想把keyboard-layout改成德语,据我目前的理解是通过xrdp是不可能的,除非你完全手动定义你的键盘布局,见:

http://forums.fedoraforum.org/showthread.php?t=265100 http://cloclotron.net/xrdp_keyboard_layout_workaround.html

我一打开 Chromium,就看到了与您相同的行为,如果我关闭它,一切都会恢复正常。如果在插入 kexboard 的直接连接显示器上工作,我没有遇到任何问题。

我是运行Raspberry Pi3的4.4.38版本,是最新的,也是最新的chromium-browser (v.51)。虽然我使用的是鼠标和屏幕,但我收到键盘错误消息和其他消息,并且在某些情况下浏览器挂起。启动 Chromium 后,我很快在控制台上看到以下错误:

[2530:2530:0217/142822:ERROR:sandbox_linux.cc(334)] InitializeSandbox() called with multiple threads in process gpu-process
[75:75:0217/142957:ERROR:PlatformKeyboardEvent.cpp(117)] Not implemented reached in static PlatformEvent::Modifiers blink::PlatformKeyboardEvent::getCurrentModifierState()

在raspberrypi.org论坛上询问后,建议我等待下一个版本的Chromium。看起来很确定鼠标和键盘控件与铬之间存在 i/o 错误,并且看起来与您的问题非常相似。

通过反复试验,我发现 Chromium keyboard/RDP 问题似乎与我个人资料中的特定扩展有关。

要验证这一点,请尝试使用 运行 Chromium --disable-extensions。

我发现有问题的 extensions/apps 是:

  • Google 播放音乐

一旦我禁用这些,键盘就会再次开始工作。这有帮助吗?