ubuntu下已经内置了usb抓包工具——usb_mon,位置:/lib/modules/3.13.0-24-generic/kernel/drivers/usb/mon/usb_mon.ko(ubuntu14.04)
使用方法如下:
sudo mount -t debugfs none /sys/kernel/debug 一般linux已经默认挂上了
sudo modprobe usb_mon
于是在/sys/kernel/debug/usb目录下出现了devices和usbmon
1)查看当前的usb device: sudo cat /sys/kernel/debug/usb/devices出现如下:
2)监听全部bus上的USB数据包,cat /sys/kernel/debug/usb/usbmon/0u
监听Bus=2上的USB数据包,cat /sys/kernel/debug/usb/usbmon/2u
一旦有数据就打印出来
读懂上面的数据,需要参考usbmon.txt
URB tag :标志
TimeStamp:毫秒数
Event Type:
S - submission,
C - callback,
E - submission error.
URBType:BusNo:DeviceAddr:EndPointNum
Ci Co Control input and output
Zi Zo Isochronous input and output
Ii Io Interrupt input and output
Bi Bo Bulk input and output
URB Status: 0为没有错误。-XXX是错误码。