Android等待设备的fastboot
我正在尝试在我的NVIDIAtestinggit上加载一个自定义的内核。 我inputfastboot boot myImage
之后,我得到:
<Waiting for device>
我认为这是在我的设备上的快速启动模式的驱动程序的问题。 但我不知道如何在Linux上安装驱动程序。
你们知道如何安装驱动程序吗?
D Shu链接的页面的简短版本(没有可怕的popover广告)是当你的当前用户无法访问USB设备节点时,这个“等待设备”问题发生。 在快速启动模式下USB ID是不同的,所以你可以很容易地在adb中有权限而不是在fastboot中。
修复它(在Ubuntu上;其他系统可能稍有不同):
运行lsusb -v | less
lsusb -v | less
,find相关的部分,看起来像这样:
Bus 001 Device 027: ID 18d1:4e30 Google Inc. Couldn't open device, some information will be missing Device Descriptor: ... idVendor 0x18d1 Google Inc.
现在呢
sudo vi /etc/udev/rules.d/11-android.rules
没关系,如果这个文件还不存在, 用这样的一行来创build它,插入你自己的用户名和厂商ID:
SUBSYSTEMS=="usb", ATTRS{idVendor}=="18d1", MODE="0640", OWNER="mbp"
然后
sudo service udev restart
然后validation设备节点权限已更改:
ls -Rl /dev/bus/usb
甚至更短的版本是以root身份运行fastboot
。 但是,那么你需要运行每一个以root身份与设备通信的命令,这往往会导致其他问题。 更简单的是长期修复权限。
只要使用sudo
,快速启动需要Root权限
要使用fastboot命令,首先需要将设备置于快速启动模式:
$ adb reboot bootloader
一旦设备处于fastboot模式,您可以使用自己的内核来启动它,例如:
$ fastboot boot myboot.img
以上只会引导您的内核一次,旧的内核将在您重新启动设备时再次使用。 要replace设备上的内核,您需要将其闪存到设备:
$ fastboot flash boot myboot.img
希望有所帮助。
尝试使用编译器生成的fastboot
当这种情况发生。 文件path是out/host/linux(or other)/bin/fastboot
, sudo
也是需要的。 它在大部分时间都有效
在您的设备上转到设置 – >开发设置,并select“允许OEM解锁”如解锁您的Bootloader所示
至less这在我的MotoE 4G上工作。
在我的情况下(在Windows 10上),它会很好地连接到adb,我可以input任何adb
命令。 但一旦它到达引导装载程序使用adb reboot bootloader
我无法执行任何fastboot
命令。
我注意到,在设备pipe理器中,当我连接到设备时刷新了它。 接下来要做的是检查连接时发生了什么变化。 显然,fastboot设备是在Kedacom USB Device
里面的。 不知道是什么,但我更新设备使用不同的驱动程序,在我的情况下, Fastboot interface (Google USB ID)
,并解决了我waiting for device
问题
最短的答案是首先运行fastboot命令(在我的Ubuntu的情况下,即./fastboot-linux oem解锁)(在这里我使用的是Ubuntu 12.04和生根nexus4),然后以fastboot模式开启设备(在nexus 4中按下vol下键和电源button)