树莓派为USB设备绑定固定的设备名
1.树莓派为USB设备绑定固定的设备名
1. 查看可用设备
- 将一个设备插入USB接口,查看设备名。
可以用以下命令查看:
# v4l2-ctl --list-devices
也可以去dev下直接查看多了哪个设备
我的是多了一个/dev/video25,后边会以此为例
2. 根据设备信息拼接配置文件
2.1 udevadm info
- 查看usb接口的信息
以 video25设备为例查看接口设备的信息
# udevadm info /dev/video25 P: /devices/platform/ffe00000.usb/usb1/1-1/1-1.2/1-1.2:1.0/video4linux/video25 N: video25 S: v4l/by-id/usb-ICT-tek_ICT_CAMERA_GS_B10_200901010001-video-index0 S: v4l/by-path/platform-ffe00000.usb-usb-0:1.2:1.0-video-index0 E: DEVLINKS=/dev/v4l/by-id/usb-ICT-tek_ICT_CAMERA_GS_B10_200901010001-video-index0 /dev/v4l/by-path/platform-ffe00000.usb-usb-0:1.2:1.0-video-index0 E: DEVNAME=/dev/video25 E: DEVPATH=/devices/platform/ffe00000.usb/usb1/1-1/1-1.2/1-1.2:1.0/video4linux/video25 E: ID_BUS=usb E: ID_MODEL=ICT_CAMERA_GS_B10 E: ID_MODEL_ENC=ICT\x20CAMERA\x20GS\x20B10 E: ID_MODEL_ID=0567 E: ID_PATH=platform-ffe00000.usb-usb-0:1.2:1.0 E: ID_PATH_TAG=platform-ffe00000_usb-usb-0_1_2_1_0 E: ID_REVISION=0001 E: ID_SERIAL=ICT-tek_ICT_CAMERA_GS_B10_200901010001 E: ID_SERIAL_SHORT=200901010001 E: ID_TYPE=video E: ID_USB_DRIVER=uvcvideo E: ID_USB_INTERFACES=:0e0100:0e0200: E: ID_USB_INTERFACE_NUM=00 E: ID_V4L_CAPABILITIES=:capture: E: ID_V4L_PRODUCT=ICT CAMERA GS B10: ICT CAMERA G E: ID_V4L_VERSION=2 E: ID_VENDOR=ICT-tek E: ID_VENDOR_ENC=ICT-tek E: ID_VENDOR_ID=0bda E: MAJOR=81 E: MINOR=31 E: SUBSYSTEM=video4linux E: USEC_INITIALIZED=2038367
-
选择一个USB接口信息的唯一值,用于区分该接口。经过比较,我选择的是
ID_PATH=platform-ffe00000.usb-usb-0:1.2:1.0
-
取到
SUBSYSTEM=="video4linux"
-
将上边两个值拼成配置文件的一条信息
SUBSYSTEM=="video4linux", ENV{ID_PATH}=="platform-ffe00000.usb-usb-0:1.2:1.0", SYMLINK+="liuBeiTest01"
SYMLINK+=
是在/dev
下添加一个软连接指向该设备,后边值写自定义设备的名即可
2.2 --attribute-walk
如果udevadm info
命令输出的信息找不到两个设备的区别,则可用下边的命令查看信息
# udevadm info --attribute-walk --name=/dev/video25
挑可以区分的值拼入配置信息。
比如本次我们的摄像头接入后,显示两个设备。
udevadm info
的信息中没有可以区分的唯一信息。
我们对比了两个设备的udevadm info --attribute-walk --name=/dev/video25
信息,发现可以用index信息区分,所以将该信息拼入配置信息。
3. 给USB接口设备绑定设备名
- 将上边拼出的配置文件内容,写入
/etc/udev/rules.d/98-com.rules
文件中
SUBSYSTEM=="video4linux", ENV{ID_PATH}=="platform-ffe00000.usb-usb-0:1.2:1.0", SYMLINK+="liuBeiTest01"
- 重启服务器
reboot
4. 测试
向USB插入设备,系统内多了一个 /dev/liuBeiTest01 的软连接指向接入该端口的设备
如果此时接入该usb的设备显示是
/dev/video25
则软连接指向/dev/video25
;如果是/dev/video26
则指向/dev/video26
合集:
- 其他相关
分类:
常用服务 / 未分类服务
posted on 2022-09-22 21:18 运维开发玄德公 阅读(127) 评论(0) 编辑 收藏 举报 来源
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)