我刚刚在华硕 Q534UXK 笔记本电脑上安装了 Ubuntu 20.10,但遇到了很多输入设备问题。在内置键盘上,除了屏幕亮度的键盘快捷键(Fn-F5 和 Fn-F6)之外,其他所有键似乎都不起作用,而这两个快捷键工作正常。触摸板根本不起作用。
触摸屏似乎在模拟鼠标,因为在 Firefox 中,在屏幕上上下滑动会选择文本,而不是滚动。这可能是一个不相关的问题。
我插入了一个外接键盘,它工作得很好。此外,如果我使用 Ctrl-Alt-F3 切换到 Linux 控制台,那么内置键盘工作得很好。(我还看到某种新的 MMIO 错误消息打印到控制台,但我猜那也是不相关的。)
(附注:撰写这个问题在受影响的设备是一个有点有趣的体验。)
以下是 的输出xinput
:
tanner@achilles:~$ xinput
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Generic USB Keyboard Mouse id=13 [slave pointer (2)]
⎜ ↳ Logitech M510 id=16 [slave pointer (2)]
⎜ ↳ Logitech M510 id=17 [slave pointer (2)]
⎜ ↳ Atmel Atmel maXTouch Digitizer id=19 [slave pointer (2)]
⎜ ↳ ELAN1200:00 04F3:3022 Touchpad id=22 [slave pointer (2)]
⎜ ↳ ELAN1200:00 04F3:3022 Mouse id=21 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Asus Wireless Radio Control id=7 [slave keyboard (3)]
↳ Video Bus id=9 [slave keyboard (3)]
↳ Power Button id=10 [slave keyboard (3)]
↳ Generic USB Keyboard id=12 [slave keyboard (3)]
↳ Generic USB Keyboard Consumer Control id=15 [slave keyboard (3)]
↳ Atmel Atmel maXTouch Digitizer id=20 [slave keyboard (3)]
↳ Generic USB Keyboard Mouse id=25 [slave keyboard (3)]
↳ USB2.0 HD UVC WebCam: USB2.0 HD id=18 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=24 [slave keyboard (3)]
↳ Video Bus id=8 [slave keyboard (3)]
↳ Generic USB Keyboard System Control id=14 [slave keyboard (3)]
↳ Sleep Button id=11 [slave keyboard (3)]
↳ Asus WMI hotkeys id=23 [slave keyboard (3)]
如果我运行xinput --test-xi2 --root
,则按下外接键盘上的按键会触发设备 12(“通用 USB 键盘”)的事件,点击触摸屏会触发设备 19(“Atmel Atmel maXTouch 数字转换器”)的触摸事件,使用亮度键盘快捷键会触发设备 8(“视频总线”)的事件。按下内置键盘上的任何其他按键或使用触摸板均不会产生任何反应。
如果我运行xinput --list-props 22 | grep 'Device Node'
(在设备 22 上,“ELAN1200:00 04F3:3022 Touchpad”),则显示其设备节点为 /dev/input/event6。如果我接着执行sudo cat /dev/input/event6
,则触摸触摸板会在屏幕上打印出大量“垃圾”。这至少似乎是个好消息。
同样,如果我运行xinput --list-props 24 | grep 'Device Node'
(在设备 24 上,“AT Translated Set 2 keyboard”),则显示其设备节点是 /dev/input/event4。如果我然后执行sudo cat /dev/input/event4
,则按下内置键盘上的键会打印出大量“垃圾”。
因此,显然输入显示在设备节点上,但由于某种原因,它未能成功转换为事件。但是,Linux 控制台可以很好地理解键盘。
我尝试卸载xserver-xorg-input-libinput
、安装xserver-xorg-input-synaptic
并重新启动,但似乎什么都没改变。卸载xserver-xorg-input-synaptic
、安装xserver-xorg-input-libinput
并重新启动似乎也没有改变任何东西。(也许这些都是愚蠢的尝试,我不知道。)
我下一步该做什么来尝试诊断并解决这个问题?
答案1
现在问题似乎已经解决,但我不确定为什么。
我打开了“软件和更新”应用程序,然后转到“其他驱动程序”选项卡,其中列出了一个设备:“NVIDIA Corporation:GM107M [GeForce GTX 950M]”。有六个驱动程序选项可供选择,选定的是“使用 X.Org X 服务器 - 来自 xserver-xorg-video-nouveau 的 Nouveau 显示驱动程序(开源)”。我选择了“使用来自 nvidia-driver-460 的 NVIDIA 驱动程序元包(专有,已测试)”,这导致出现一个“重新启动”按钮,我点击了它。
笔记本电脑重启后,键盘和触摸板就可以正常工作了。但是,当我再次打开“软件和更新”应用程序时,我看到 Nouveau 选项再次被选中,如下所示。
因此,我不确定更改 NVIDIA 驱动程序是否真的解决了该问题(这似乎很奇怪,因为触摸板不是显卡),或者该问题在我重新启动时由于不相关的原因而自行解决。