我有一台配备 Elantech 触摸板的华硕 R558UF 笔记本。安装 Ubuntu 16.04 后,触摸板工作过一次,但重启后就无法工作了,从那以后就再也没有工作过。
这是输出xinput
:
↳ Elan Touchpad id=12 [slave pointer (2)]
在“鼠标和触摸板”设置中,触摸板已启用。我应该怎么做才能修复此问题?
答案1
我也遇到了同样的问题。经过大量谷歌搜索后,我找到了一个解决方法:/etc/defaut/grub
sudo nano /etc/default/grub
我补充i8042.reset
说GRUB_CMDLINE_LINUX_DEFAULT
GRUB_CMDLINE_LINUX_DEFAULT="i8042.reset quiet splash"
进而
sudo update-grub
最后重新启动后,触摸板可以正常工作(包括多点触控)。
答案2
好的,我找到了解决这个问题的方法。
感谢@Guillaume 为我指明了正确的方向。这个问题解释得非常好在 unix stackexchange 上。
它出现在一些特定的、罕见的设备中,例如我的设备(New Elantech Touchpad)。
有时触摸板可以工作,有时则不工作,这与多路复用有关。
为了解决这个问题,我遵循了@Guillaume 的回答,并按照另一个答案中完全相同的步骤添加了i8042.kbdreset=1
参数。/etc/default/grub
i8042.reset
对我没用。
答案3
我在一台华硕笔记本电脑上安装了同样的触摸板。低于 4.5 版本的 Linux 内核没有此触摸板的驱动程序,因此您只需升级内核即可。尽管截至撰写本文时,Linux 内核已升级到 4.10,但我喜欢追随技术前沿,因此如果您升级到 4.5,应该没问题。
你可以在以下位置找到 Ubuntu 的最新内核http://kernel.ubuntu.com/~kernel-ppa/mainline/
例如,要升级到 4.5.7,您可以转到上面的 ubuntu 内核链接并点击http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.5.7-yakkety/
然后,下载通用的 .deb 包。对于 64 位,这些将是:
- http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.5.7-yakkety/linux-headers-4.5.7-040507_4.5.7-040507.201606100436_all.deb
- http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.5.7-yakkety/linux-headers-4.5.7-040507-generic_4.5.7-040507.201606100436_amd64.deb
- http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.5.7-yakkety/linux-image-4.5.7-040507-generic_4.5.7-040507.201606100436_amd64.deb
这些最终都会出现在您的下载目录中,因此只需在那里打开一个终端并输入以下内容:
sudo dpkg -i lin*4.5.7*.deb
然后重建 grub 引导程序
sudo update-grub
然后,重新启动并选择新的内核,您的触摸板就会显示出来。
答案4
编辑50-synaptics.conf
文件:
sudo nano /usr/share/X11/xorg.conf.d/50-synaptics.conf
添加以下行:
MatchIsTouchpad "on"
Option "TapButton1" "1"
像这样:
Section "InputClass"
Identifier "touchpad catchall"
Driver "synaptics"
MatchIsTouchpad "on"
Option "TapButton1" "1"
Option "VertEdgeScroll" "1"
保存,退出并重启