Nexus 6P 更新和ROOT小记

Nexus 6P 更新和ROOT小记

CC 4.0 BY-SA

https://soandcandy.us

手上的Nexus 6P在我给它加了Zerolemon的电池背夹后继续发挥余热。但是Google发布8.1.0 (OPM3.171019.014, Feb 2018)后,后续不再支持Nexus 6P进行Update。于是想着给手机升级完最后一次更新,ROOT掉(以便更方便地使用某些APP)。

系统:Ubuntu 16.04 LTS

工具:ADB、FASTBOOT

首先把需要更新的原厂映像下载回来,解压后放在abd工具的文件夹内。进入adb文件夹后右击空白处运行终端。

  1. 从手机的设置进入“System–About Phone” ,连续点击7次Build number开启开发者模式;

  2. 进入开发者模式选项,选择Debugging的USB debugging,重新插一下手机就连接上了;

  3. 在终端输入以下命令:

    adb devices  #查看手机是否连接成功
    adb reboot bootloader #重启进入bootloader
    fastboot devices #查看手机是否连接成功
    
  4. 如果fastboot执行时,提示”No Permission, verify udev rules”,则需要修复一下:

    首先要确定你手机的id,拔掉手机,在终端输入lsusb,会得到如下类似的结果:

    Bus 002 Device 002: ID 8087:8000 Intel Corp. 
    Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    Bus 001 Device 002: ID 8087:8008 Intel Corp. 
    Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
    Bus 003 Device 005: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller
    Bus 003 Device 033: ID 0cf3:3004 Atheros Communications, Inc. AR3012 Bluetooth 4.0
    Bus 003 Device 047: ID 045e:07fd Microsoft Corp. Nano Transceiver 1.1
    Bus 003 Device 002: ID 174f:148d Syntek 
    Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    

    然后插上手机,重新执行一次:

    Bus 002 Device 002: ID 8087:8000 Intel Corp. 
    Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    Bus 001 Device 002: ID 8087:8008 Intel Corp. 
    Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
    Bus 003 Device 005: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller
    Bus 003 Device 033: ID 0cf3:3004 Atheros Communications, Inc. AR3012 Bluetooth 4.0
    Bus 003 Device 047: ID 045e:07fd Microsoft Corp. Nano Transceiver 1.1
    Bus 003 Device 002: ID 174f:148d Syntek 
    Bus 003 Device 060: ID 05c6:6765 Qualcomm, Inc. 
    Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    

    对比一下,会发现有一个不一样。把它的ID抄下来。如Bus 003 Device 060: ID 05c6:6765 Qualcomm, Inc.这样。

    在终端输入gksu gedit /etc/udev/rules.d/51-android.rules,就会得到如下的信息:

    # Phone name
    SUBSYSTEM=="usb", ATTR{idVendor}=="id_you_copied", MODE="0666", GROUP="plugdev"
    

    用你手机的id替换掉id_you_copied,保存退出,不要理会终端的提示。继续输入命令:

    sudo chmod a+r /etc/udev/rules.d/51-android.rules
    sudo service udev restart
    

    如果有错误提示,则输入以下命令:

    sudo udevadm control --reload-rules
    sudo udevadm trigger
    

    现在试一下,fastboot -l devices你的手机就出来了;

  5. 执行原厂映像文件夹中的flash-all:
    ./flash-all.sh

  6. 如果提示fastboot too old的话,编辑flash-all.sh文件,把以下语句删除,保存退出;

    “if ! grep -q dtbo.sig $(which fastboot); then
    echo “fastboot too old”
    exit 1
    fi”

  7. 刷完以后,把上述的1、2、3重做一次,把准备刷入twrp的定制版recovery和超级权限等工具,放到手机里。

    这里下载需要的工具:twrp-3.2.1-0-fbe-4core-angler.img和N5X-6P_BLOD_Workaround_Injector_Addon-AK2-signed.zip,找不到的话请在评论留下邮箱。

  8. 确保你的bootloader是解锁状态,fastboot flash recovery twrp.img刷入twrp,进入recovery模式,刷入BLOD Workaround和超级权限工具Magisk或superSU.

  9. 重启,收工。


Also published on Medium.

Leave a comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

One thought on “Nexus 6P 更新和ROOT小记”