资讯动态

WSL2 里 RealSense D435i 免 sudo 出深度流:3 条命令写对 udev 规则

发布时间:2026/9/19 1:18:33 来源:尧图企业网站定制
WSL2 里 RealSense D435i 免 sudo 出深度流3 条命令写对 udev 规则【免费下载链接】librealsenseRealSense SDK项目地址: https://gitcode.com/GitHub_Trending/li/librealsense把 D435i 插进 WSL2 的 Ubuntu 24.04lsusb 能查到 8086:0b3alibrealsenseRealSense SDK示例却报设备打不开只能反复输 sudo。本文用仓库自带的 udev 规则和一句用户组授权3 条命令让相机免 sudo 直接出深度流。先对号入座“找不到设备”和“没权限”是两种卡法卡住时你大概会看到这几种样子lsusb | grep 8086有输出能看到8086:0b3a但程序枚举不到相机程序能列出设备wait_for_frames()却抛RealSense error提示打开设备失败一切正常但只在sudo前缀下才能跑通。三种表现的共同根源只有一层内核把 Intel 的 USB 设备节点默认收归 root 管理普通进程没有读写权限SDK 自然打不开设备。udev 规则的作用就是在设备插入的瞬间改节点权限、把它划进一个你所在的组之后访问就不再依赖 root。原因清楚了动手。总共 3 条命令加一次拔插。 三步落盘 udev 规则并把自己加进 plugdev 组1. 确认内核已认到相机排除 WSL 没透传设备的情况。lsusb | grep 8086看到8086:0b3a就说明 D435i 已透传进 WSL2如果什么都没有先修 USB 透传别急着改规则。2. 把仓库自带的规则文件复制进 udev 规则目录让系统知道该给哪些设备开口子。在 librealsense 仓库根目录执行sudo cp config/99-realsense-libusb.rules /etc/udev/rules.d/这条命令只是搬文件不动任何权限覆盖旧版本也没关系以 config/99-realsense-libusb.rules 里的最新版为准。D435i 对应的就是其中这一行SUBSYSTEMSusb, ATTRS{idVendor}8086, ATTRS{idProduct}0b3a, MODE:0666, GROUP:plugdev逐项拆开看SUBSYSTEMSusb只在 USB 设备事件上触发其他设备不受影响ATTRS{idVendor}8086锁定 Intel 的厂商 IDATTRS{idProduct}0b3a锁定 D435i 这一具体型号同一文件还覆盖 D400 全系、T265 及 DFU 恢复模式设备MODE:0666把设备节点权限放开到全员可读写GROUP:plugdev设备归属 plugdev 组组内成员自动获得访问权3. 把自己加进规则指定的用户组权限跟着组走而不是跟着 root 走。sudo usermod -aG plugdev $USER执行完注销再登录一次组变更才会写进新会话。4. 让 udev 重读规则并对已插着的设备重新应用。sudo udevadm control --reload-rules sudo udevadm trigger重载加触发一句完成稳妥起见顺手拔插一次相机trigger 会按新规则重设节点权限。规则落盘后先验收再写代码。✅ 免 sudo 跑通深度流一条命令看结果不加 sudo直接跑仓库自带的示例源码编译的话可执行文件在 build 目录里./rs-hello-realsense预期输出是终端持续刷新这样一行The camera is facing an object 1.234 meters away数字随你离相机的距离实时变化。能稳定刷出它说明 udev 规则已生效相机免 sudo 出流成功。如果手头还有 RealSense Viewer枚举界面里能列出设备也是同一个信号要是第一条命令没跑通别硬试对着表查。卡住时对照这三条自查表现lsusb有 8086:0b3a程序仍报No device found或打开失败。原因规则重载了但没对已存在的设备重新应用。解法拔插一次相机或补一句sudo udevadm trigger。表现usermod执行成功groups里却查不到 plugdev。原因用户组变更只对新登录会话生效旧终端不继承。解法注销重新登录赶时间可在当前终端newgrp plugdev临时生效。表现规则文件明明在/etc/udev/rules.d/节点权限却还是 640 或 root 独占。原因同目录其他99-*.rules或一份更旧的规则抢在前面匹配。解法从仓库重新sudo cp config/99-realsense-libusb.rules /etc/udev/rules.d/覆盖再跑一遍 reload trigger 组合命令。udev 规则是 RealSense 在 Linux 上免 sudo 的根一次配好长期有效。想深入定位其他问题看 doc/troubleshooting.md想一键装或卸这套规则跑 scripts/setup_udev_rules.sh 即可。【免费下载链接】librealsenseRealSense SDK项目地址: https://gitcode.com/GitHub_Trending/li/librealsense创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价