fastboot和adb无法使用sudo

时间:2014-11-19 12:59:36

标签: android linux ubuntu sudo fastboot

尝试运行fastboot命令时,我的Ubuntu机器上出现了一个非常奇怪的问题。

当我跑步时:

fastboot devices

我得到了

no permissions   fastboot

所以我使用adminidtrator权限运行命令:

sudo fastboot devices

然后我得到了结果

sudo: fastboot: command not found

这怎么可能?我的PATH中有目录,一切都正常,没有sudo。

2 个答案:

答案 0 :(得分:34)

每次需要运行sudo时,您都可以永久解决问题,而不是通过fastboot强制执行权限:

  1. 使用lsusb标识您的设备USB VendorID
  2. 配置udev以在设备插入时设置适当的权限
  3. 的利润!
  4. 作为奖励 - 它也将固定为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)寻找其他英特尔设备:

    $ 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
    $ 
    

    集线器不是智能手机,因此 - 我们需要的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
    
    $ 
    

    瞧!

答案 1 :(得分:8)

您可以使用

  

sudo $(fastboot)设备