Если вы посмотрите на это, /lib/udev/rules.d/60-keyboard.rules
то увидите, что с ним все перепутано. Это всего лишь часть слияния udev с systemd, которое произошло.
Все аппаратные правила скомпилированы в двоичную аппаратную базу данных. Они следуют за действительно странным форматом. Существующие правила для клавиатур, которые поставляются с Udev, живут в /lib/udev/hwdb.d/60-keyboard.hwdb
. Посмотрите на это, но не редактируйте его (обновления, вероятно, перезапишут его).
Чтобы добавить свои собственные правила, мы создадим новый файл /etc/udev/hwdb.d/
, запустив sudoedit /etc/udev/hwdb.d/61-keyboard-local.hwdb
. Все, что вам нужно сделать, это вставить в следующем -
Если вы используете модель 4000:
keyboard:usb:v045Ep00DB*
KEYBOARD_KEY_0c022d=pageup
KEYBOARD_KEY_0c022e=pagedown
Если вы используете модель 7000:
keyboard:usb:v045Ep071D*
KEYBOARD_KEY_0c022d=pageup
KEYBOARD_KEY_0c022e=pagedown
Это адаптировано из учебника, который вы опубликовали, поэтому вам может понадобиться настроить его на основе клавиатуры. Посмотрите lsusb
и убедитесь, что vendor:product
код выше (как v####p####
) является правильным. Это не сработает, если они не совпадают.
Как только вы закончите редактирование, перекомпилируйте то, hwdb
что использует udev:
sudo udevadm hwdb --update
И тогда вам может понадобиться повторно подключить. Если это клавиатура PS / 2, вам может потребоваться перезагрузка. В некоторых случаях вам также необходимо перезагрузить компьютер.