Android 快速启动等待设备

我试图在我的 NVIDIA 测试 git 上加载一个定制的内核。 我输入 fastboot boot myImage,然后得到:

<Waiting for device>

我认为这是我的设备上的 fastboot模式驱动程序的一个问题。 但我不知道如何在 linux 上安装驱动程序。

你们知道怎么安装驱动程序吗?

149610 次浏览

这个链接页面的简短版本(没有可怕的弹出广告)是,这个“等待设备”的问题发生在当前用户无法访问 USB 设备节点时。USB id 在快速启动模式下是不同的,因此您可以很容易地在 adb 中获得对它的权限,而在 fast boot 中则不然。

要修复它(在 Ubuntu 上; 其他系统可能略有不同) :

运行 lsusb -v | less并找到相关的部分,看起来像这样:

Bus 001 Device 027: ID 18d1:4e30 Google Inc.
Couldn't open device, some information will be missing
Device Descriptor:
...
idVendor           0x18d1 Google Inc.

Now do

sudo vi /etc/udev/rules.d/11-android.rules

如果这个文件不存在也没关系; 用这样一行代码创建它,插入您自己的用户名和供应商 ID:

SUBSYSTEMS=="usb", ATTRS{idVendor}=="18d1", MODE="0640", OWNER="mbp"

那么

sudo service udev restart

然后验证设备节点权限已更改:

ls -Rl /dev/bus/usb

The even shorter cheesy version is to just run fastboot as root. But then you need to run every command that talks to the device as root, which tends to cause other complications. Simpler just to fix the permissions in the long run.

只要使用 sudo,快速启动需要根权限

To use the 快速启动 command you first need to put your device in fastboot mode:

$ adb reboot bootloader

一旦设备进入快速启动模式,你可以用你自己的内核启动它,例如:

$ fastboot boot myboot.img

以上操作只会引导您的内核一次,当您重新启动设备时,旧的内核将再次被使用。要替换设备上的内核,您需要将其闪存到设备上:

$ fastboot flash boot myboot.img

希望能帮上忙。

The shortest answer is first run the fastboot command (in my ubuntu case i.e. ./fastboot-linux oem unlock) (here i'm using ubuntu 12.04 and rooting nexus4) 然后在快速启动模式下启动设备(在连接4中按 vol-down 键和电源按钮)

在你的设备上转到设置-> 开发设置,并选择“允许 OEM 解锁” 如 解锁你的引导程序所示

至少在我的 MotoE 4G 上是这样的。

在我的例子中(在 Windows10上) ,它可以很好地连接到 adb,我可以输入任何 adb命令。但是当它使用 adb reboot bootloader到达引导加载程序时,我无法执行任何 fastboot命令。

我注意到在设备管理器中,当我连接到设备时,它会刷新。接下来要做的是检查连接时发生了什么变化。显然快速启动装置在 Kedacom USB Device里面。不太确定那是什么,但我更新了设备,使用不同的驱动程序,在我的情况下是 Fastboot interface (Google USB ID),这修复了我的 waiting for device问题

发生这种情况时,尝试使用编译器生成的 fastboot。 文件路径是 out/host/linux(or other)/bin/fastboot 还需要 sudo。 大多数情况下都有效。