Android fastboot等待设备

cod*_*ons 67 android fastboot

我正在尝试在我的NVIDIA测试git上加载自定义内核.我打字fastboot boot myImage后输入:

<Waiting for device> 
Run Code Online (Sandbox Code Playgroud)

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

你们知道如何安装驱动程序吗?

poo*_*lie 90

由D Shu链接的页面的简短版本(并且没有可怕的popover广告)是当您的当前用户无法访问USB设备节点时发生这种"等待设备"问题.USB ID在快速启动模式下有所不同,因此您可以轻松地在adb中获得权限,但不能在fastboot中获得权限.

修复它(在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.
Run Code Online (Sandbox Code Playgroud)

现在做

sudo vi /etc/udev/rules.d/11-android.rules
Run Code Online (Sandbox Code Playgroud)

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

SUBSYSTEMS=="usb", ATTRS{idVendor}=="18d1", MODE="0640", OWNER="mbp"
Run Code Online (Sandbox Code Playgroud)

然后

sudo service udev restart
Run Code Online (Sandbox Code Playgroud)

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

ls -Rl /dev/bus/usb
Run Code Online (Sandbox Code Playgroud)

更短的俗气版本只是fastboot以root 身份运行.但是,您需要运行以root身份与设备对话的每个命令,这往往会导致其他并发症.从长远来看,更简单的方法是修复权限.

  • +1较短的俗气版本.+2,如果你把最后一行放在最上面 (29认同)
  • 你绝对应该把最后一行放在最前面. (7认同)
  • 好吧,我们中的一些人不喜欢以willy nilly的方式运行:P但是,`sudo service udev restart`不起作用,权限没有改变.在互联网上寻找(https://bbs.archlinux.org/viewtopic.php?id=169103)以下内容对我有用:`udevadm control --reload`后跟:`udevadm trigger` (6认同)
  • 顺便说一句,没有人喜欢vi ...只需使用`sudo vim filename`.@airtonix (4认同)
  • 谁有非vim vi?:P (2认同)

小智 82

只需使用sudo,快速启动需要Root Permission

  • 它不需要root权限,只需要能够访问USB设备. (13认同)
  • 它实际上没有.随机wiki(即每个人都可以编辑的东西)不会改变它.它需要能够访问USB设备.它不需要root(虽然root通常意味着它可以访问USB设备..) (11认同)
  • @JuanCarlosAlpizarChinchilla你混淆了一些事情.不,您不需要root访问权限.您只需要访问USB设备.我不是特别了解Fedora,但你不需要root.解决问题的正确方法是:a)检查USB设备上的权限,并将您添加到有权访问的组(最有可能)或b)更改udev规则以授予您访问权限.您需要访问文件/设备,您不需要运行具有计算机可能授予的最多权限的内容.你可以运行sudo firefox,但你不应该.你可以运行sudo fastboot,但你不应该也不需要 (5认同)
  • 它实际上做到了!您也可以在http://wiki.cyanogenmod.org/w/Doc:_fastboot_intro#.3Cwaiting_for_device.3E_errors中找到此提示 (4认同)

der*_*ekg 32

要使用fastboot命令,首先需要将设备置于快速启动模式:

$ adb reboot bootloader
Run Code Online (Sandbox Code Playgroud)

设备处于快速启动模式后,您可以使用自己的内核启动它,例如:

$ fastboot boot myboot.img
Run Code Online (Sandbox Code Playgroud)

以上内容仅启动内核一次,重启设备时将再次使用旧内核.要更换设备上的内核,您需要将其闪存到设备:

$ fastboot flash boot myboot.img
Run Code Online (Sandbox Code Playgroud)

希望有所帮助.

  • 要从控制台成功执行**fastboot boot myboot.img**命令,设备需要处于**fastboot模式**,这就是我想指出的.即使这对提出问题的人没有帮助,也可能会帮助别人. (6认同)
  • 这个答案根本没用.显然,问的人知道,因为他们已经执行了那个确切的命令. (5认同)
  • 这正是我在过去一小时左右所困扰的.谢谢! (4认同)
  • 这对我有用.我刚刚做了adb reboot bootloader,然后fastboot设备开始显示连接的设备. (3认同)
  • 遗憾的是,我正处于`adb reboot bootloader` 工作正常的地步,但`fastboot [anything]` 仍然卡在等待设备上 (2认同)