我使用带有busybox的buildroot构建的Linux映像,而mdev用于管理USB设备的插入和删除。
作为测试,我尝试将以下行添加到我的/etc/mdev.conf
文件中:
sd([a-z])([0-9]+) root:root 660 =drive%1%2
据我了解,%1
和%2
应该捕获与正则表达式匹配的带括号的标记,并替换它们。但是,这不会发生什么。
但是,当我插入USB存储设备时,我会在我的设备中出现一个名为/dev/drive%1%2
的字面文件,而不是/dev/drivea1
。
我做错了什么,这可能与Buildroot如何配置busybox配置有关吗?
答案 0 :(得分:4)
您需要在busybox配置中启用CONFIG_FEATURE_MDEV_RENAME_REGEXP
,该配置已在default busybox configuration bundled with Buildroot中禁用。
要启用它,请启动make busybox-menuconfig
并转到Linux System Utilities
- > mdev
- > Support /etc/mdev.conf
- > Support subdirs/symlinks
- > Support regular expressions substitutions when renaming device
。