天天看點

Ubuntu下觸摸闆的開啟和關閉一、打開/關閉觸摸闆二、實作自動禁用/啟用觸摸闆參考網址

一、打開/關閉觸摸闆

很多人使用

modprobe

指令來打開和關閉觸摸闆,如下:

# 關閉觸摸闆
sudo modprobe -r psmouse
# 打開觸摸闆
sudo modprobe psmouse
           

其中,

modprobe

指令用來添加和移除Linux核心的子產品,而psmouse則表示PS/2接口滑鼠驅動子產品。現在的滑鼠一般是采用USB接口,而筆記本電腦(蘋果MAC除外)内置觸摸闆可以看作滑鼠型裝置,很可能是PS/2接口方式,從核心裡移除了它的驅動程式,觸摸闆自然不能用了,并且在裝置中也找不到它了。這時要想重新啟動觸摸闆隻能在核心中重新加載psmouse子產品。

另外,還可以使用

xinput

指令啟用和禁用觸摸闆。首先,輸入xinput檢視觸摸闆的名稱或ID,例如:

$ xinput
⎡ Virtual core pointer                    	id=2	[master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer              	id=4	[slave  pointer  (2)]
⎜   ↳ SIGMACHIP Usb Mouse                     	id=11	[slave  pointer  (2)]
⎜   ↳ FSPPS/2 Sentelic FingerSensingPad       	id=14	[slave  pointer  (2)]
⎣ Virtual core keyboard                   	id=3	[master keyboard (2)]
    ↳ Virtual core XTEST keyboard             	id=5	[slave  keyboard (3)]
   ...
           

檢視輸出得知觸摸闆裝置名是 “FSPPS/2 Sentelic FingerSensingPad” ,id一般等于14。接下來可以使用如下指令:

# 禁用
xinput --disable 14
# 啟用
xinput --enable 14
           

實際上,對于一個裝置,我們還可以檢視它的各類屬性,例如檢視觸摸闆的屬性:

$ xinput --list-props 14
Device 'FSPPS/2 Sentelic FingerSensingPad':
	Device Enabled (142):	1
	Coordinate Transformation Matrix (144):	1.000000, 0.000000, 0.000000, ......
	Device Accel Profile (273):	1
        ...
           

是以,還可以使用另一種形式來啟用或禁用觸摸闆:

# 禁用
xinput --set-prop 14 "Device Enabled" 0
# 啟用
xinput --set-prop 14 "Device Enabled" 1
           

上面的id(14)可随時替換成對應裝置的名稱,但使用id更友善。

二、實作自動禁用/啟用觸摸闆

Touchpad Indicator能夠在插入滑鼠時自動禁用觸摸闆,并且在滑鼠移除後重新啟用。在指令終端下運作如下指令安裝:

sudo add-apt-repository ppa:atareao/atareao
sudo apt-get update
sudo apt-get install touchpad-indicator
           

以上指令用到了PPA源,PPA 全稱為 Personal Package Archives(個人軟體包檔案),是 Ubuntu Launchpad 網站提供的一項服務。它允許個人使用者上傳軟體源代碼,通過 Launchpad 進行編譯并釋出為二進制軟體包,作為 apt/新立得源供其他使用者下載下傳和更新。運作

add-apt-repository

指令後便會在/etc/apt/sources.list.d目錄下生成對應的檔案源。有關PPA的詳細資訊可以檢視部落格文章: Ubuntu PPA軟體源的介紹與使用 , 在Ubuntu中添加和删除PPA的軟體源

另外,也可以編寫腳本來實作觸摸闆的打開和關閉功能。

#!/bin/bash

if [ `xinput list-props 14 | grep "Device Enabled" | awk  -F ':' '{print $2}'` == 1 ]; then
    xinput disable 14
else
    xinput enable 14
fi
           

進一步思考:無論是Touchpad Indicator還是自己編寫的腳本,怎樣讓它們在開機時就運作呢? 查找資料,發現一可以使用rcconf, bum等工具來配置,二可以使用

update-rc.d

指令設定開機啟動某個腳本(或服務程式)。 但不必要的程式可能會拖慢開機速度,是以比較好的做法是:隻添加那些确實有必要開機啟動的服務。

相關連結: Ubuntu下添加開機啟動項的2種方法 和 Ubuntu添加和設定開機自動啟動程式的方法

如何編寫初始化腳本(init-scripts)可詳細閱讀該連結: LSB: System Initialization

有關

source

.

(點号)指令:使用該指令啟動某個腳本

abc.sh

./abc.sh

啟動方式的本質差別在于,前者在同一個shell裡執行腳本,而後者是在一個子shell裡運作的。

相關連結:LINUX Shell腳本中點号和source指令

參考網址

Ubuntu下禁用和恢複觸摸闆

ubuntu下使用腳本自動禁用筆記本觸摸闆和鍵盤

Stopping of unnecessary services during startup

ubuntu下設定開機啟動服務

版權聲明:本文為CSDN部落客「weixin_33801856」的原創文章,遵循CC 4.0 BY-SA版權協定,轉載請附上原文出處連結及本聲明。

原文連結:https://blog.csdn.net/weixin_33801856/article/details/91622427

繼續閱讀