永久禁用触摸板 – Lubuntu 16.04
所以这就是交易,我的Gateway T-1623上的触摸板基本上已损坏。 结果,我使用外部插头和播放鼠标。 我可以使用键盘,但是,如果我无意中在触摸板上呼吸,它会翻转,并阻止我使用外接鼠标,直到我执行以下操作:
sudo modprobe -r psmouse sudo modprobe psmouse
所以我的问题是,有没有办法在Lubuntu永久禁用我的触摸板(通过使用终端或其他方式),这样它将基本上使我的触摸板不起作用? 我感谢您在此事上能提供的任何帮助,并提前感谢您。
我相信是这样。 你将不得不使用一些命令并创建一个启动脚本,但你知道前者和后者并不难。
首先,运行xinput list
。 您的输出应类似于以下内容:
zachary@MCServer:~$ xinput list ⎡ Virtual core pointer id=2 [master pointer (3)] ⎜ ↳ Virtual core XTEST pointer id=4 [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)] ↳ Power Button id=7 [slave keyboard (3)]
如果可以,请事先拔掉鼠标。
现在您需要找到触控板的ID。 现在使用主ID(不是在主项目下缩进的ID)。 如果事实certificate主要项目同时覆盖鼠标和触摸板,请选择相应的子ID。
现在你需要运行
xinput set-prop DEVICEID "Device Enabled" 0
例如,如果我想禁用鼠标,我会使用2
作为DEVICEID
。
插上鼠标,确保它正常工作,触摸板不能正常工作。 如果鼠标不起作用,则运行
xinput set-prop DEVICEID "Device Enabled" 1
然后使用子ID再次运行第一个命令。
要在启动时应用此function,您需要将其设置为启动命令。 打开Startup Applications
(或桌面环境中的等效Startup Applications
)并添加第一个命令。
或者,您可以在内部断开触控板。
是的,这很容易。 将触摸板模块列入黑名单。
要找出它是什么模块,你可以运行
grep -iA 2 touchpad /proc/bus/input/devices
在这里你会看到像elan或synaptic这样的东西
然后
ls $(find /lib/modules/$(uname -r) -type d -name mouse)
查看当前内核的所有鼠标和触摸板模块。 触摸板将在名称中使用i2c
或touch
,鼠标模块将具有mouse
或usb
。 交叉引用这两个结果
编辑:我最近想出了如何通过一个复杂的命令可靠地获取驱动程序的名称,这对我来说非常简单:
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
我猜你的触摸板模块是synaptics_i2c.ko
。 在编写黑名单时,您将省略.ko
检查你是否有正确的模块
sudo modprobe -r synaptics_i2c
如果你有正确的模块,触摸板会立即死亡。 现在要防止它被加载:
使用.conf
扩展名在/etc/modprobe.d
目录中创建一个文件,其中包含单词blacklist synaptics_i2c
(替换为您的模块名称,不包括.ko
)。 例如
echo "blacklist synaptics_i2c" | sudo tee /etc/modprobe.d/blacklist-touch.conf
(但检查您选择的文件名是否已存在)
运行synclient TouchpadOff=1
以删除触摸板。
您可能希望检查并查看是否可以先在BIOS中禁用触摸板。 我的东芝和联想笔记本电脑都有这个选项。 如果设置可用,您可能更喜欢这个设置,因为它更容易记住如何撤消(只要您记得您使用它)。
这是我为Lubuntu 18.04所做的:
首选项> LXSession的默认应用程序> AutoStart>然后“添加”synclient TouchpadOff = 1
即使机器重新启动,我的触控板也会关闭。
我喜欢GUI的。
和平,艾德