整个平板电脑不再在亚行设备上显示(他们在一周前工作得很好)。 其他Android设备的工作(如我的Nexus 5手机)。 这是我第一次面对这个问题。 我已经阅读并尝试了我在SO和其他站点find的大多数解决scheme,但都无济于事。 情况如下:
lsusb
显示为Bus 010 Device 004: ID 18d1:dddd Google Inc.
.。 /etc/udev/rules.d/51-android.rules
并添加了SUBSYSTEM=="usb", ATTRS{idVendor}=="18d1", MODE="0666"
(以及其他几个属性组合)。 udev
通过sudo service udev restart
。 奇怪的是,即使我清空/etc/udev/rules.d/51-android.rules
文件并重新启动udev
守护进程, adb
仍然检测到我的Nexus 5手机。
我记得我在这个问题发生之前做的改变:
udev
变化/问题在这里?) 欢迎提出任何进一步的build议,在此先感谢。
编辑:当按照build议运行lsusb -v
,我可以看到这个描述:
bInterfaceClass 8 Mass Storage bInterfaceSubClass 6 SCSI bInterfaceProtocol 80 Bulk-Only iInterface 1 Mass Storage
而Nexus 5显示为
bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 255 Vendor Specific Subclass bInterfaceProtocol 0 iInterface 4 MTP
编辑: 平板电脑在其他电脑 (Windows和Linux) 通过亚行完美工作 。 所以这一定是我的盒子有问题。
编辑:正如在评论中所build议的,我尝试在TCP模式下的ADB,并正常工作。 运行dmesg
我可以看到系统正在尝试使用ndiswrapper
加载ADB的Windows驱动程序
[277701.803751] usb 1-4: reset high-speed USB device number 48 using ehci-pci [277701.952803] ndiswrapper (load_wrap_driver:103): couldn't load driver android_winusb; check system log for messages from 'loadndisdriver'
此消息不会显示在ADB通过USB正常工作的其他Linux机器上。
由于相同的设备在其他PC上工作,您可以排除平板电脑方面的硬件问题。 更多的事情要检查:
$ pkill adb
$ sudo adb devices
lsusb
和其他功能按预期工作。 运行dmesg
会给你所需的信息来解决你的问题,可能是一个干扰的设备驱动程序。 尝试使用rmmod
/ modprobe
卸载它。 自12.10+以来的差异是MTP支持。 我知道14.04在手机插入后自动使用它,这应该比“大容量存储”更快,更简单。 也许这是阻碍你,你应该找到一种方法来禁用它从PC端或设备?