我很难自动加载小工具模块并将usb0设备作为eth接口启动.有问题的接口是g_ether,用于嵌入式Linux设备并连接到PC.
我想有一种方法可以从插件中查看事件并使用udev运行脚本.当我将设备插入PC时,我看不到任何事件.我尝试了udevadm监视器的不同变体,我不知道如何找出我可以用作moddebe小工具模块的udev规则.
我试图加载otg模块的部分原因是因为我们主要使用g_ether.我想使用avahi-autoipd,但它在插入之前获得了一个IP地址.如果我在网络接口中使用allow-hotplug,它在插入时就不会自动启动接口.所以从理论上讲,我想插入设备到PC,在新的网络接口上运行avahi-autoipd以检索IP,并使用dhcpd为主机提供一个.
由于其他人开始帮助我在*(重新发布在这里),我有更多的信息.
/sys/bus/usb/devices$ls
1-0:1.0 2-0:1.0 3-0:1.0 3-1 3-1:1.0 usb1 usb2 usb3
[ 4297.515400] g_ether gadget: high speed config #2: RNDIS
[ 4300.379021] g_ether gadget: high speed config #1: CDC Ethernet (ECM)
sys/bus/usb/devices$ls
1-0:1.0 2-0:1.0 3-0:1.0 3-1 3-1:1.0 usb1 usb2 usb3
我试过跑步
udevadm monitor --environment
udevadm monitor --environment --udev
udevadm monitor
udevadm monitor --kernel
udevadm monitor --kernel --udev
拔出并插入设备不会显示任何内容.该联机帮助页说“
监听由udev规则发出的内核uevents和事件“我的设备上没有规则.所以我假设这可能是为什么没有打印出来,即使我尝试用其他硬件做一些事情?
我正在运行嵌入式Linux发行版.我想我可能没有桌面上的所有东西?
它引起了我的注意,我的g_ether模块可能有问题?这些产出永远不变.
cat / sys / class / net / usb0 / carrier
cat:读错误:参数无效
cat / sys / class / net / usb0 / operstate
下
解决方法:
uevent的USB特定变量在内核函数usb_uevent中设置.您可以跟踪是否调用此函数.