wayland下面可以通过修改键盘属性,禁用笔记本键盘,以下是禁用方法.
1:获取相应键盘在系统中的编号
首先执行
sudo libinput debug-events
然后随便按下你需要禁用的键盘上面的按键这是终端会出现类似输出
event3 KEYBOARD_KEY +2.215s *** (-1) pressed
l event3 KEYBOARD_KEY +2.279s *** (-1) released
event3 KEYBOARD_KEY +2.359s *** (-1) pressed
l event3 KEYBOARD_KEY +2.442s *** (-1) released
event3 KEYBOARD_KEY +2.624s *** (-1) pressed
event3 KEYBOARD_KEY +2.803s *** (-1) pressed
最前面的
event3就是此键盘在系统中的编号.
2:获取键盘属性保存位置
执行
udevadm info --attribute-walk /dev/input/event3
就可获取键盘的属性,在输出中找到一下内容:
looking at parent device '/devices/platform/i8042/serio0/input/input3':
KERNELS=="input3"
SUBSYSTEMS=="input"
DRIVERS==""
ATTRS{inhibited}=="0"
ATTRS{name}=="AT Translated Set 2 keyboard"
找到inhibited参数所属的设备地址,例如上面的设备地址就是/devices/platform/i8042/serio0/input/input3
3:修改inhibited属性
inhibited参数默认为0,即允许输入,修改为1即可禁用键盘输入,可通过以下指令进行修改
echo 1|sudo tee /sys/devices/platform/i8042/serio0/input/input3/inhibited
注意修改参数需要root权限,而且如果你只有一个键盘的话请谨慎操作.
有一个python的脚本可以便捷操作: https://gitlab.com/S410/noinputs