ここでの最終目標はマウスプラグのタッチパッドをオンまたはオフにすることであるため、udevadmを使用してudevデータベースからマウスとタッチパッドの一部のプロパティを取得しようとしましたが、これがどのように機能するかを理解できず、残念ながらマニュアルページはそうではありません。そうですね。私にとっては十分明確ではありません…
$lsb_release-irc 出版社ID:Debian バージョン: 8.4 コードネーム:提示
私が探している情報は次のとおりです。
KERNEL=="input16"
SUBSYSTEM=="input"
DRIVER==""
ATTR{name}=="Bluetooth Laser Travel Mouse"
ATTR{phys}=="5c:e0:c5:9d:63:fd"
ATTR{uniq}=="00:07:61:ec:be:5c"
ATTR{properties}=="0"
ここで私はこれを試しました:
$ udevadm info -a /sys/devices/pci0000\:00/0000\:00\:1c.3/0000\:03\:00.0/usb2/2-1/2-1\:1.0/0003\:1EA7\:0064.0002/input/input25/mouse1/`
わかりました。
不明なデバイス、/dev/、または/sysの絶対パス。
監視すると、次の結果が表示されます。
$ udevadm monitor -k -s input
monitor will print the received events for:
KERNEL - the kernel uevent
KERNEL[4375.486738] remove /devices/pci0000:00/0000:00:1c.3/0000:03:00.0/usb2/2-1/2-1:1.0/0003:1EA7:0064.0002/input/input25/mouse1 (input)
KERNEL[4375.496500] remove /devices/pci0000:00/0000:00:1c.3/0000:03:00.0/usb2/2-1/2-1:1.0/0003:1EA7:0064.0002/input/input25/event11 (input)
KERNEL[4375.532441] remove /devices/pci0000:00/0000:00:1c.3/0000:03:00.0/usb2/2-1/2-1:1.0/0003:1EA7:0064.0002/input/input25 (input)
KERNEL[4377.840574] add /devices/pci0000:00/0000:00:1c.3/0000:03:00.0/usb2/2-1/2-1:1.0/0003:1EA7:0064.0003/input/input26 (input)
KERNEL[4377.840667] add /devices/pci0000:00/0000:00:1c.3/0000:03:00.0/usb2/2-1/2-1:1.0/0003:1EA7:0064.0003/input/input26/mouse1 (input)
KERNEL[4377.840759] add /devices/pci0000:00/0000:00:1c.3/0000:03:00.0/usb2/2-1/2-1:1.0/0003:1EA7:0064.0003/input/input26/event11 (input)
だから私はこれを試しました。
$ udevadm info -a -p /sys/devices/pci0000\:00/0000\:00\:1c.3/0000\:03\:00.0/usb2/2-1/2-1\:1.0/0003\:1EA7\:0064.0002/input/input25/
この
$ udevadm info -a -p /devices/pci0000\:00/0000\:00\:1c.3/0000\:03\:00.0/usb2/2-1/2-1\:1.0/0003\:1EA7\:0064.0002/input/input25/
そしてこの結果を得ました
システムパスが見つかりません。
いくつかの属性が得られた唯一の方法は、次のコマンドを使用することでした。
$ udevadm info --query=all --name=/dev/input/mouse1
わかりました。しかし、私が探している不動産はありません...(例ATTR{name}
:)
P:/devices/pci0000:00/0000:00:1c.3/0000:03:00.0/usb2/2-1/2-1:1.0/0003:1EA7:0064.0003/input/input26/mouse1 N:入力/マウス1 S:入力/by-id/usb-1ea7_2.4G_Wireless_Mouse-mouse S: パス/pci-0000:03:00.0-usb-0:1:1.0-mouse 入力/押す E: DEVLINKS=/dev/input/by-id/usb-1ea7_2.4G_Wireless_Mouse-mouse /dev/input/by-path/pci-0000:03:00.0-usb-0:1:1.0-mouse E:DEVNAME=/dev/input/mouse1 E: DEVPATH=/devices/pci0000:00/0000:00:1c.3/0000:03:00.0/usb2/2-1/2-1:1.0/0003:1EA7:0064.0003/input/input26/mouse1 E:ID_BUS=USB E:ID_input=1 E: ID_INPUT_MOUSE=1 E: ID_MODEL=2.4G_Wireless_Mouse E: ID_MODEL_ENC=2.4G\x20無線\x20マウス E: ID_MODEL_ID=0064 E: ID_PATH=pci-0000:03:00.0-usb-0:1:1.0 E: ID_PATH_TAG=pci-0000_03_00_0-usb-0_1_1_0 E: ID_REVISION=0200 E: ID_SERIAL=1ea7_2.4G_Wireless_Mouse E: ID_TYPE=非表示 E: ID_USB_DRIVER=usbhid E: ID_USB_INTERFACES=:030102: E: ID_USB_INTERFACE_NUM=00 E: ID_VENDOR=1ea7 E: ID_VENDOR_ENC=1ea7 E: ID_VENDOR_ID=1ea7 E: メイン=13 E: 小さい=33 E:サブシステム=入力 E: USEC_INITIALIZED=77840674
明らかに、デバイス属性を取得するためにudevにクエリする方法について誤解があるようです。
私が間違っていることを知っている人がいれば、どんな意見でも歓迎します!
ありがとうございます!
マット。
答え1
入力番号は起動プロセス中に同じままであるという保証がないため、入力番号が変更されました(25
試してみたものから)。26
努力する
udevadm info -q path -n /dev/input/by-id/usb-1ea7_2.4G_Wireless_Mouse-mouse
by-id
目的の形式のパスを取得するには、定数シンボリックリンクを使用しますudev
。その後、次のようになります。
udevadm info -a -p /path/you/just/got
パスに沿って移動し、すべての属性を出力します(識別するには親属性を使用する必要があるかもしれません)。
以下を組み合わせることもできます。
udevadm info -a -p $(udevadm info -q path -n /dev/whatever)
答え2
使った
udevadm info -a /dev/hidraw0
答え3
たとえば、次のスラッシュ(/
)を削除します。udevadm info -a -p /sys/class/net/enp0s3
udevadm info -a -p /sys/class/net/enp0s3/