Как программно отключить клавиатуру?
-
Возникла необходимость запускать на рабочей машине приложение для мониторинга, но при этом необходимо, чтобы пользователь не тыкал никуда куда не надо, то есть требуется лишить его этой возможности (заблокировать клавиатуру/мышь). Гугление ничего не дало, к сожалению. Подскажите, может кто сталкивался с подобной задачей?
-
судя по выводу cat за клавиатуру отвечает event14, но вот незадача - в папке device отсутствует enablexKDE:# echo 0 > /sys/class/input/eventX/device/enable
вот содержимое каталога:drwxr-xr-x 2 root root 0 May 26 04:44 capabilities lrwxrwxrwx 1 root root 0 May 26 04:49 device -> ../../../0003:046D:4023.0003 drwxr-xr-x 3 root root 0 May 26 04:44 event3 drwxr-xr-x 2 root root 0 May 26 04:44 id -rw-r--r-- 1 root root 4096 May 26 04:49 inhibited drwxr-xr-x 3 root root 0 May 26 04:44 input14::capslock drwxr-xr-x 3 root root 0 May 26 04:44 input14::compose drwxr-xr-x 3 root root 0 May 26 04:44 input14::kana drwxr-xr-x 3 root root 0 May 26 04:44 input14::numlock drwxr-xr-x 3 root root 0 May 26 04:44 input14::scrolllock -r--r--r-- 1 root root 4096 May 26 04:49 modalias -r--r--r-- 1 root root 4096 May 26 04:44 name -r--r--r-- 1 root root 4096 May 26 04:44 phys drwxr-xr-x 2 root root 0 May 26 04:49 power -r--r--r-- 1 root root 4096 May 26 04:44 properties lrwxrwxrwx 1 root root 0 May 26 04:44 subsystem -> ../../../../../../../../../../class/input -rw-r--r-- 1 root root 4096 May 26 04:44 uevent -r--r--r-- 1 root root 4096 May 26 04:49 uniq
-
Вот эта конструкция сработает, только до перезапуска, потом будет установлено значение по умолчанию "0"bur80:
судя по выводу cat за клавиатуру отвечает event14, но вот незадача - в папке device отсутствует enablexKDE:# echo 0 > /sys/class/input/eventX/device/enable
# echo 1 > /sys/class/input/eventX/device/inhibit
Но, если Вы на арче, то я давал ссылку с их вики, как сделать правило udev и все на этом -
Уже запамятовал, сейчас зашел в адрес, глянул и точно "inhibited", а не "inhibit", как я выше написал.bur80:inhibited
Но учтите, это только до перезагрузки компа!
Можно, при желании конечно, автоматизировать, созданием простенького скрипта, типа#!/usr/bin/env bash echo 1 > /sys/class/input/eventX/device/inhibited