尝试运行fastboot命令时,我的Ubuntu机器上有一个非常奇怪的问题.
当我跑:
fastboot devices
我得到
no permissions fastboot
所以我用adminidtrator权限运行命令:
sudo fastboot devices
然后我得到结果
sudo: fastboot: command not found
这怎么可能?我的路径中有目录,一切正常,没有sudo.
解决方法
每次需要运行fastboot时,都不要通过sudo强制执行权限,您可以永久地解决问题:
>使用lsusb来识别您的设备USB VendorID
>配置udev以在设备插入时设置适当的权限
>利润!
作为一个奖金 – 它也将修正为adb.
例如,在我的情况下(对于“Megafon SP-A20i”):
$fastboot devices no permissions fastboot $sudo fastboot devices [sudo] password for kaa: MedfieldA9055F28 fastboot $
我们来解决一下:
首先,我们需要识别设备:
a)寻找usb总线号码(黑客:我知道设备是基于Intel的一个)
$fastboot -l devices no permissions fastboot usb:1-1.2 $lsusb |grep 001 |grep -i intel Bus 001 Device 044: ID 8087:09ef Intel Corp. Bus 001 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub $
b)寻找其他Intel设备:
$lsusb |grep 8087 Bus 002 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub Bus 001 Device 044: ID 8087:09ef Intel Corp. Bus 001 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub $
Hubs不是智能手机,所以我们需要的USB供应商ID是“8087”.
其次,配置udev(你必须用你的“idVendor”值替换):
$sudo sh -c "echo '# Megafon SP-A20i' >> /etc/udev/rules.d/51-android.rules" $sudo sh -c "echo 'SUBSYSTEM==\"usb\",ATTR{idVendor}==\"8087\",MODE=\"0666\",GROUP=\"plugdev\"' >> /etc/udev/rules.d/51-android.rules" $sudo service udev restart udev stop/waiting udev start/running,process 1821 $
第三,重新插入您的设备,以允许udev执行它的魔法.
最后检查:
$fastboot -l devices MedfieldA9055F28 fastboot usb:1-1.2 $adb devices List of devices attached $fastboot reboot rebooting... finished. total time: 0.253s $sleep 90 $adb devices List of devices attached MedfieldA9055F28 device $
瞧!