Warning : You may brick your device. Follow the instruction at your own risk.
Disclaimer: Unlocking your phone’s bootloader voids its warranty.
Prerequisite
1. Android Debug Bridge CLI tool and Android Fastboot protocol CLI tool. Easily available in debian via
apt-get install android-tools-adb android-tools-fastboot
2. Custom recovery
TWRP is used here. For androidone (code name sprout) use twrp-2.8.6.0-sprout.img
http://dl.twrp.me/sprout/twrp-2.8.6.0-sprout.img
3. Superuser access management
UPDATE-SuperSU-v2.02.zip
http://download.chainfire.eu/452/SuperSU/
4. Linux root access ( execute all commands in this guide as root )
5. USB data cable to connect mobile device with laptop
Activate Developer Options and USB debugging
Go to Settings -> About Phone and tap seven times on Build number to enable Developer option and then enable USB debugugging at same.
Communicate with android through adb
Connect mobile into laptop usb and agree with “Allow usb debugging” as asked by phone.
As root execute “adb devices” on linux and the device should be listed.
Before Going further take a full backup even without root
full backup of nonrooted android
oem unlock and flash recovery, supersu through fastboot
reboot android in fastboot mode through adb
adb reboot-bootloader
Once in fastboot mode adb can’t communicate with android anymore, hence need Fastboot protocol CLI tool. Verify the availability of device in fastboot mode
fastboot devices
Run the following from the folder contains recovery image and supersu
Flash recovery image
fastboot flash recovery twrp-2.8.6.0-sprout.img
Flash superuser zip
Reboot into normal mode
fastboot reboot
Push SuperSu zip into SD
adb push UPDATE-SuperSU-v2.02.zip /sdcard
Reboot into Recovery
adb reboot recovery
Install the SuperSu from recovery
Reboot into normal mode
Check root access in normal mode
adb shell su who am i
shell@sprout will be changed to root@sprout and obviously “who am i” is there.