Я использую keyfuzz для отображения Alt-Eject на Alt-SysRq на клавиатуре Mac (см. здесь ). Но в недавнем (X) Ubuntus предпочтительнее использовать службу systemd для запуска необходимой команды при запуске. Интересно, как рано я смогу выполнить эту услугу? Например, какие WantedBy=
, After=
, Before=
и подобные атрибуты использовать, чтобы конфигурация работала и не была перезаписана? Будет ли он работать даже при загрузке в режиме восстановления?
здесь - это некоторая ссылка на зависимости между различными целями.
Редактировать: я поместил WantedBy=multi-user.target friendly-recovery.target
в раздел [Install]
созданного мной файла .service. Похоже, что это работает и в режиме восстановления корневой оболочки.
Я поместил WantedBy=multi-user.target friendly-recovery.target
в [Install]
раздел .service файла, который я создал. Это, кажется, работает также в корневой оболочке режима восстановления. Однако, я не знаю, если это - лучшая конфигурация для использования.
Вместо того, чтобы использовать keyfuzz
я пытался повторно отобразить scancode-> код клавиши как danzel, рекомендуемый в команде, и согласно инструкциям в/lib/udev/hwdb.d/60-keyboard.hwdb и в здесь .
я создал файл/etc/udev/hwdb.d/10-apple-keyboard.hwdb со следующим содержанием:
evdev:name:Apple, Inc. Apple Internal Keyboard / Trackpad:dmi:bvn*:bvr*:bd*:svnAppleInc.:pn*
KEYBOARD_KEY_c00b8=sysrq
Для файла я получил имя устройства от третьей строки вывода sudo evtest /dev/input/by-id/usb-Apple__Inc._Apple_Internal_Keyboard___Trackpad-evenkbd
, scancode извлечь ключа той же командой - видят связанный ответ - и код клавиши от /usr/include/linux/input-event-codes.h
(в нижнем регистре и без 'ключа _' префикс в вышеупомянутом.)
, Но все еще нажатие кнопки выброса инициировал KEY_EJECTCD и не KEY_SYSRQ как показано sudo uvtest
:
Event: time 1567436214.147340, type 4 (EV_MSC), code 4 (MSC_SCAN), value c00b8
Event: time 1567436214.147340, type 1 (EV_KEY), code 161 (KEY_EJECTCD), value 1
Event: time 1567436214.147340, -------------- SYN_REPORT ------------
я не могу подтвердить ключевое отображение:
udevadm info /dev/input/by-id/usb-Apple__Inc._Apple_Internal_Keyboard___Trackpad-event-kbd | grep KEYBOARD_KEY
, Который ничего не отображает.