1

我在获取有关/dev/usb/lp*设备的信息时遇到问题。

lsusb命令给了我 USB 总线和设备 ID,以及设备名称,但我不知道如何让它告诉我相应/dev/usb/lp*设备的名称。

我没有可用的 CUPS。

4

1 回答 1

1

您可以使用libudev获取以下命令的等效项:

$ udevadm info -a /dev/usb/lp*

在我的电脑上打印如下:

  looking at device '/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/1-1.3:1.1/usbmisc/lp2':
    KERNEL=="lp2"
    SUBSYSTEM=="usbmisc"
    DRIVER==""

  looking at parent device '/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/1-1.3:1.1':
    KERNELS=="1-1.3:1.1"
    SUBSYSTEMS=="usb"
    DRIVERS=="usblp"
    ...

  looking at parent device '/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3':
    KERNELS=="1-1.3"
    SUBSYSTEMS=="usb"
    DRIVERS=="usb"
    ...
    ATTRS{idProduct}=="341b"
    ATTRS{idVendor}=="04e8"
    ...

他们就在那里!通缉犯idProductidVendor

您还可以通过/sys手动导航目录来获取信息:

$ ls -l /dev/usb/lp2
crw-rw---- 1 root lp 180, 2 Sep 27 11:46 /dev/usb/lp2

$ readlink -f /sys/dev/char/180:2
/sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/1-1.3:1.1/usbmisc/lp2

$ cat /sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/{idVendor,idProduct}
04e8
341b
于 2015-09-28T19:45:37.460 回答