事情是這樣的,我的 Gateway T-1623 上的觸控板基本上壞了。因此,我使用外接即插即用滑鼠。我可以很好地使用鍵盤,但是,如果我不小心在觸控板上呼吸,它就會翻轉,並阻止我使用外接滑鼠,直到我執行以下操作:
sudo modprobe -r psmouse
sudo modprobe psmouse
所以我的問題是,有沒有辦法在 Lubuntu 中永久停用我的觸控板(透過使用終端或其他方式),這樣它基本上會使我的觸控板無法工作?感謝您在此事上提供的任何幫助,並提前感謝您。
答案1
我相信是這樣。您必須使用一些命令並製作啟動腳本,但您知道前者和後者並不難做到。
第一次運行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)。如果發現主項同時覆蓋了滑鼠和觸控板,請選擇對應的子 ID。
現在你需要運行
xinput set-prop DEVICEID "Device Enabled" 0
例如,如果我想停用滑鼠,我會使用2
for DEVICEID
。
插入滑鼠並確保它可以工作而觸控板不能。如果滑鼠不起作用,則運行
xinput set-prop DEVICEID "Device Enabled" 1
並使用子 ID 再次執行第一個命令。
若要使其在啟動時套用,您需要將其設為啟動命令。打開Startup Applications
(或桌面環境中的等效項)並新增第一個命令。
或者,您可以在內部斷開觸控板的連接。
答案2
是的,這很容易。將觸控板模組列入黑名單。
要找出它是什麼模組,您可以運行
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
如果您使用了正確的模組,觸控板將立即失效。現在要防止它被載入:
/etc/modprobe.d
在目錄中建立一個副.conf
檔名包含以下單字的檔案blacklist synaptics_i2c
(替換為您的模組名稱,不包括.ko
)。例如
echo "blacklist synaptics_i2c" | sudo tee /etc/modprobe.d/blacklist-touch.conf
(但請檢查您選擇的檔案名稱是否尚不存在)
答案3
運行synclient TouchpadOff=1
以卸下觸控板。
答案4
這是我為 Lubuntu 18.04 所做的:
首選項>LXSession的預設應用程式>自動啟動>然後「新增」synclient TouchpadOff=1
即使機器重新啟動,我的觸控板也會關閉。
我確實喜歡 GUI。
和平,艾德