i have downloaded the corresponding Driver binaries related to my device , ( https://developers.google.com/android/drivers )
one file is for Vendor -google , the other file is GPS, Audio, Camera, Gestures, Graphics, DRM, Video, Sensors - Qualcomm
when i extract the two files the both open as *textqualcomm.sh* etc they are both .sh format how would i run this in fastboot ?
You can't run Android shell scripts via Fastboot: Fastboot deals with device's bootloader but not with Android OS..
xXx yYy said:
You can't run Android shell scripts via Fastboot: Fastboot deals with device's bootloader but not with Android OS..
Click to expand...
Click to collapse
ok , how do i run it ?
1.
If not already done, root phone's Android
2.
Install an app like SH Script Runner ( downloadable from APKPure )
3.
Mount the partion(s) were driver should get installed to as RW
4.
Stop Android ( cmd: adb shell stop )
5.
By means of SH Script Runner execute the scripts in question as root
6.
Start Android ( cmd: adb shell start )
7.
Reboot phone
xXx yYy said:
1.
If not already done, root phone's Android
2.
Install an app like SH Script Runner ( downloadable from APKPure )
3.
Mount the partion(s) were driver should get installed to as RW
4.
Stop Android ( cmd: adb shell stop )
5.
By means of SH Script Runner execute the scripts in question as root
6.
Start Android ( cmd: adb shell start )
7.
Reboot phone
Click to expand...
Click to collapse
thank you, can i do it in linux and not use SH script runner ?
SH Script Runner is an ANDROID executable what is installled at phone and launched there.
Related
Hello everyone!
I know some of you are still roaming around here and there trying to root your phone; others wanting to root the phone without knowing what rooting is...
Wandering if it's illegal or not; and why should they be Rooting their Devices.
Well that's why i've done this tutorial with a lot of help from different sources.
It has been almost 2 days reading; reading; reading; and writing this tutorial to simplify and compact information scattered around this forum and the web.
Knowing the Basics
In order to explain everyone (specially noobs / starters); please follow this link.
(I advise you to open it in a "new Tab" or "Window"; so you don't loose yourself)
One thing before starting:
I found out that it is important to reboot the device and the PC after installing and Updating the following apps: "Super one Click" and SDK with your firmware version API's.
Some errors that occur during the Rooting with the "Super One Click" happen due to some kind of need to reboot of the machine and device.
As mentioned in Step #9
[...]
Now that you understand what rooting is; let's ROOT your Android.
P.S - As you already know; you are responsible for doing this process; or for anything that goes wrong.
“Rooting Your Android Phone”
Requirements:
Download: "android-sdk_r15" or Later Version.
After Downloading and Installing SDK; download the API's according to your Firmware Version.
(Check Step #1 and #12 of the Easy Rooting Method)
Download: "Super One Click Program"
(Link Goes to XDA Developers "Super one Click Program" Thread)
Download: "Java SE Development Kit 7" (or later)
I. (Easy Method - Using “One Click Rooting Program”)
Note: This method works for almost every Android phone.
1) Take a note of you brand model and android Firmware/ROM installed on you device.
(You need to know the version of your O.S to download your SDK API's later)
i.e:
“Model: Acer C4 Liquid Mini (E310)”
“O.S: Android Froyo v2.2”
2) Download/Install your Android Drivers. (PC)
3) Download/Install your Android SDK/ADB. (PC)
4) Open SDK (as Administrator) and mark the following things to download:
- “Tools” (Select the entire Folder)
- “Your Firmware/ROM Version Installed” (i.e: “Android 2.2 API”) (Select the entire Folder)
5) Now press “Install Packages” (The download will start; follow the next step after it’s completed)
6) Download / Install the Latest version of the rooting program (Super One Click Rooting Program); unzip it and install it on your computer.
7) Make sure that your phone has the "USB Debugging Mode" ON.
NOTE: To turn it on go to your device and press: “Menu” > “Settings” (Icon) > “Applications” > “Debug / Development” > “USB Debug”
8) Make sure you turn Off your Device and Remove the SD Card. It must be done without the SD Card.
9) Safely disconnect your Phone from the PC; and restart. (PC and Device)
10) When your Phone and Windows are ready; connect your phone to the PC.
Note: Just plug the cable. Do NOT select any option in the Phone.
Also you will notice that a small Android Icon will appear at the top left of the screen.
That means that you phone is prepared for debugging Mode.
11) Once again make sure that your phone has the "USB Debugging Mode" ON.
12) Run SDK/ADB as Administrator.
(Windows XP Users just double click to open)
13) Right Click the “Super One Click Rooting Program” and open it as Administrator.
(Or just double click; if you are using Windows XP)
14) Press "Update Check"; just to make sure you have the latest files. (Don't worry with the app version error; if it happens means you just downloaded it/you have the latest version)
14) Click the "Root" button and wait it to finish. (There should be no errors)
15) Once done; you should see “Superuser” permission in your phone’s apps.
Note: If so; your Device is Rooted. Congratulations!
II. (Advanced Method - Manually Rooting)
Pre-requisites
There are a few things that you need to have before you start rooting.
Obviously, you will need an Android device with Android 1.5 or higher and a USB cable to connect it to your computer.
You will also need to have some files for this:
SuperOneClick.zip and the Android SDK/ADB up and running on your computer.
(Run as Administrator if not using Windows XP)
If you are unfamiliar with ADB, GoodAndEvo site has an awesome ADB tutorial that should get you up to speed.
(Note that the tutorial in the Good and Evo Page is for HTC Devices)
First, we need to move some files around to make running commands a bit easier.
Unzip the SuperOneClick.zip and copy the following files: su-v3, busybox, Superuser.apk, psneuter, and GingerBreak; to the Android “ADB Platform-Tools folder”; which is contained in the Android SDK folder on your computer.
i.e: C:\Program Files\Android\Android-SDK\Platform-Tools\
These files can be found in the following SuperOneClickv2.1.1-ShortFuse folders:
- “Busybox” -> “Dependencies” folder
- “psneuter” -> “Exploit” folder
- “GingerBreak” -> “Exploits” folder
- “SuperUser.apk” -> “Root” folder
- “SU-V3” -> “Root” folder
Once copied rename “su-v3” to “su”.
If you are on Windows, you will also need to have proper drivers for your phone installed.
These can usually be found by going either to the manufacturer website or searching for the name of your phone and the word "Drivers."
Once you find drivers, download and install them like any other application.
Rooting your device
Now that you have ADB setup and the proper exploit files, you are finally ready to Root.
Before you start running commands, you need to put your phone in "USB Debugging" mode.
(Menu > Settings > Applications > Development > Enable USB Debugging) and connect the device to your computer.
Note: Just plug the cable and do not select any option in you device.
Now, open command prompt to run some commands.
Windows Vista/7 Users:
(Press "Windows Key" > Type: "CMD" > Right Click on "CMD" and Run it as Administrator)
In Linux, open whichever terminal emulator suits you. Once you have a command prompt, you need to enter your platform-tools folder, also called a directory.
You can use the "CD" or Change Directory command to accomplish this.
If your SDK folder is called "android-sdk" the command should look like this: cd android-sdk_r11-windows/platform-tools.
This command will leave you with a shell prompt in the platform-tools directory.
From here, you can run the commands that will actually root your phone.
Be sure to run these commands exactly as they are written.
The commands with an "$" or "#" will only run after the "adb shell" command.
First, here are the commands that run the” psneuter” exploit and gain a root shell.
Type them in the following order.
…Yes after the ADB and the “$” there is a “Space”.
• adb devices
• adb push psneuter /data/local/tmp
• adb shell
• $ cd /data/local/tmp
• $ chmod 777 psneuter
• $ ./psneuter
At this point, the exploit will run and close the shell.
You will need to run these commands to restart the ADB server.
• adb kill-server
• adb devices
Now comes the moment of truth.
Type:
• adb shell
...command to open a shell.
If you see a "#" sign, you have root access, so go ahead and continue to the next part of this tutorial.
If not, you can go back and try the previous steps again, or ask for help in the comments.
We now need to make this root permanent.
From the root shell you just opened, type the following commands.
• # mount -o remount,rw -t rfs /dev/block/st19 /system
• # exit
• adb push busybox /system/bin
• adb push su /system/bin
• adb install Superuser.apk
• adb shell
• # chmod 4755 /system/bin/busybox
• # chmod 4755 /system/bin/su
• # mount -o remount,ro -t rfs /dev/block/st19 /system
• # exit
• adb reboot
At this point, your device should reboot.
You can check for the Superuser icon in the app drawer, and then try a root only app like Titanium Backup.
If that app works, congratulations!
You have successfully rooted your Android device.
Prepare to enjoy all the benefits of root.
If you are having trouble with this tutorial or want to offer others a tip, please leave a comment.
Me or every XDA developer/user shall gladly help you out clarifying any error message or issue. (at least if i know how i will help)
Just make sure you did exactly as described; and only then post your question / expose your issue(s).
P.S
- Use “Code” Tags to report Logs.
- Remember to "Thank" if this tutorial helped you or if you find it usefull.
Special thanks to:
XDA Developers (Users & Staff)
Pocketables.net (Aaron Orquia)
CLShortFuse (For bringing such Great App)
I can´t do this with method #1 (freeze on step #6)
In method #2 ....
$ cd /data/local/tmp
cd /data/local/tmp
$ chmod 777 psneuter
chmod 777 psneuter
$ ./psneuter
./psneuter
Failed to set prot mask (Inappropriate ioctl for device)
$
Some help?
Regards
niki40 said:
I can´t do this with method #1 (freeze on step #6)
In method #2 ....
$ cd /data/local/tmp
cd /data/local/tmp
$ chmod 777 psneuter
chmod 777 psneuter
$ ./psneuter
./psneuter
Failed to set prot mask (Inappropriate ioctl for device)
$
Some help?
Regards
Click to expand...
Click to collapse
Greetings;
What's your device Make and Model?
Try/Check the following:
- Download the "Super One Click Program" Again. Since there is a new Fix for it.
Follow this Link to download and get more detailled info:
http://forum.xda-developers.com/showthread.php?t=803682
- Check that you have the USB Debug Turned ON (in your device)
---> List > Settings > Applicatons > Development > USB Debugging
- Check what version do you have in your device; and verify that SDK Manager has downloaded your Version API's; and Tools folder. (Look at status tab; it should say installed)
- Did you Restart the machine after the install of Super One Click and SDK Manager? (Only then Root the Device)
- In a Last case there's a small percentage that your phone isn't compatible with "Super One Click".
Thanx a lot bro
You Can Add This To The OP If You Want .
Press Thank If I Help .
For Sony Ericsson Xperia Only .
I Use A Sony Ericsson Xperia X10 And It Work Well .
The File Name Is Call Flash Tool .
The Fuction It Has Is ( Latest 4.2 )
Root
Flash Kernel
Flash Rom
One Click Unlocked Bootloader .
Click to expand...
Click to collapse
Thing You Need To Do Is :
Download The Two File .
Install In The Same Place .
Open The File .
Open Driver Folder .
Install The Driver .
And Open Flash Tool exe .
See If The Computer Detect Your Phone .
USB Debugging Must On .
Click to expand...
Click to collapse
Thing Your Need ( For Rooting Only ) :
https://github.com/Androxyde/Flashtool/downloads
==================================================
Unlocked Bootloader Try At Your Own Risk . Sony Ericsson Xperia X10 Success ) :
Only For Sony Ericsson Xperia Phone .
Download Generic version 2.3.3 build 3.0.1.G.0.75 ( http://www.multiupload.com/564T6TLUD8 )
Download DoomLoard Boot Manager . ( http://doomlord.sylvester20007.com/...tmanager/X10_2.3.3_Stock-BootManager-v1.3.ftf )
Put This Two File In Flash Tool Frimware Folder .
Open Flash Tool .
Press Flash .
Select All The File Inside .
Reboot Your Phone .
Root Your Phone .
And Install DoomLoard Boot Manager .
You Can Now Install Unlocked Bootloader Rom .
Click to expand...
Click to collapse
If Anyone Know Anything And Notice I Say Wrong Here Please Private Message Me Or Comment Here To Tell Me
Special Thank To :
Every One That Teach Me Last Time .
Androxyde For Flash Tool . http://forum.xda-developers.com/showthread.php?t=920746
DooMLoRD For DoomLoard Kernel And Boot Manager . http://forum.xda-developers.com/showthread.php?t=1278318
Every Body Who Click Thank .
Every Body Who Read .
Click to expand...
Click to collapse
==================================================
Do It At Your Own Risk . Press Thank If I Help
And Yes It Work For New Xperia ( 2011 Lines )
nice share...but i already rooted my xperia
Can any one plz root this tablet...... M so depressed coz it doesn't include google play if it can be rooted....i could buy dis.....
successfully rooted HCL ME U1 Tablet
jeevan92ultimate said:
Can any one plz root this tablet...... M so depressed coz it doesn't include google play if it can be rooted....i could buy dis.....
Click to expand...
Click to collapse
This guide is successfully tested by me.
1. You need a 32 bit OS. (I have used 7 Pro x86).
2. Turn USB debugging ‘ON’ in settings of the tablet.
3. Download Superuser. Then extract the zip file to desktop :\ & you will see 2 folders as “System” and “Meta-INF”.
4. Download the drivers from here. Then connect the tablet & install the drivers using device manager.
5. Download SuperOneClick!. Extract the archive, go to the folder named ADB. Open an elevated command prompt there using this.
6. Continue with the following commands:
Code:
>adb root (you will see a message “adb is already running as a root”)
>adb devices (you should see your device number)
>adb shell (adb shell will run and daemon tool will also run) 7. Now restart the tablet & wait till the home screen appears. Now continue with the following commands:
Code:
>adb shell getprop ro.secure (output should be 0)
>adb shell mount -oremount,rw /dev/block/system /system
>adb push d:\system/bin/su /system/bin/
>adb push d:\system/bin/su /system/_install/bin/
>adb shell chmod 4777 /system/bin/su
>adb shell mount -oremount,ro /dev/block/system /system 8. Exit adb, disconnect the tab, restart it again.
9. Open the new Superuser app just once.
10. Download apks of BusyBox, Google Play & Titanium Backup (Google is your friend!!).
11. Install BusyBox first, then check the rooting status with Titanium Backup. After that, install Google Play.
Move your discussion into device forum.
If it doesn't have it, move it to Android Hacking and Development
Trolls, trolls everywhere
ppero196 said:
Move your discussion into device forum.
If it doesn't have it, move it to Android Hacking and Development
Trolls, trolls everywhere
Click to expand...
Click to collapse
Sorry, ppero196. OK
Requirements and rooting process
1 > Your pitiable unrooted Karbonn A9 Android device
2 > ADB drivers for your device installed on your pc (I used WinXP. You may use Win 7/Vista or the Linux distro of your choice)
3 > su , busybox , Superuser.apk
4 > A working linux distro with Nautilus (use a live usb stick of Ubuntu 11.04)
5 > Strength, courage and whatever makes you a man !!!!!
Rooting Process
To start, you must have adb installed on the OS of your choice.
I used my trusty WinXP system .
To confirm your device is properly detected, in the command prompt , run -
CODE -
adb devices
Now copy busybox, su, superuser.apk to /data/local/tmp/ using adb.
CODE -
adb push busybox /data/local/tmp
adb push su /data/local/tmp
adb push Superuser.apk /data/local/tmp
Now run adb shell .
CODE -
adb shell
Note that you see a "$" sign in the command prompt. That means you are not rooted . Next run the following commands in the shell to change permissions and get some limited privileges for the Superuser files:
CODE -
chmod 6755 /data/local/tmp/su
chmod 755 /data/local/tmp/busybox
chmod 644 /data/local/tmp/Superuser.apk
Note that the names of the files are case sensitive.
Done?
Turn off your Android device using the power button.
Now you need to reboot your system into a Linux distro which has Nautilus.
Android and Linux, having a similar heritage, makes it possible for us to get root access over the Android phone if you are running with root privileges within Linux. I used an Ubuntu 11.04 Live USB disk to save the hassle of installing another os.
When you have booted into Linux, open up terminal and type:
CODE -
sudo nautilus
This would open up the Nautilus file browser with root privileges.
Now put your Android device into Download mode . for the karbonn A9 the method is to hold down the Volume up button and simultaneously turn on the phone using the power on switch.
Once in download mode, connect the Android device using the microusb cable to the computer.
Now using the open Nautilus window, navigate to /UserData/local/tmp/ folder and verify that you have the files you sent to the device viz. su, busybox and Superuser.apk
Move/cut-paste su and busybox to /system/bin/ using Nautilus.
Move/cut-paste Superuser.apk to /system/app/ using Nautilus.
Now pull out the battery from your Android device.
Now simply turn on your device.
You must now have root.
Verify by running:
CODE -
adb shell
su
You'll note that the "$" prompt will turn into a "#" and you'll be prompted by a Superuser permission notification on your
device
WOOHOO !!!! YOU NOW HAVE ROOT ON YOUR PHONE !!!!
Important -
1 > For all purposes, consider that your warranty will be void if you follow these steps
2 > I am not responsible for any loss, monetary or otherwise arising as a result of this article.
If you don't feel up to it, quit now and close this web page .
3 > I must assert that although I am aware of no reason why this should not work on *any* Android device, phone or tablet, I have only tested this on my GALAXY s3 .
4 > I have tried to explain it in the easiest way I can, but I must state here that this is by no means an easy task and you must persevere. If you can't follow the steps to the letter, its better you don't follow them at all and wait for a single click app for this or a custom rooted firmware.
RESERVED
reserved .......................
RESERVED
reserved .......................
Doesnt work,Already tried it a week ago.
THis technique doesnt work.I have already tried it a week ago.
here's the original link:
http://www.erodov.com/forums/how-root-any-android-device-manually/43325-page2.html
The problem is that nautilus just wont list our device's folders.
And download mode is opened by pressing Vol down + power for A9,
Vol up + Power opens fastboot.
[GUIDE] Make your android device True Root! - by Napalm
I did this on my Nexus 7 but it should all still apply to most devices. You might need to follow different driver advice for other devices.
Pre-requirements:
Installation of the SDK platform-tools.
Have platform-tools directory of the SDK in your PATH environment variable (Google this if your unsure).
This was all done a Windows installation, but access to Linux will be required later on. Mac users might be able to get away with doing the Linux portions directly on there computer. Please let me know if your a Mac user and have had success with this and I will update the guide with details.
Step 1: Driver Installation (READ THIS, do not skip)
First I needed to update to the usb_driver from SDK and then modify the installation inf with the IDs for Nexus 7.
Browse to your SDK directory and futher into <SDK>\extras\google\usb_driver
Open android_winusb.inf in your favorite text editor.
Find the appropriate section Google.NTx86 if your on 32bit or Google.NTamd64 if your on 64bit (doesnt matter that your using intel chip). Now find the ";Google Nexus 7" line inside that section and you'll see a series of settings below. Add the following lines at the end of that block.
Code:
%CompositeAdbInterface% = USB_Install, USB\VID_18D1&PID_4E44&MI_01
%CompositeAdbInterface% = USB_Install, USB\VID_18D1&PID_D001
These are the identifiers for the Nexus 7 recovery and bootloader usb connections.
Step 2: Standard Root
Next you'll need access to the bootloader and recovery mode so follow this guide to unlock and "root" your device. http://forum.xda-developers.com/showthread.php?t=1741395
Here I've laid out the steps I did instead of the above. Remember this wipes your device and its internal memory completely, so backup your data.
All local work is done from the desktop, so when you first open a command prompt or if you close it and reopen it enter the following.
Code:
cd Desktop
Download CWM recovery image to Desktop. http://goo.im/devs/birdman/CWM-grouper-recovery.img
Download SuperSU CWM update zip to Desktop. http://forum.xda-developers.com/showthread.php?t=1538053
Go to Start or Start>Run and type in: cmd
Code:
cd Desktop
fastboot oem unlock
fastboot flash recovery CWM-grouper-recovery.img
adb reboot recovery
Now the device will reboot into recovery mode. If windows asks for drivers for the "new" usb connection direct the wizard to your <SDK>\extras\google\usb_driver. And the earlier modifications made in Step 1 should mean it installs the device and adb link.
Once drivers are installed and every is good go back to the command prompt, and type
Code:
adb devices
It should list your device with the word "recovery" next to it. If it doesn't then your device is not in recovery mode. Now enter in the following commands into the command prompt and it will make your devices CWM installation permanent.
Code:
adb shell
mount /system
cd /system
mv recovery-from-boot.p recovery-from-boot.bak
umount /system
exit
Now to install SuperSU. Tap "reboot system now" on the screen (if you dont see CWM, press the power button to show/hide it). Wait for the reboot. And then enter the following into the command prompt.
Code:
adb push CWM-SuperSU-v0.94.zip /sdcard
adb reboot recovery
Wait for reboot. You should see an image in the center of the screen. You might have to press the power button to toggle the visibility of the CWM menu. If you miss-tap on the screen, the power button acts like a back button and will return you to the previous menu screen.
Tap "install zip from sdcard" and then "choose zip from sdcard". Then select the CWM-SuperSU-v0.94.zip file (You may have to use the vol-up/down keys to highlight this if the file is listed off the bottom of the screen)
Let that install and then go back on the menus and choose "reboot system now".
Now if all is well after the reboot, if you run the following commands in command prompt.
Code:
adb shell
su
SuperSU might now prompt you on your devices screen to accept the root access, and then hopefully your command prompt should end in a # (this means you are root user 0). Now type exit twice to get back to the windows command prompt.
Now if you were to type "adb root" you will notice it tells you adbd is not able to go "full root". This will be solved in the next step. This is going to get complicated. You have been warned.
Step 3: True Rooting!
Now your device is "rooted". This is true, you now have a "su" binary installed and a visible app in the OS to manage super user privileges, but as a developer I want to be able to use things like "hierarchy viewer" on my live device. And have the room to do what I need to debug complex situations. So this is where True Root comes in. This essentially turns the device into a debug device that you would get direct from the manufacturer.
You may be able to get away with doing the following in a different way and you may not need to compile anything since fastboot has a boot flash option, but since I've never used this I've done it this way. If you prefer you can explore things in that direction, but be warned I've not tried it and so I have no idea if it would work.
Now for this step you will need access to a Linux installation. If you've never used Linux before don't be too afraid. But I am going to have to gloss over a few things. If you need further help on this step you will need to post in the topic and allow the community to advise on best pratices.
If you dont have access to a Linux installation or your newb to Linux then go here and follow the steps. It will add Linux to your PCs boot options and then you can go in and out of Linux when you need it. http://www.ubuntu.com/download/help/install-ubuntu-with-windows
Remember if your working on this step from a fresh Linux install like the above then you will probably want to install the android sdk for linux, at least enough to use adb from linux. This topic might help with this: http://forum.xda-developers.com/showthread.php?t=537508
Ok now from Linux follow along. You'll need git installed for this "apt-get install git".
We now need to compile the apps needed to modify our boot image. Details can be found here https://gist.github.com/1087757 but you might just want to follow my specific instructions.
Open a console window and type.
Code:
git clone https://android.googlesource.com/platform/system/core
cd core/libmincrypt
gcc -c *.c -I../include
ar rcs libmincrypt.a *.o
cd ../mkbootimg
gcc mkbootimg.c -o mkbootimg -I../include ../libmincrypt/libmincrypt.a
cd ../cpio
gcc mkbootfs.c -o mkbootfs -I../include
cd ../..
git clone https://github.com/beide/Bootimg-scripts.git
cd Bootimg-scripts
cp ../core/mkbootimg/mkbootimg ./
cp ../core/cpio/mkbootfs ./
Ok that has prapared the a Bootimg-scripts directory with the perl scripts we need and compiled binaries they use. Now make sure you have perl installed "apt-get install perl".
This is where things are going to split and it becomes your best guess as to how to proceed. I will show you the method I used from Windows. But if you have a installation of the SDK in Linux then you should be able to just open a new console and continue from here and ignore the bits I used to transfer files between Linux and Windows.
Back to the command console on Windows. We use adb to identify our boot partition and extract it.
Code:
adb shell cat /proc/partitions
You will now be presented with a list of paritions on your Nexus 7. Each block here for my device is 1K. So I'm looking down the list and I see one thats 8192 blocks, called "mmcblk0p2". Thats 8MB and I'm taking a educated guess that this is the boot partition, and for my Nexus 7 it is. (Note: if anyone has a better way of determining the boot parition please let me know).
Now we need to take a image of the partition. From here on out replace my partition device name in the commands below with yours if it differs.
Code:
adb shell
cat /dev/block/mmcblk0p2 > /sdcard/boot.img
exit
adb pull /sdcard/boot.img
Now if you want to confirm that this is the boot partition you will need to open the image file in your favorite hex editor and confirm the first bytes of the file are "ANDROID!" in ascii.
Now I FTP'd this image file over to my Linux box and into the Bootimg-scripts directory we created previously. If your following these steps from Linux then you should be able to open up the file manager and move the file into the folder.
Now back to Linux. We'll need to modify repack-bootimg.pl with a text editor of your choice. I leave this up to the reader. We need to modify line 19 the system call so that it starts with "./mkbootimg" rather than "mkbootimg". This is so perl fines mkbootimg in the local directory rather than anywhere else.
Now type in the linux console we had open in the Bootimg-scripts directory the following command.
Code:
perl ./unpack-bootimg.pl boot.img
ls -l
You should see boot.img-kernel.gz and boot.img-ramdisk.cpio.gz and a directory boot.img-ramdisk.
Open boot.img-ramdisk/default.prop in your favorite text editor and make the following adjustments.
ro.secure=1 should be edited to ro.secure=0 and ro.debuggable=0 should be ro.debuggable=1 and if you want ro.allow.mock.location can also be changed to 1 if you like.
Now we've made the required changes to our initrd (initial ramdisk) files we need to repack them to put back on the device.
Code:
perl ./repack-bootimg.pl boot.img-kernel.gz boot.img-ramdisk boot-debug.img
You will now have a new file called boot-debug.img. This contains our modified initial ramdisk. It will probably be smaller than the original. This is no concern as the original we copied was an image of the entire disk including the unused areas, where as the new image is only the data we need.
I now FTP'd this file back to my Windows machine, but as before if your doing this from Linux then you can just carry on.
We now need to flash this image file back onto the Nexus 7 replacing our current boot image. To do this we need to put the device into bootloader mode.
Back to your console/command window, and enter in.
Code:
adb reboot bootloader
Windows might want to install drivers and as before direct the wizard to <SDK>\extras\google\usb_driver.
Once your device is in bootloader mode. Go back to the console/command and enter in.
Code:
fastboot flash boot boot-debug.img
fastboot reboot
Now cross your fingers and hopefully you will get the boot loading animation and your device will get back to the Android launcher.
Now finally from your console/command window type in:
Code:
adb root
Hopefully if all is well it should reply with "adbd is already running as root". Now if you type in:
Code:
adb shell getprop ro.debuggable
It should tell you that its set to 1, meaning it is switched on.
Congratulations!! You have now True Rooted your device!.
You can now debug even system level apps, see log messages from all processes and logcat will now resolve all app names. Use Hierarchy Viewer on a live device instead of the horrible emulator. Do absolutely everything with your device that you want.
Happy hacking,
Napalm :good:
better late than never.....a thorough quide
Thanks for this guide.
Sent from my Nexus 7
Thanks.
Napalm2 said:
[GUIDE] Make your android device True Root! - by Napalm
I did this on my Nexus 7 but it should all still apply to most devices. You might need to follow different driver advice for other devices.
Pre-requirements:
Installation of the SDK platform-tools.
Have platform-tools directory of the SDK in your PATH environment variable (Google this if your unsure).
This was all done a Windows installation, but access to Linux will be required later on. Mac users might be able to get away with doing the Linux portions directly on there computer. Please let me know if your a Mac user and have had success with this and I will update the guide with details.
Step 1: Driver Installation (READ THIS, do not skip)
First I needed to update to the usb_driver from SDK and then modify the installation inf with the IDs for Nexus 7.
Browse to your SDK directory and futher into <SDK>\extras\google\usb_driver
Open android_winusb.inf in your favorite text editor.
Find the appropriate section Google.NTx86 if your on 32bit or Google.NTamd64 if your on 64bit (doesnt matter that your using intel chip). Now find the ";Google Nexus 7" line inside that section and you'll see a series of settings below. Add the following lines at the end of that block.
Code:
%CompositeAdbInterface% = USB_Install, USB\VID_18D1&PID_4E44&MI_01
%CompositeAdbInterface% = USB_Install, USB\VID_18D1&PID_D001
These are the identifiers for the Nexus 7 recovery and bootloader usb connections.
Step 2: Standard Root
Next you'll need access to the bootloader and recovery mode so follow this guide to unlock and "root" your device. http://forum.xda-developers.com/showthread.php?t=1741395
Here I've laid out the steps I did instead of the above. Remember this wipes your device and its internal memory completely, so backup your data.
All local work is done from the desktop, so when you first open a command prompt or if you close it and reopen it enter the following.
Code:
cd Desktop
Download CWM recovery image to Desktop. http://goo.im/devs/birdman/CWM-grouper-recovery.img
Download SuperSU CWM update zip to Desktop. http://forum.xda-developers.com/showthread.php?t=1538053
Go to Start or Start>Run and type in: cmd
Code:
cd Desktop
fastboot oem unlock
fastboot flash recovery CWM-grouper-recovery.img
adb reboot recovery
Now the device will reboot into recovery mode. If windows asks for drivers for the "new" usb connection direct the wizard to your <SDK>\extras\google\usb_driver. And the earlier modifications made in Step 1 should mean it installs the device and adb link.
Once drivers are installed and every is good go back to the command prompt, and type
Code:
adb devices
It should list your device with the word "recovery" next to it. If it doesn't then your device is not in recovery mode. Now enter in the following commands into the command prompt and it will make your devices CWM installation permanent.
Code:
adb shell
mount /system
cd /system
mv recovery-from-boot.p recovery-from-boot.bak
umount /system
exit
Now to install SuperSU. Tap "reboot system now" on the screen (if you dont see CWM, press the power button to show/hide it). Wait for the reboot. And then enter the following into the command prompt.
Code:
adb push CWM-SuperSU-v0.94.zip /sdcard
adb reboot recovery
Wait for reboot. You should see an image in the center of the screen. You might have to press the power button to toggle the visibility of the CWM menu. If you miss-tap on the screen, the power button acts like a back button and will return you to the previous menu screen.
Tap "install zip from sdcard" and then "choose zip from sdcard". Then select the CWM-SuperSU-v0.94.zip file (You may have to use the vol-up/down keys to highlight this if the file is listed off the bottom of the screen)
Let that install and then go back on the menus and choose "reboot system now".
Now if all is well after the reboot, if you run the following commands in command prompt.
Code:
adb shell
su
SuperSU might now prompt you on your devices screen to accept the root access, and then hopefully your command prompt should end in a # (this means you are root user 0). Now type exit twice to get back to the windows command prompt.
Now if you were to type "adb root" you will notice it tells you adbd is not able to go "full root". This will be solved in the next step. This is going to get complicated. You have been warned.
Step 3: True Rooting!
Now your device is "rooted". This is true, you now have a "su" binary installed and a visible app in the OS to manage super user privileges, but as a developer I want to be able to use things like "hierarchy viewer" on my live device. And have the room to do what I need to debug complex situations. So this is where True Root comes in. This essentially turns the device into a debug device that you would get direct from the manufacturer.
You may be able to get away with doing the following in a different way and you may not need to compile anything since fastboot has a boot flash option, but since I've never used this I've done it this way. If you prefer you can explore things in that direction, but be warned I've not tried it and so I have no idea if it would work.
Now for this step you will need access to a Linux installation. If you've never used Linux before don't be too afraid. But I am going to have to gloss over a few things. If you need further help on this step you will need to post in the topic and allow the community to advise on best pratices.
If you dont have access to a Linux installation or your newb to Linux then go here and follow the steps. It will add Linux to your PCs boot options and then you can go in and out of Linux when you need it. http://www.ubuntu.com/download/help/install-ubuntu-with-windows
Remember if your working on this step from a fresh Linux install like the above then you will probably want to install the android sdk for linux, at least enough to use adb from linux. This topic might help with this: http://forum.xda-developers.com/showthread.php?t=537508
Ok now from Linux follow along. You'll need git installed for this "apt-get install git".
We now need to compile the apps needed to modify our boot image. Details can be found here https://gist.github.com/1087757 but you might just want to follow my specific instructions.
Open a console window and type.
Code:
git clone https://android.googlesource.com/platform/system/core
cd core/libmincrypt
gcc -c *.c -I../include
ar rcs libmincrypt.a *.o
cd ../mkbootimg
gcc mkbootimg.c -o mkbootimg -I../include ../libmincrypt/libmincrypt.a
cd ../cpio
gcc mkbootfs.c -o mkbootfs -I../include
cd ../..
git clone https://github.com/beide/Bootimg-scripts.git
cd Bootimg-scripts
cp ../core/mkbootimg/mkbootimg ./
cp ../core/cpio/mkbootfs ./
Ok that has prapared the a Bootimg-scripts directory with the perl scripts we need and compiled binaries they use. Now make sure you have perl installed "apt-get install perl".
This is where things are going to split and it becomes your best guess as to how to proceed. I will show you the method I used from Windows. But if you have a installation of the SDK in Linux then you should be able to just open a new console and continue from here and ignore the bits I used to transfer files between Linux and Windows.
Back to the command console on Windows. We use adb to identify our boot partition and extract it.
Code:
adb shell cat /proc/partitions
You will now be presented with a list of paritions on your Nexus 7. Each block here for my device is 1K. So I'm looking down the list and I see one thats 8192 blocks, called "mmcblk0p2". Thats 8MB and I'm taking a educated guess that this is the boot partition, and for my Nexus 7 it is. (Note: if anyone has a better way of determining the boot parition please let me know).
Now we need to take a image of the partition. From here on out replace my partition device name in the commands below with yours if it differs.
Code:
adb shell
cat /dev/block/mmcblk0p2 > /sdcard/boot.img
exit
adb pull /sdcard/boot.img
Now if you want to confirm that this is the boot partition you will need to open the image file in your favorite hex editor and confirm the first bytes of the file are "ANDROID!" in ascii.
Now I FTP'd this image file over to my Linux box and into the Bootimg-scripts directory we created previously. If your following these steps from Linux then you should be able to open up the file manager and move the file into the folder.
Now back to Linux. We'll need to modify repack-bootimg.pl with a text editor of your choice. I leave this up to the reader. We need to modify line 19 the system call so that it starts with "./mkbootimg" rather than "mkbootimg". This is so perl fines mkbootimg in the local directory rather than anywhere else.
Now type in the linux console we had open in the Bootimg-scripts directory the following command.
Code:
perl ./unpack-bootimg.pl boot.img
ls -l
You should see boot.img-kernel.gz and boot.img-ramdisk.cpio.gz and a directory boot.img-ramdisk.
Open boot.img-ramdisk/default.prop in your favorite text editor and make the following adjustments.
ro.secure=1 should be edited to ro.secure=0 and ro.debuggable=0 should be ro.debuggable=1 and if you want ro.allow.mock.location can also be changed to 1 if you like.
Now we've made the required changes to our initrd (initial ramdisk) files we need to repack them to put back on the device.
Code:
perl ./repack-bootimg.pl boot.img-kernel.gz boot.img-ramdisk boot-debug.img
You will now have a new file called boot-debug.img. This contains our modified initial ramdisk. It will probably be smaller than the original. This is no concern as the original we copied was an image of the entire disk including the unused areas, where as the new image is only the data we need.
I now FTP'd this file back to my Windows machine, but as before if your doing this from Linux then you can just carry on.
We now need to flash this image file back onto the Nexus 7 replacing our current boot image. To do this we need to put the device into bootloader mode.
Back to your console/command window, and enter in.
Code:
adb reboot bootloader
Windows might want to install drivers and as before direct the wizard to <SDK>\extras\google\usb_driver.
Once your device is in bootloader mode. Go back to the console/command and enter in.
Code:
fastboot flash boot boot-debug.img
fastboot reboot
Now cross your fingers and hopefully you will get the boot loading animation and your device will get back to the Android launcher.
Now finally from your console/command window type in:
Code:
adb root
Hopefully if all is well it should reply with "adbd is already running as root". Now if you type in:
Code:
adb shell getprop ro.debuggable
It should tell you that its set to 1, meaning it is switched on.
Congratulations!! You have now True Rooted your device!.
You can now debug even system level apps, see log messages from all processes and logcat will now resolve all app names. Use Hierarchy Viewer on a live device instead of the horrible emulator. Do absolutely everything with your device that you want.
Happy hacking,
Napalm :good:
Click to expand...
Click to collapse
can't find recovery-from-boot.p. Y?
5implelove said:
can't find recovery-from-boot.p. Y?
Click to expand...
Click to collapse
Try not to quote a post that big mate, makes navigation a pain
5implelove said:
can't find recovery-from-boot.p. Y?
Click to expand...
Click to collapse
That part is only for the Nexus 7, and if you are using a Nexus 7 with custom ROM then this file may not exist. If you are using stock on a Nexus 7 then the only other question is whether you have renamed/moved/deleted it before. Once you
Code:
cd /system
type
Code:
ls -l recovery*
and see if anything is listed.
Napalm
Where did you find the info for step one?
Sent from my Nexus 7 using Tapatalk 2
I worked it out. You can find your VID and PID from your unknown device in Device Manager. You have to right click the device > Properties > Details > Choose Hardware Ids from the list. Since the driver from Google supports the same interfaces for other devices we can assume it works with the Nexus 7. I made the modifications and it works. Below is a full list of IDs if anyone wants them.
Napalm
Code:
Nexus 7
USB\VID_18D1&PID_4E40 : fastboot
USB\VID_18D1&PID_D001 : adb-recovery
USB\VID_18D1&PID_4E42 : composite-adb-interface (with mtp)
USB\VID_18D1&PID_4E42&MI_00: mtp-composite
USB\VID_18D1&PID_4E42&MI_01: adb-composite
USB\VID_18D1&PID_4E44 : composite-adb-interface (with ptp)
USB\VID_18D1&PID_4E44&MI_00: mtp-composite
USB\VID_18D1&PID_4E44&MI_01: adb-composite
USB\VID_18D1&PID_4E41 : mtp-only
USB\VID_18D1&PID_4E43 : ptp-only
Galaxy Nexus
USB\VID_18D1&PID_4E30 : fastboot
USB\VID_18D1&PID_D001 : adb-recovery
USB\VID_04E8&PID_6860 : composite-adb-interface (with mtp)
USB\VID_04E8&PID_6860&MI_00: mtp-composite
USB\VID_04E8&PID_6860&MI_01: adb-composite
USB\VID_04E8&PID_6866 : composite-adb-interface (with ptp)
USB\VID_04E8&PID_6866&MI_00: ptp-composite
USB\VID_04E8&PID_6866&MI_01: adb-composite
USB\VID_04E8&PID_685C : mtp-only
USB\VID_04E8&PID_6865 : ptp-only
Great guide, but why not just post up the new initrd for people that don't want to do this? It looks as if its the same for all devices.
As requested. Attached are the compiled tools and modified scripts used and the original and modified boot partition image files for the Nexus 7 running Android 4.1.2.
Napalm
Update for Android 4.2
Attached is the original and modified boot partition image files for the Nexus 7 running Android 4.2.
You can update yours with the following:
Code:
adb reboot-bootloader
fastboot flash boot nakasi-jop40c-android42-boot-new.img
Napalm
Attached is the original and modified boot partition image files for the Nexus 7 GSM/HSPA+ running Android 4.2.1
You can update yours with the following:
Code:
adb reboot-bootloader
fastboot flash boot nakasig-jop40d-android421-boot-new.img
Napalm
Amazing !
Is it possible to post the same file for N7 4.2.1 Wifi version?
Thanks
JulienDev said:
Amazing !
Is it possible to post the same file for N7 4.2.1 Wifi version?
Thanks
Click to expand...
Click to collapse
If I'm not mistaken, they are the same for wifi and 3g versions?
Same as before.. just an update for Android 4.2.2... as per the previous posts.. no idea if the non-GSM variant has the same boot partition. If anyone can test please post.
Attached is the original and modified boot partition image files for the Nexus 7 GSM/HSPA+ running Android 4.2.2
You can update yours with the following:
Code:
adb reboot-bootloader
fastboot flash boot nakasig-jdq39-android422-boot-mod.img
Getting a No_Command error
Hi, I am trying to true root Android M on my Nexus 7 2012 Wifi edition. I followed the steps here and was able to create the boot.img with the ro.debuggable=1 and ro.secure=0. however if i flash this boot.img the device boots and gets stuck in a android bot with a Red ! (bang) triangle. and says No command.
Any idea how to get ro.debuggable on for Android M?
Hello , there is no official release of twrp recovery for my LG W30 . Is there any way to root my LG w30??
I have already tried rooting apps like kingroot and kingoroot but nothing works .
My LG W30 runs on android 9 stock rom .
Please help .
Thank you.
Android is rooted if the cmdlet SU is present in it's filesystem. Hence either push a suitable SU-binary to Android or replace Android's toybox with a version what contains the mentioned SU.
Hi , Thanks for the reply
xXx yYy said:
Android is rooted if the cmdlet SU is present in it's filesystem. Hence either push a suitable SU-binary to Android or replace Android's toybox with a version what contains the mentioned SU.
Click to expand...
Click to collapse
Hi , Thank you for the reply .
How am i supposed to push the su binary without custom recovery??
Thank you.
Via ADB
Code:
adb devices
adb push <FULL-PATH-OF-SU-BINARY-ON-PC> /data/local/tmp/
adb shell "chmod +x /data/local/tmp/su"
xXx yYy said:
Via ADB
Code:
adb devices
adb push <FULL-PATH-OF-SU-BINARY-ON-PC> /data/local/tmp/
adb shell "chmod +x /data/local/tmp/su"
Click to expand...
Click to collapse
It's not working
EDIT: it worked after i kept ".zip" after the su binary file . What's next?
The mentioned SU file is a ported Linux executable, a binary, comparable to an exe file in Windows: It's NOT a zip file.
The SU file is ~110KB of size, this depends on ARM-version ( 32bit and/or 64bit ) it's compiled for.
xXx yYy said:
The mentioned SU file is a ported Linux executable, a binary, comparable to an exe file in Windows: It's NOT a zip file.
The SU file is ~110KB of size, this depends on ARM-version ( 32bit and/or 64bit ) it's compiled for.
Click to expand...
Click to collapse
You mean this?? (My mobiles architecture is ARM64. )
xXx yYy said:
The mentioned SU file is a ported Linux executable, a binary, comparable to an exe file in Windows: It's NOT a zip file.
The SU file is ~110KB of size, this depends on ARM-version ( 32bit and/or 64bit ) it's compiled for.
Click to expand...
Click to collapse
Yeah i did it . What's next?
All done by you.
See also here:
Su Command in Linux (Switch User)
The su (short for substitute or switch user) command allows you to run commands with another user's privileges, by default the root user.
linuxize.com
xXx yYy said:
All done by you.
See also here:
Su Command in Linux (Switch User)
The su (short for substitute or switch user) command allows you to run commands with another user's privileges, by default the root user.
linuxize.com
Click to expand...
Click to collapse
But the root checker says my device isn't rooted yet
You have not understood what "root" means with regard to Android. That's all.
BTW: You can't root any device but only a device's Android.