Próbuję załadować nowy układ klawiatury po podłączeniu klawiatury USB, ale moja reguła udev nie działa.
SUBSYSTEM == „input”, ATTR {idVendor} == „062a”, ATTR {idProduct} == „0201”, GOTO = „usb_xmodmap_auto” LABEL = "usb_xmodmap_auto" ACTION == "add", RUN + = "/ usr / bin / xmodmap ~ / .usbXmodmap" AKCJA == "usuń", RUN + = "/ usr / bin / xmodmap ~ / .pndXmodmap"
Ponownie załadowałem zasady, używając:
> sudo udevadm control --reload-rules
i poprzez ponowne uruchomienie systemu, ale po podłączeniu klawiatury USB oryginalna xmodmap jest nadal ładowana, a zatem układ klawiatury jest nieprawidłowy, ale jeśli uruchomię polecenie w terminalu
> / usr / bin / xmodmap ~ / .usbXmodmaplub
> / usr / bin / xmodmap ~ / .pndXmodmap
działają dobrze.
Mam nadzieję, że ktoś może pomóc.
Edytować:
tylko po to, żeby bardziej pomóc, przeprowadziłem kilka testów udevadm:
> test udevadm --action = add /devices/platform/ehci-omap.0/usb1/1-2/1-2.3/1-2.3:1.1/input/input10
wyjścia:
polecenie_ruchomienia: wywołanie: test udevadm_test: wersja 151 Ten program służy wyłącznie do debugowania, nie uruchamia żadnego programu, określone za pomocą przycisku RUN. Może wyświetlać nieprawidłowe wyniki, ponieważ niektóre wartości mogą się różnić lub mogą być niedostępne podczas przebiegu symulacji. [...] plik_parse: czytanie „/etc/udev/rules.d/usb-keyboard.rules” jako pliku reguł udev_rules_new: reguły używają tokenów 100572 bajtów (8381 * 12 bajtów), bufor 21523 bajtów udev_rules_new: używany indeks tymczasowy 35380 bajtów (1769 * 20 bajtów) udev_device_new_from_syspath: urządzenie 0x3b4d8 ma devpath '/devices/platform/ehci-omap.0/usb1/1-2/1-2.3/1-2.3:1.1/input/input10' udev_rules_apply_to_event: RUN '/ sbin / modprobe -b $ env {MODALIAS}' /etc/udev/rules.d/80-drivers.rules:5 udev_rules_apply_to_event: gniazdo RUN: @ / org / freedesktop / hal / udev_event '/etc/udev/rules.d/90-hal.rules:2 udev_rules_apply_to_event: RUN '/ sbin / modprobe $ env {MODALIAS}' /etc/udev/rules.d/local.rules:31 udev_rules_apply_to_event: gniazdo RUN: / org / kernel / udev / monitor '/etc/udev/rules.d/run.rules:2 udev_rules_apply_to_event: RUN '/ usr / bin / xmodmap ~ / .usbXmodmap' /etc/udev/rules.d/usb-keyboard.rules:4 udevadm_test: UDEV_LOG = 6 udevadm_test: DEVPATH = / devices / platform / ehci-omap.0 / usb1 / 1-2 / 1-2.3 / 1-2.3: 1.1 / input / input10 udevadm_test: PRODUCT = 3 / 62a / 201/110 udevadm_test: NAME = "Klawiatura zgodna z USB" udevadm_test: PHYS = "usb-ehci-omap.0-2.3 / input1" udevadm_test: UNIQ = "" udevadm_test: EV == 1f udevadm_test: KEY == 837fff 2c3027 bf004444 0 0 1fe3 c04 a27c000 267bfa d941dfed 9e0000 0 0 0 udevadm_test: REL == 143 udevadm_test: ABS == 1 0 udevadm_test: MSC == 10 udevadm_test: MODALIAS = dane wejściowe: b0003v062Ap0201e0110-e0,1,2,3,4, k71,72,73,74,77,80,82,83,85,86,87,89,8A, 8B, 8C, 8E, 8F, 90,96,98,9B, 9C, 9E, 9F, A1, A3, A4, A5, A6, A7, A8, A9, AB, AC, AD, AE, B1, B2, B5, CE, CF, D0, D1, D2, D5, D9, DB, E2, EA, EB, 100,101,105,106,107,108,109,10A, 10B, 10C, 162,166,16A, 16E, 178,179,17A, 17B, 17C, 17D, 17F, 180,181,182,185,18C, 18D, 192,193,195,1A0,1A1,1A2,1A3,1A4,1A5,1A6,1A7,1A8,1A9,1AA, 1AB, 1AC, 1AD, 1AE, 1B0,1B1,1B7, r0,1,6,8, a20, m4, lsfw udevadm_test: ACTION = add udevadm_test: SUBSYSTEM = wejście udevadm_test: run: '/ sbin / modprobe -b input: b0003v062Ap0201e0110-e0,1,2,3,4, k71,72,73,73,78,89 , 8A, 8B, 8C, 8E, 8F, 90,96,98,9B, 9C, 9E, 9F, A1, A3, A4, A5, A6, A7, A8, A9, AB, AC, AD, AE, B1 , B2, B5, CE, CF, D0, D1, D2, D5, D9, DB, E2, EA, EB, 100,101,105,106,107,107,108,109,10A, 10B, 10C, 162,166,16A, 16E, 178,179,17A, 17B, 17C, 17D , 17F, 180,181,182,185,18C, 18D, 192,193,195,1A0,1A1,1A2,1A3,1A4,1A5,1A6,1A7,1A8,1A9,1AA, 1AB, 1AC, 1AD, 1AE, 1B0,1B1,1B7, r0,1 , 6,8, a20, m4, lsfw ” udevadm_test: run: 'socket: @ / org / freedesktop / hal / udev_event' udevadm_test: run: '/ sbin / modprobe input: b0003v062Ap0201e0110-e0,1,2,3,4, k71,72,73,77,7,80,82,8A , 8B, 8C, 8E, 8F, 90,96,98,9B, 9C, 9E, 9F, A1, A3, A4, A5, A6, A7, A8, A9, AB, AC, AD, AE, B1, B2 , B5, CE, CF, D0, D1, D2, D5, D9, DB, E2, EA, EB, 100,101,105,106,107,108,109,10A, 10B, 10C, 162,166,16A, 16E, 178,179,17A, 17B, 17C, 17D, 17F , 180,181,182,185,18C, 18D, 192,193,195,1A0,1A1,1A2,1A3,1A4,1A5,1A6,1A7,1A8,1A9,1AA, 1AB, 1AC, 1AD, 1AE, 1B0,1B1,1B7, r0,1,6 , 8, a20, m4, lsfw ” udevadm_test: run: 'socket: / org / kernel / udev / monitor' udevadm_test: run: '/ usr / bin / xmodmap ~ / .usbXmodmap'
i
> test udevadm --action = usuń /devices/platform/ehci-omap.0/usb1/1-2/1-2.3/1-2.3:1.1/input/input10
wyjścia:
polecenie_ruchomienia: wywołanie: test udevadm_test: wersja 151 Ten program służy wyłącznie do debugowania, nie uruchamia żadnego programu, określone za pomocą przycisku RUN. Może wyświetlać nieprawidłowe wyniki, ponieważ niektóre wartości mogą się różnić lub mogą być niedostępne podczas przebiegu symulacji. [...] plik_parse: czytanie „/etc/udev/rules.d/usb-keyboard.rules” jako pliku reguł udev_rules_new: reguły używają tokenów 100572 bajtów (8381 * 12 bajtów), bufor 21523 bajtów udev_rules_new: używany indeks tymczasowy 35380 bajtów (1769 * 20 bajtów) udev_device_new_from_syspath: urządzenie 0x3b4d8 ma devpath '/devices/platform/ehci-omap.0/usb1/1-2/1-2.3/1-2.3:1.1/input/input10' udev_rules_apply_to_event: gniazdo RUN: @ / org / freedesktop / hal / udev_event '/etc/udev/rules.d/90-hal.rules:2 udev_rules_apply_to_event: gniazdo RUN: / org / kernel / udev / monitor '/etc/udev/rules.d/run.rules:2 udev_rules_apply_to_event: RUN '/ usr / bin / xmodmap ~ / .pndXmodmap' /etc/udev/rules.d/usb-keyboard.rules:5 udevadm_test: UDEV_LOG = 6 udevadm_test: DEVPATH = / devices / platform / ehci-omap.0 / usb1 / 1-2 / 1-2.3 / 1-2.3: 1.1 / input / input10 udevadm_test: PRODUCT = 3 / 62a / 201/110 udevadm_test: NAME = "Klawiatura zgodna z USB" udevadm_test: PHYS = "usb-ehci-omap.0-2.3 / input1" udevadm_test: UNIQ = "" udevadm_test: EV == 1f udevadm_test: KEY == 837fff 2c3027 bf004444 0 0 1fe3 c04 a27c000 267bfa d941dfed 9e0000 0 0 0 udevadm_test: REL == 143 udevadm_test: ABS == 1 0 udevadm_test: MSC == 10 udevadm_test: MODALIAS = dane wejściowe: b0003v062Ap0201e0110-e0,1,2,3,4, k71,72,73,74,77,80,82,83,85,86,87,89,8A, 8B, 8C, 8E, 8F, 90,96,98,9B, 9C, 9E, 9F, A1, A3, A4, A5, A6, A7, A8, A9, AB, AC, AD, AE, B1, B2, B5, CE, CF, D0, D1, D2, D5, D9, DB, E2, EA, EB, 100,101,105,106,107,108,109,10A, 10B, 10C, 162,166,16A, 16E, 178,179,17A, 17B, 17C, 17D, 17F, 180,181,182,185,18C, 18D, 192,193,195,1A0,1A1,1A2,1A3,1A4,1A5,1A6,1A7,1A8,1A9,1AA, 1AB, 1AC, 1AD, 1AE, 1B0,1B1,1B7, r0,1,6,8, a20, m4, lsfw udevadm_test: ACTION = usuń udevadm_test: SUBSYSTEM = wejście udevadm_test: run: 'socket: @ / org / freedesktop / hal / udev_event' udevadm_test: run: 'socket: / org / kernel / udev / monitor' udevadm_test: run: '/ usr / bin / xmodmap ~ / .pndXmodmap'
co wydaje się wskazywać, że powinno działać, ale nie ma nadziei, że to pomoże uzyskać odpowiedź.