Answers:
我反复遇到一台笔记本电脑的问题,直到我注意到那台计算机的触摸板有自己的On / Off开关,我一定是偶然碰到了它。值得注意的是,该开关无助于将其重新打开。我只是变得小心一点,不要按它,不久之后,我开始使用带有集成无线触摸板的外部无线键盘,从那以后我就再也没有遇到过这个问题。
更新:( 注意:下面的链接断开,解决方案在上面) 自发布此“解决方案”以来,我发布了一条显然可以满足用户需求的评论。直到现在才知道这些评论仅会暂时保留并被自动删除,因此我在下面重新发布了有用的评论内容,可以将其保留给他人使用:
我正在分享对我有用的“解决方案”。今天,我想到Google寻找更适合您原始问题的解决方案,并找到了以下链接。这不是我个人认为的“方便”,但至少可以通过将其制成脚本来变得更加优雅。我发现了这个(见下文) – gyropyge 9月25日,20:06
按Alt+ F2并键入
gksudo modprobe -r psmouse
键入密码,按Enter,然后再次按Alt+ F2输入以下内容gksudo modprobe psmouse
,然后按Enter
我找到了一种方法来做到这一点:
首先,打开一个终端,并打印出所有输入设备,以找到要禁用的输入设备所需的ID。在终端中,键入:
xinput --list
下一步:请注意在每个输入设备的一长列中id = X的位置。您想要找到与要禁用的输入设备相对应的设备ID(也许听起来像“触摸板”)。然后将以下命令中的X替换为代表您要禁用的输入设备的ID号:
xinput disable X
注意:如果您不确定应该使用哪个设备ID来禁用触摸板,则可以通过测试随机ID并查看鼠标垫是否仍然有效来进行查找。确保您没有做任何重要的事情。保存所有工作,并准备执行禁用键盘之类的操作来重新启动计算机。(如果您无法在终端中输入内容,则尝试重新启用它可能会遇到麻烦。
然后,您必须运行最后一行(感谢赶上这位Arch Stanton!)
xinput enable X
原因:我非常需要这个问题的答案,因为我的触摸板遇到的问题使得无法进行任何形式的工作。突然,在使用笔记本电脑的某个随机时刻,显然没有理由,我的触摸板进入某种“特殊模式”。仅在我的触摸板上移动一根手指会导致屏幕滚动,而不是在屏幕上实际移动鼠标的光标,因此,如果不进行大量协调来说明滚动屏幕,就不可能使鼠标悬停在浏览器中的任何内容上和不动的鼠标。我想找到一种无需重新启动膝上型计算机即可重置触摸板的方法。从好的方面来说,使用上述方法重置触摸板实际上可以解决我的问题。
更新:为了更轻松地重置触摸板,我为上面列出的命令设置了热键。当我的触摸板滑动时,我只需要按Ctrl + Super + R组合键即可完成重置。快捷方便。
这是如何做:
-在主目录中创建一个文件,然后将其命名为“ touchpad-reset.sh”。
-在此文件中,放入上面列出的三个前三个命令中的两个(最后两个),但不要在设备上使用X id编号,因为它会随添加的外围设备(也许是?)而变化,您可以使用相反:
这是我的计算机在终端内部使用此命令的输出:
xinput --list
结果:
Virtual core pointer id=2 [master pointer (3)]⎜
↳ Virtual core XTEST pointer id=4 [slave pointer (2)]⎜
↳ Genius 2.4G Wireless Mouse id=10 [slave pointer (2)]⎜
↳ MSFT0001:00 06CB:75BD UNKNOWN id=13 [slave pointer (2)]⎜
↳ ELAN Touchscreen id=12 [slave pointer (2)]⎜
-现在,您要做的是,将xinput disable X和xinput enable X的X(以前是id)替换为与单引号内该id对应的名称。例如,从上面的内容开始,如果要在我的触摸板设备id = 13上执行此操作,则可以使用:
xinput disable 'MSFT0001:00 06CB:75BD UNKNOWN'
xinput enable 'MSFT0001:00 06CB:75BD UNKNOWN'
-现在,您要禁用名称而不是ID号,因为ID可能会随时间变化,然后您将禁用并启用其他设备。
最后,您需要授予权限以使该文件可执行。使用终端中的工作目录作为主目录(在其中创建文件)运行此命令:
chmod +x your_script_name.sh
因此,一旦使用写入内部的适当命令来制作此文件,并确保它位于您的主目录中,请执行以下步骤:
恭喜!玩得开心。
xinput enable X
。
enable
/ disable
也只能使用ID代替设备名称
重新启动笔记本电脑的触摸板驱动程序:
通过按Ctrl+ Alt+ 打开终端T 并执行以下命令
sudo modprobe -r psmouse
然后
sudo modprobe psmouse
我在这里找到了解决方案,也有一个USB鼠标的解决方案
如果您不知道触摸板使用的模块,则可以进行一些挖掘来找出答案。
grep -iA2 touchpad /proc/bus/input/devices
对我来说这回来了
N: Name="Elan Touchpad"
P: Phys=
S: Sysfs=/devices/platform/80860F41:03/i2c-11/i2c-ELAN0100:00/input/input10
然后查看此类别中可用的内核模块:
ls $(find /lib/modules/$(uname -r) -type d -name mouse)
对我来说回来了
appletouch.ko bcm5974.ko cyapatp.ko elan_i2c.ko gpio_mouse.ko
psmouse.ko sermouse.ko synaptics_i2c.ko synaptics_usb.ko vsxxxaa.ko
交叉引用两者-在我看来,我的触摸板模块是 elan_i2c.ko
编辑:我最近想出了如何通过一个复杂的命令可靠地获取正在使用的驱动程序的名称,而Terdon对我来说很好地简化了此操作
grep -hriPo 'DRIVER=\K.+' /sys 2>/dev/null | while read driver; do [ -e /lib/modules/$(uname -r)/kernel/drivers/input/mouse/"$driver"* ] && echo $driver; done
要检查您是否获得了正确的模块,请测试以下命令以将其从内核中卸载:
sudo modprobe -r elan_i2c
如果找到正确的模块,触摸板将立即死亡,因此您可以通过反复试验轻松地找到它。重新加载
sudo modprobe elan_i2c
这样可以有效地重启模块。您可以像这样一起运行这两个命令:
sudo modprobe -r elan_i2c && sudo modprobe elan_i2c
从暂停状态恢复时,我有时需要这样做。
魔术师。
我了解您正在运行Ubuntu 14.04;我的有点不同(如下):
这款笔记本电脑:Acer Swift 1(EUFI);x86-64位。
操作系统类型:Ubuntu 16.04 LTS
触摸板类型:SYNA7DAB:00 06CB:7DAC触摸板(synaptics_i2c.ko)。
提供的解决方案:https : //help.ubuntu.com/community/SynapticsTouchpad/ShortcutKey
创建一个bash文件脚本(如建议的那样:创建一个指向bash脚本的符号链接并映射一个热键);内容应如下:
#!/bin/bash
declare -a STATES=(1 0)
DEVICE=$(xinput list --name-only | grep Touchpad)
STATE=$(xinput list-props "$DEVICE" | grep 'Device Enabled' | sed 's/^.*:[ \t]*//')
xinput set-prop "$DEVICE" 'Device Enabled' ${STATES[$STATE]}
确保它具有可执行权限!
sudo chmod +x path/filename.sh
该解决方案对我自己非常有用。希望它也适用于您。
自身问题的个人详细信息(可能适用于您的情况)
出于某些未知的原因:笔记本电脑的触摸板将自动失去作用(但仍在运行AFAIK)。我试图删除基于USB的光电鼠标;却遇到了同样的问题。
xinput --list转储:
larvae@MST-Laptop:~/Desktop$ xinput --list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Logitech USB Receiver id=10 [slave pointer (2)]
⎜ ↳ SYNA7DAB:00 06CB:7DAC Touchpad id=12 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Video Bus id=6 [slave keyboard (3)]
↳ Power Button id=7 [slave keyboard (3)]
↳ Sleep Button id=8 [slave keyboard (3)]
↳ Logitech USB Receiver id=9 [slave keyboard (3)]
↳ HD WebCam id=11 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=13 [slave keyboard (3)]
↳ Acer WMI hotkeys id=14 [slave keyboard (3)]
grep -iA2触摸板/ proc / bus / input / devices dump:
larvae@MST-Laptop:~/Desktop$ grep -iA2 touchpad /proc/bus/input/devices
N: Name="SYNA7DAB:00 06CB:7DAC Touchpad"
P: Phys=i2c-SYNA7DAB:00
S: Sysfs=/devices/pci0000:00/0000:00:17.0/i2c_designware.4/i2c-9/i2c-SYNA7DAB:00/0018:06CB:7DAC.0003/input/input11
解决方案概述(由UBUNTU提供):https : //help.ubuntu.com/community/SynapticsTouchpad/ShortcutKey
我正在使用Apple Macbook Retina Pro;触摸板有时会停止工作。由于名称中不包含“ mouse”或“ touch”,因此上述大多数方法都找不到驱动程序。
要找到触摸板驱动程序,在我的情况下为bcm5974:
MacBookPro:~$ xinput list-props 11
Device 'bcm5974':
Device Enabled (147): 1`
...
然后卸载并重新加载:
MacBookPro:~$ sudo modprobe -r bcm5974
MacBookPro:~$ sudo modprobe bcm5974
解决了。
xinput --list
然后才能在此处使用。