I WROTE THE FOLLOWING WHILE TRYING TO TROUBLESHOOT/DOCUMENT MY OWN STEPS BUT I HAVE FOUND A SOLUTION. I HAVE POSTED THIS IN CASE SOMEONE ELSE MAY FIND THE INFORMATION USEFUL.
Is that appropriate? Move/delete this if you see fit.
I have an AT&T Moto X running 4.2.2 rooted with PwnMyMoto. Since it is with ATT, it has a locked bootloader.
[PROBLEM]
After putting a custom bootanimation.zip in the /system/media directory, device boots/"works" but display is black.
[HOW IT HAPPENED]
Using ES File Explorer, I turned on the /system r/w, copied the bootanimation.zip from the (internal) sdcard, and then overwrote the original boot animation (I do have a backup).
However, after booting the phone now, there is only a black screen. It seems to be working, there's just nothing displayed.
[WHAT I CAN DO/HAVE DONE]
ADB debugging has already been enabled
ADB shell has already been granted superuser permissions (Using SuperSU, unsure if solution works if this hasn't been done?)
It vibrates sometimes as though I have an email, notification, or whatever
I can access storage with usb cable,
adb get-state returns device,
I CAN get into fastboot (screen displays normally here), however PwnMyMoto overwrites recovery,
when rebooting the phone, the motorola power down animation is displayed
I tried to put back the original with
adb push bootanimation.zip /system/media
but get 'permission denied' (you may be able to use method this on a different device/carrier/ROM)
adb shell getprop ro.boot.write_protect returns 0
in adb shell
mv /sdcard/download/bootanimation.zip /system/media/ returns failed - cross-device link (googled this, seems normal, but I'm unsure how else to copy it back)
su
mount -o remount,rw /system
doesn't return anything but I am unsure where to go from there.
cannot run adb as root, as the phone is not a dev model
[RELATED POSTS]
http://forum.xda-developers.com/showthread.php?t=2249659
[HOW I FIXED IT]
start adb
ensure that 'adb shell getprop ro.boot.write_protect' returns 0 (if not, reboot into recovery)
start phone in recovery mode with
adb reboot recovery
then
adb shell
su
mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system
mount -o remount,rw /system (not sure which one of these ended up being 'correct' but it didn't hurt to do both)
cp /sdcard/download/bootanimation.zip /system/media/ (copy <src> <dest>, src is wherever the backup zip is located, if you are unsure of where the files are, use the 'ls' command to navigate the directories)
adb reboot
After doing this, the screen started displaying as normal.
Apologies for the lack of technicality, not much a dev myself. Just glad to have it working again.
help
oc83 said:
I WROTE THE FOLLOWING WHILE TRYING TO TROUBLESHOOT/DOCUMENT MY OWN STEPS BUT I HAVE FOUND A SOLUTION. I HAVE POSTED THIS IN CASE SOMEONE ELSE MAY FIND THE INFORMATION USEFUL.
Is that appropriate? Move/delete this if you see fit.
I have an AT&T Moto X running 4.2.2 rooted with PwnMyMoto. Since it is with ATT, it has a locked bootloader.
[PROBLEM]
After putting a custom bootanimation.zip in the /system/media directory, device boots/"works" but display is black.
[HOW IT HAPPENED]
Using ES File Explorer, I turned on the /system r/w, copied the bootanimation.zip from the (internal) sdcard, and then overwrote the original boot animation (I do have a backup).
However, after booting the phone now, there is only a black screen. It seems to be working, there's just nothing displayed.
[WHAT I CAN DO/HAVE DONE]
ADB debugging has already been enabled
ADB shell has already been granted superuser permissions (Using SuperSU, unsure if solution works if this hasn't been done?)
It vibrates sometimes as though I have an email, notification, or whatever
I can access storage with usb cable,
adb get-state returns device,
I CAN get into fastboot (screen displays normally here), however PwnMyMoto overwrites recovery,
when rebooting the phone, the motorola power down animation is displayed
I tried to put back the original with
adb push bootanimation.zip /system/media
but get 'permission denied' (you may be able to use method this on a different device/carrier/ROM)
adb shell getprop ro.boot.write_protect returns 0
in adb shell
mv /sdcard/download/bootanimation.zip /system/media/ returns failed - cross-device link (googled this, seems normal, but I'm unsure how else to copy it back)
su
mount -o remount,rw /system
doesn't return anything but I am unsure where to go from there.
cannot run adb as root, as the phone is not a dev model
[RELATED POSTS]
http://forum.xda-developers.com/showthread.php?t=2249659
[HOW I FIXED IT]
start adb
ensure that 'adb shell getprop ro.boot.write_protect' returns 0 (if not, reboot into recovery)
start phone in recovery mode with
adb reboot recovery
then
adb shell
su
mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system
mount -o remount,rw /system (not sure which one of these ended up being 'correct' but it didn't hurt to do both)
cp /sdcard/download/bootanimation.zip /system/media/ (copy <src> <dest>, src is wherever the backup zip is located, if you are unsure of where the files are, use the 'ls' command to navigate the directories)
adb reboot
After doing this, the screen started displaying as normal.
Apologies for the lack of technicality, not much a dev myself. Just glad to have it working again.
Click to expand...
Click to collapse
I had the same problem and i want a simple way to fix. any help?
iamgothamshero said:
I had the same problem and i want a simple way to fix. any help?
Click to expand...
Click to collapse
I wrote down the steps I took to fix it at the end of the post. You'll have to restore the old boot animation file with ADB. Hopefully, ADB shell was already given root permissions on your phone, otherwise I'd be unsure of how to fix it.
reply to u
oc83 said:
I wrote down the steps I took to fix it at the end of the post. You'll have to restore the old boot animation file with ADB. Hopefully, ADB shell was already given root permissions on your phone, otherwise I'd be unsure of how to fix it.
Click to expand...
Click to collapse
In the how i fixed it section, idk how to do those things. i have sdk manager on pc. please i am freaked out. can u give me simple instructions. Thank you so much
iamgothamshero said:
In the how i fixed it section, idk how to do those things. i have sdk manager on pc. please i am freaked out. can u give me simple instructions. Thank you so much
Click to expand...
Click to collapse
If you're unsure how to start ADB, I'd think that you've never used it before, and in that case I'd be entirely unsure if that method would work.
That said, you should find adb.exe in the sdk/platform-tools folder. If you shift+right-click this folder you can quickly open a command prompt there to start using the commands (each line in the instructions is a separate command). If you're unsure how exactly to use adb, I'm sure there are youtube videos or other forum posts documenting the basics (try searching for beginner's guide to adb on xda).
YES!!!
oc83 said:
If you're unsure how to start ADB, I'd think that you've never used it before, and in that case I'd be entirely unsure if that method would work.
That said, you should find adb.exe in the sdk/platform-tools folder. If you shift+right-click this folder you can quickly open a command prompt there to start using the commands (each line in the instructions is a separate command). If you're unsure how exactly to use adb, I'm sure there are youtube videos or other forum posts documenting the basics (try searching for beginner's guide to adb on xda).
Click to expand...
Click to collapse
I just downloaded random bootanimation zip, followed ur process, and it worked!!!!!!!!!!!!!!!!!!!!!!! omg so happy!!! thanks so much!!!!!!
---------- Post added at 11:49 PM ---------- Previous post was at 11:23 PM ----------
oc83 said:
If you're unsure how to start ADB, I'd think that you've never used it before, and in that case I'd be entirely unsure if that method would work.
That said, you should find adb.exe in the sdk/platform-tools folder. If you shift+right-click this folder you can quickly open a command prompt there to start using the commands (each line in the instructions is a separate command). If you're unsure how exactly to use adb, I'm sure there are youtube videos or other forum posts documenting the basics (try searching for beginner's guide to adb on xda).
Click to expand...
Click to collapse
It worked the first time then next reboot it shows black screen but i know it hasnt booted cause no sounds. and when i turn tablet sideways it doesnt show half of a screen. (it did that last time the screen was black).
Related
I had previously unlocked my bootloader and was running CM6.1, but I had to go back to stock because my company's email app (Good for Enterprise) refuses access on rooted devices.
I would like to monkey around with different configurations to see if I can find a way to run Good on CM6.1. I don't want to do this if I have to reinstall everything if it doesn't work however.
So my question is this. I just want to get the Clockwork recovery on my N1 so I can back up the non-rooted OS and monkey around a little. Can this be done with ABD on a non-rooted device?
Gave it a shot, worked fine.
"fastboot flash recovery clockwork-image-name.img"
Good for Enterprise still runs, so it isn't looking at the recovery to determine rooted status.
Nevermind, clockwork didn't survive a reboot. Good news is I was able to get a backup first.
After installing recovery via fastboot, try removing the following files via adb:
/system/etc/install-recovery.sh
/system/recovery-from-boot.p
Sent from my Nexus One using XDA App
danger-rat said:
After installing recovery via fastboot, try removing the following files via adb:
/system/etc/install-recovery.sh
/system/recovery-from-boot.p
Sent from my Nexus One using XDA App
Click to expand...
Click to collapse
When I try to do this from the recovery, these files are not found, and adb can't see the device from the bootloader. If I boot into the OS, it will be too late - the recovery would be wiped by then and I am back to square one. I must be missing something.
Is there any way to pull the System partition and mount the .img file on my PC to do this? That sounds a little dangerous though
Just thought, you need root to delete the files.
You'd probably have to root, install recovery, then install a non-rooted ROM, but keep custom recovery...
Sent from my Nexus One using XDA App
This is what you need to do:
1) boot your device into the OS
2) download the rageagainstthecage binary and save it as rageagainstthecage in the /tools folder (in the android SDK)
3) plug your device to your computer
4) open a command prompt in the /tools directory
5) type adb devices to make sure your computer sees your device
6) push the rageagainstthecage binary to /data/local/tmp/ by typing adb push rageagainstthecage /data/local/tmp/rageagainstthecage
7) type adb shell to open a shell
8) change the permissions on the binary to allow it to run by typing chmod 700 /data/local/tmp/rageagainstthecage
9) navigate to the directory (cd /data/local/tmp) and execute the binary by typing ./rageagainstthecage
10) wait for it to run, and it will exit the shell
enter the following command at the prompt: adb kill-server
11) enter the following command at the prompt: adb start-server
12) open an adb shell again: adb shell
13) now you should have a temporary root shell. You should see a # instead of a $. if you still see the $, go back to step 9. You may have to do this a few times (I had to do it 3 times before I got root access)
14) now, mount the /system partition as r/w by typing mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system
15) delete the two files: rm /system/etc/install-recovery.sh and rm /system/recovery-from-boot.p
16) mount the partition as r/o by typing mount -o remount,ro -t yaffs2 /dev/block/mtdblock3 /system
17) exit the shell
18) now flash your custom recovery
Awesome, thanks. I'll give it a shot later!
This worked flawlessly, thanks for the great writeup!
Santoro said:
This worked flawlessly, thanks for the great writeup!
Click to expand...
Click to collapse
Two things: First, don't forget that any update from Google always has those two files in it, so they will reappear after every update.
Second, I just reread your first post again. I think you should still be able to kepp root and have your company's email working. I think the problem was that you were using an AOSP-based ROM instead of a stock-based one. Follow the directions for rooting in my signature (the first part is essentially the same as what you just did to gain r/w access to the system partition via adb, the second part is copying su and Superuser.apk to the right directories). Root is essentially one additional file copied to your /system directory, so I believe your company's email will still work with root.
efrant said:
This is what you need to do:
1) boot your device into the OS
2) download the rageagainstthecage binary and save it as rageagainstthecage in the /tools folder (in the android SDK)
3) plug your device to your computer
4) open a command prompt in the /tools directory
5) type adb devices to make sure your computer sees your device
6) push the rageagainstthecage binary to /data/local/tmp/ by typing adb push rageagainstthecage /data/local/tmp/rageagainstthecage
7) type adb shell to open a shell
8) change the permissions on the binary to allow it to run by typing chmod 700 /data/local/tmp/rageagainstthecage
9) navigate to the directory (cd /data/local/tmp) and execute the binary by typing ./rageagainstthecage
10) wait for it to run, and it will exit the shell
enter the following command at the prompt: adb kill-server
11) enter the following command at the prompt: adb start-server
12) open an adb shell again: adb shell
13) now you should have a temporary root shell. You should see a # instead of a $. if you still see the $, go back to step 9. You may have to do this a few times (I had to do it 3 times before I got root access)
14) now, mount the /system partition as r/w by typing mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system
15) delete the two files: rm /system/etc/install-recovery.sh and rm /system/recovery-from-boot.p
16) mount the partition as r/o by typing mount -o remount,ro -t yaffs2 /dev/block/mtdblock3 /system
17) exit the shell
18) now flash your custom recovery
Click to expand...
Click to collapse
Without unlock recovery i can install Amon RA?(‘fastboot oem unlock‘)In this way as u typed.
W3ber said:
Without unlock recovery i can install Amon RA?(‘fastboot oem unlock‘)In this way as u typed.
Click to expand...
Click to collapse
Not sure what you are asking.
If your bootloader is unlocked, you can use fastboot. Download the recovery image you want into the /tools directory of your SDK and rename it recovery.img. Open a command prompt in the same directory. Type fastboot devices to make sure fastboot sees you device. Then type fastboot flash recovery recovery.img and you are done.
If your bootloader is not unlocked, you can use flash_image, but you need root access. See attachments on how to get root if your bootloader is locked, and how to flash a custom recovery with a locked bootloader.
efrant said:
Two things: First, don't forget that any update from Google always has those two files in it, so they will reappear after every update.
Second, I just reread your first post again. I think you should still be able to kepp root and have your company's email working. I think the problem was that you were using an AOSP-based ROM instead of a stock-based one. Follow the directions for rooting in my signature (the first part is essentially the same as what you just did to gain r/w access to the system partition via adb, the second part is copying su and Superuser.apk to the right directories). Root is essentially one additional file copied to your /system directory, so I believe your company's email will still work with root.
Click to expand...
Click to collapse
I was using the Nexus One 2.2.1 stock image directly from Google. My problem is that the Good for Enterprise actively checks for root. Specifically if the Superuser.apk exists, it refuses to let me in and cites corporate policy.
Since getting my stock backup, I was free to experiment and I had some success getting Good running on CM 6.1. Taking clues from your earlier instructions, I used adb shell to rename su to su.bak and Superuser.apk to Superuserapk.bak on the phone, then rebooted. After the reboot, I don't have root anymore.
This is a compromise, but at least I don't have to give up that CM6 goodness just to use my corporate email. So far I have not seen any issues in CM6 resulting from not having root. In an emergency I can rename them the superuser files back using rageagainsthecage as you outlined but I probably won't do it often.
Thanks for the help!
Santoro said:
I was using the Nexus One 2.2.1 stock image directly from Google. My problem is that the Good for Enterprise actively checks for root. Specifically if the Superuser.apk exists, it refuses to let me in and cites corporate policy.
Since getting my stock backup, I was free to experiment and I had some success getting Good running on CM 6.1. Taking clues from your earlier instructions, I used adb shell to rename su to su.bak and Superuser.apk to Superuserapk.bak on the phone, then rebooted. After the reboot, I don't have root anymore.
This is a compromise, but at least I don't have to give up that CM6 goodness just to use my corporate email. So far I have not seen any issues in CM6 resulting from not having root. In an emergency I can rename them the superuser files back using rageagainsthecage as you outlined but I probably won't do it often.
Thanks for the help!
Click to expand...
Click to collapse
Just for your info, Superuser.apk does not give you root, it only manages the root permissions. If your corporate email application checks only for Superuser.apk, you could technically delete Superuser.apk and keep the su binary. Your would still have root, and your corporate email app would work. The su binary is what actually gives you root access. All that the Superuser.apk file does is manages the permissions for root access, i.e., it allows or denies applications from using the su binary. Everything would work fine (including all apps that require root) without Superuser.apk. HOWEVER, just as a warning, without Superuser.apk, you would have no control over which apps have root access...
I will have to put su back and see what happens. I may be recalling wrong, maybe it checks for su also...
I experimented a bit more and it looks for both files. Sorry for the confusion.
I have been experimenting with my new droid/milestone the past couple of days, odd problems which I am past now but still curious about.
Firstly after flashing the 2.1 sbf with rsd it will autoboot and screen slider will be there, then when I reboot, screen slider will be missing. This only happend when I flashed an sbf from the sbf site(2.1 uk version, not service), doing a factory reset didn't have any problem -could reboot as many times and slider would be there.... then suddenly after factory boot it would dissapear after first boot. Anyway solved this problem by installing screen mode widget after first boot after flash, solved problem, but still weird. Fixed this now but still curious about it.
Next, nandroid backup is missing from recovery menu, I have rooted and can execute root commands after typing "su" via Android Terminal emulator, so pretty sure is rooted. So why no nandroid? I thought I could do nandroid backup after rooting.
Next busybox won't install, tried the app, did the "searching system" for over an hour(not exagerrating), eventually gave up and uninstalled.
Trying to do a "manual busybox install" now, using this guide:
Busybox How-to? - Android Forums
Can't execute commands via usb/adb in recovery mode as the other guy suggested so been trying these commands both with terminal emulator on phone, and usb-debugging mode with windows shell. Using these I can go "su" and type "ls" to see files on my droid phone....but when I try to "mount /system" or /sdcard from windows I just get a print about mount options, when I try to "cat /sdcard/busybox > /system/xbin/busybox" I get a "file is read only" error.
I would like advice on how to install busybox, I would like to do it manually(because the app seems to not work for me, remember I waited over an hour while it "searched") and I want to learn to manually do stuff anyway. I tried to chmod /system/xbin too, but that didn't seem to change it from read only.
Also any thoughts on why nandroid backup is missing from my recovery menu even though my droid is rooted. I thought it was meant to appear.
I am still learning and researching, and appreciate any links or tips.
droidtech1 said:
Next, nandroid backup is missing from recovery menu, I have rooted and can execute root commands after typing "su" via Android Terminal emulator, so pretty sure is rooted. So why no nandroid? I thought I could do nandroid backup after rooting.
Click to expand...
Click to collapse
This is odd. Which OpenRecovery did you install? Androidiani? GOT? Or the "original" OpenRecovery? Are you aware, that you come into OpenRecovery by starting Recovery Mode and apply update.zip?
droidtech1 said:
Next busybox won't install, tried the app, did the "searching system" for over an hour(not exagerrating), eventually gave up and uninstalled.
Trying to do a "manual busybox install" now, using this guide:
Busybox How-to? - Android Forums
Click to expand...
Click to collapse
Using the app from the market worked like a charm for me. No idea, what might have gone wrong for you...
droidtech1 said:
Can't execute commands via usb/adb in recovery mode as the other guy suggested so been trying these commands both with terminal emulator on phone, and usb-debugging mode with windows shell. Using these I can go "su" and type "ls" to see files on my droid phone....but when I try to "mount /system" or /sdcard from windows I just get a print about mount options, when I try to "cat /sdcard/busybox > /system/xbin/busybox" I get a "file is read only" error.
Click to expand...
Click to collapse
For remounting, try "mount -o rw,remount /dev/block/mtdblock6 /system" and for undoing this, use "ro" instead of "rw".
droidtech1 said:
I would like advice on how to install busybox, I would like to do it manually(because the app seems to not work for me, remember I waited over an hour while it "searched") and I want to learn to manually do stuff anyway. I tried to chmod /system/xbin too, but that didn't seem to change it from read only.
Click to expand...
Click to collapse
You should download busybox and put the "busybox"-file in the directory /sdcard. After that do:
Code:
# su
# mount -o rw,remount /dev/block/mtdblock6 /system
# cp /sdcard/busybox /system/xbin
# cd /system/xbin
# chmod 755 busybox
# ./busybox --install
# mount -o ro,remount /dev/block/mtdblock6 /system
One thought at the end: How did you root?
I rooted by flashing "vunerable recovery" using RSD lite, copied milestone-root.zip to sd card, renamed it update.zip, rebooted into recovery mode, flashed update.zip from there.
I didn't realise I had to install something like open recovery, think because I remember not having to do that on my pulse? Anyway will try and install one of those now.
Thanks those commands at the end helped, actually managed to copy busybox to /system/xbin, however the 2nd last one "./busybox --install" gave me a load of errors -all being no such file or directory, for example "/usr/bin/wc: no such file"
about 30 of those path errors. Maybe the command path "./busybox" needs to be something else?
ah, okay. sorry, I thought you already installed an openrecovery. for many cool features you will need it (e.g. nandroid, for overclocking it's not a must but a nice-to-have). please don't use GOT, it's rather old already. androidiani is okay, I think.
I think your previous attempts to install busybox via the app etc. mixed up some internal links in the device. please reboot and try again (the above steps except the "cp ..."). seems like the app tried to install busybox to /usr/bin but failed... I hope this failed attempt will be fixed by a simple reboot. otherwise it would be great to have the output of:
Code:
# su
# ls /usr/bin
No I re-flashed my main sbf and also did a factory reset to do a clean start, only thing since that full wipe I have done is rooting in the method I described, installed the screenmode widget, textedit, and android terminal emulator.
I have no such file /usr, are you sure I should have this in droid/milestone?
Here is my full output of my root system using ls:
tmp
pds
cdrom
sqlite_stmt_journals
config
cache
sdcard
d
etc
system
sys
sbin
proc
init_prep_keypad.sh
init.rc
init.mapphone_umts.rc
init.mapphone_cdma.rc
init.goldfish.rc
init
default.prop
data
root
dev
perhaps "/usr" is a sub inside one of the above folders? I tried using "find" to find it but that command dosn't seem to work since it won't even find the ones I can see with ls
I found it, /usr is inside /system... so if busybox was moved to /system/xbin, I'm guessing the ./ means install it to the parent directory which was /system which /usr is also in.
The errors I got said no such file "/usr" so It seems like it is trying to install to the wrong directory.... perhaps the command should be "busybox --install" or "/busybox --install" I don't want to experiment and mess things up before your opinion on this.
*edit almost forgot, output of /system/usr is
keychars
bin
srec
keylayout
share
output of /system/usr/bin is
panic_daemon
gki_pd_notifier
nvm_daemon
clean_dex.sh
brcm_guci_drv
bplogd_daemon
This is really strange. Maybe your busybox-file is corrupt.
Where did you download the busybox-file?
Which sbf did you flash?
So for explanation-purposes: When you put an executable or script file in any directory, you can execute it by first making it executable ("chmod 755 /system/xbin/busybox"), changing to that directory ("cd /system/xbin") and then executing it by adding "./" in front of it. The dot slash always stands for the _current_ directory. The _parent_directory has two dots "../".
If you want, you may try:
# /system/xbin/busybox --install
instead of
# ./busybox --install
Or maybe try this one:
# /system/xbin/busybox --install -s /system/xbin
Last time, I installed busybox into the directory /data/busybox, which worked brilliantly, but this path turned out to be unpractical. So I wanted to reinstall it in a different directory. I removed everything from /data/busybox including the directory itself and tried to start the whole procedure with /system/xbin. But that time it protested, that there were no files in "/data/busybox/...". Conclusion: The last busybox-install affected the second one. When I remember correctly I rebooted after that and used the app from the market *g*
My main sbf I flashed was android 2.1(uk version).
I downloaded busybox 1.17.2(won't let me post url here), was from droidforums dot net.
I don't remember if I tried all of his commands, but the last one on that forum seems to have worked.. I think......... it was:
"busybox --install /system/xbin/"
After remounting with your commands and typing the above command, I didn't get any errors, I synced and rebooted and now when I "ls /system/xbin" it shows a bunch of files/names which look like busybox commands. When I type "busybox" it outputs a bunch of commands too... so I am guessing this means it has succesfully installed? I can't say I tried these before attempting install so I have no comparison but I assume I would have a different output if busybox wasn't installed.
So assuming it worked, why would
"busybox --install /system/xbin/" work, and
"/system/xbin/busybox --install" not?
I also managed to install open recovery and do a nandroid backup succesfully
I have another short question, not specific to android but happens in all terminals I use, windows and linux alike. Sometimes I cannot execute commands anymore and it just becomes text in the terminal(just re-echo'ing my text output, without executing any functions)... can't remember specifically when it happened on my windows or linux pc shells, but on my android it happens whenever I have to give "SU" permission to the terminal, I have to quickly close the terminal and reload it again to get su access. I'm sure there is a name for this "state" where you are locked out of using commands in the shell and just typing text but I can't find a way to get out of it(without closing and re-opening terminal), there must be some key combination to be able to execute commands again in the current terminal session. If you have any idea what I am talking about?
Thanks for all your help so far.
droidtech1 said:
My main sbf I flashed was android 2.1(uk version).
Click to expand...
Click to collapse
Don't want to try one of the 2.2?
droidtech1 said:
I downloaded busybox 1.17.2(won't let me post url here), was from droidforums dot net.
I don't remember if I tried all of his commands, but the last one on that forum seems to have worked.. I think......... it was:
"busybox --install /system/xbin/"
After remounting with your commands and typing the above command, I didn't get any errors, I synced and rebooted and now when I "ls /system/xbin" it shows a bunch of files/names which look like busybox commands. When I type "busybox" it outputs a bunch of commands too... so I am guessing this means it has succesfully installed? I can't say I tried these before attempting install so I have no comparison but I assume I would have a different output if busybox wasn't installed.
Click to expand...
Click to collapse
Yes, this sounds very much like installation was successful.
droidtech1 said:
So assuming it worked, why would
"busybox --install /system/xbin/" work, and
"/system/xbin/busybox --install" not?
Click to expand...
Click to collapse
typing "busybox" without the path in front of it worked, because busybox is in the directory /system/xbin, which is already in your $PATH-variable (try "echo $PATH"). So the command interpreter (shell) will automatically look up "busybox" in /system/xbin.
I had a look at the busybox syntax and it's actually
Code:
busybox --install [-s] [INSTALLDIR]
So you have to put the directory you want to install in at the end. That's what your last command makes use of
droidtech1 said:
I have another short question, not specific to android but happens in all terminals I use, windows and linux alike. Sometimes I cannot execute commands anymore and it just becomes text in the terminal(just re-echo'ing my text output, without executing any functions)... can't remember specifically when it happened on my windows or linux pc shells, but on my android it happens whenever I have to give "SU" permission to the terminal, I have to quickly close the terminal and reload it again to get su access. I'm sure there is a name for this "state" where you are locked out of using commands in the shell and just typing text but I can't find a way to get out of it(without closing and re-opening terminal), there must be some key combination to be able to execute commands again in the current terminal session. If you have any idea what I am talking about?
Click to expand...
Click to collapse
Sounds like this is just the state, when shell is busy, i.e. when the last process you started is still running and no prompt ($ or #) is displayed. You may kill the last process in linux using CTRL+C, which will hopefully bring back the shell prompt. No idea which shortcut replaces this on the milestone/droid. I never use any android terminals, but only the ADB-Shell: http://developer.android.com/guide/developing/tools/adb.html
I'm learning to build apps for android so I thought having 2.1 on my droid would be better for testing (instead of 2.2). I also have a Nexus-S with 2.3 and a tmobile-pulse with 1.5. So I want to keep the most native version on each phone since most consumers won't install custom roms, although some will get updates anyway.
I use my droid a lot when I am out and use the terminal a lot so having busybox too has given me more to play around with. I actually find my droid much better working on than the nexus s, love the keyboard and dpad.
Introduction
The following procedure will walk you through the step-by-step process for gaining root access on the Nvidia Shield.
Note: You must have an unlocked bootloader before you can proceed with this tutorial!
A tutorial on how to unlock your Shield's bootloader can be found here.
This tutorial also assumes how have the correct ADB and Fastboot drivers installed for your device, for a tutorial on how to install the ADB and Fastboot drivers for the Shield please look here.
Due to the nature of modifying devices system files the standard XDA disclaimer applies: I take no responsibility for bricked devices due to the following rooting procedure, no warranty express or implied is given, I will not be held responsible if you mess up your device by following this procedure!
Procedure
Before you begin please make sure to read and re-read the whole procedure, making sure you understand the directions.
1. Download the "Superuser-su.zip" file and the "roth-insecure-boot-63.img" file that are attached to this post. After you have downloaded the files, extract the contents of the "Superuser-su.zip" file which contains Superuser.apk and the su binary, and move them to your ADB and Fastboot folder on your computer. Also transfer the "roth-insecure-boot-63.img" to your computer's ADB and Fastboot folder.
MD5 Checksum for "roth-insecure-boot-63.img": F8BA5C48D0323D99E2A748C77BF647F6
2. Connect your Shield to your computer using your USB cable. For maximum reliability please connect the USB cable to a USB 2.0 port directly connected to the motherboard as USB ports on the front of a case panel or USB 3.0 ports can sometimes be unreliable.
3. Now that your Shield is connected to your computer make sure that "USB debugging" is enabled under the Developer Options section in the system settings menu (If the Developer Options section is hidden, go to the About Phone/About Tablet section of the system settings and then tap on the item that lists the Build number 7 times or until it says "You are now a developer" and the Developer Options section becomes visible in the system settings).
4. Open a command prompt window (cmd) in your ADB and Fastboot folder on your computer and issue the following commands (If you are new to using ADB and Fastboot I would recommend checking out this excellent guide to get you up and running):
Code:
adb reboot bootloader
Now that you are in fastboot mode let's make sure that the computer see's our device:
Code:
fastboot devices
If the computer see's our device then we can proceed, if it doesn't see your device make sure you are in fastboot mode and have the correct ADB and Fastboot drivers installed for the Shield.
Now we will be booting an insecure boot.img (ro.secure = 0) to our device to allow us to gain root acess:
Code:
fastboot boot roth-insecure-boot-63.img
After the insecure boot.img finishes flashing the device will automatically boot up using the insecure boot.img.
5.First we need to mount the /system partition as read/write so we can modify it:
Code:
adb shell
mount -o rw,remount -t ext4 /dev/block/platform/sdhci-tegra.3/by-name/APP /system
exit
6. Now we need to run the following commands to push the Superuser.apk and su binary to there correct positions and set the proper file permissions:
Code:
adb push su /system/xbin
adb push Superuser.apk /system/app
adb shell
chmod 6755 /system/xbin/su
chmod 644 /system/app/Superuser.apk
mount -o ro,remount -t ext4 /dev/block/platform/sdhci-tegra.3/by-name/APP /system
sync
reboot
7. After the device reboots and power on into the Android Operating System you should see Koush's Superuser app in your app-drawer and you should be rooted. If you would like to verify root access you can download and run Root Checker Basic from the Play Store here. Enjoy!
Credits: Koush for his open source Superuser.apk and the su binary (https://github.com/koush/Superuser)
If users would like me to create a 1-click root process of this please let me know and I will do so .
If you are stuck with the rooting procedures I would recommend checking out this great video tutorial by wwjoshdew.
Alternatively the following works in almost one click (one fast boot, actually): https://github.com/linux-shield/shield-root
Gnurou said:
Alternatively the following works in almost one click (one fast boot, actually): https://github.com/linux-shield/shield-root
Click to expand...
Click to collapse
It's just whole unlocking thing and giving up your devices warranty. NVIIDA being able to decline your RMA if your fan goes out and the unit overheats. Or if the scree dies (for example). I'll do it, just gotta grow a pair first.
wwjoshdew said:
It's just whole unlocking thing and giving up your devices warranty. NVIIDA being able to decline your RMA if your fan goes out and the unit overheats. Or if the scree dies (for example). I'll do it, just gotta grow a pair first.
Click to expand...
Click to collapse
I did my RMA and nvidia sent me a new 1. So you should get your new shield b4 you send it back if you happen to root it and the screen dies.
This is a pretty complicated way of rooting. All I did was unlock the bootloader, flashed Clockworkmod Recovery, and then flashed the SuperSu zip with that. Rooted! As easy as a Nexus.
dark42 said:
This is a pretty complicated way of rooting. All I did was unlock the bootloader, flashed Clockworkmod Recovery, and then flashed the SuperSu zip with that. Rooted! As easy as a Nexus.
Click to expand...
Click to collapse
I hear yeah, this procedure is meant for those that really want to understand how the basic rooting process works and who want to gain experience manually performing these types of procedures .
Sent from my SCH-I535 using xda premium
shimp208 said:
I hear yeah, this procedure is meant for those that really want to understand how the basic rooting process works and who want to gain experience manually performing these types of procedures .
Sent from my SCH-I535 using xda premium
Click to expand...
Click to collapse
This method is actually nearly the same. It's a bootable self-contained image (like recovery is) that mounts the correct partitions, installs the necessary bits, and is done.
I haven't done this yet ... but could you also provide instructions on how to revert? I ask this as it would be nice to know that there is a back-out plan.
Kris
i00 said:
I haven't done this yet ... but could you also provide instructions on how to revert? I ask this as it would be nice to know that there is a back-out plan.
Kris
Click to expand...
Click to collapse
To unroot your Shield since you are only temporarily booting an insecure boot image rather then flashing it, if you run the following commands in either ADB shell or terminal emulator will unroot your device:
Code:
$ su
# mount -o rw,remount -t ext4 /dev/block/platform/sdhci-tegra.3/by-name/APP /system
# rm -f /system/app/Superuser.apk
# rm -f /system/xbin/su
# mount -o ro,remount -t ext4 /dev/block/platform/sdhci-tegra.3/by-name/APP /system
Then after you have entered those commands reboot your device and you'll be unrooted.
shimp208 said:
To unroot your Shield since you are only temporarily booting an insecure boot image rather then flashing it, if you run the following commands in either ADB shell or terminal emulator will unroot your device:
Code:
$ su
# mount -o rw,remount -t ext4 /dev/block/platform/sdhci-tegra.3/by-name/APP /system
# rm -f /system/app/Superuser.apk
# rm -f /system/xbin/su
# mount -o ro,remount -t ext4 /dev/block/platform/sdhci-tegra.3/by-name/APP /system
Then after you have entered those commands reboot your device and you'll be unrooted.
Click to expand...
Click to collapse
OK ... well lets say after rooting we install an app that uses root access to stuff up your device ... how do you restore the original image?
Kris
i00 said:
OK ... well lets say after rooting we install an app that uses root access to stuff up your device ... how do you restore the original image?
Kris
Click to expand...
Click to collapse
The original factory restore image that you can be flashed to your shield to return it to stock can be downloaded from here, along with the factory image extraction instructions (Under the open source resources section), as well as the factory image flashing instructions.
Does anyone if the root stop you from updating the device like GS4?
Simply rooting does not. I was rooted and updated. You lose root but can just reroot it like the first time. I am not sure if you have a custom recovery installed though. I haven't used one on the shield.
I am using the window 8 and I can't get the command prompt to work either directly open or open it as administrator to type the command. Any idea what I am doing wrong?
Shimp208. Can you create a video on how to unlock and root the shield?
Sent from my SHIELD using Tapatalk 2
wrc1010 said:
I am using the window 8 and I can't get the command prompt to work either directly open or open it as administrator to type the command. Any idea what I am doing wrong?
Shimp208. Can you create a video on how to unlock and root the shield?
Sent from my SHIELD using Tapatalk 2
Click to expand...
Click to collapse
When you mean you can't get the command prompt to directly open what do you mean by that? Does command prompt not open or run at all when you open it? Do you have ADB and Fastboot installed and the files listed for this procedure in your ADB and Fastboot directory? The Shield I rooted was my friends and he's on vacation right now so I unfortunately can't make a video right now , but I'll still be happy to try and help you through the procedure.
Finally success root my shield
oh god
wrc1010 said:
Finally success root my shield
Click to expand...
Click to collapse
I want that feeling soooo bad. The drivers aren't installing on my computer correctly. I can boot my shield via command but when I enter adb devices nothing shows up even though in device manager the device shows up as Nvidia Shield ADB.
Sad times, its tough as its so new everyone is still trying to figure it out and if the drivers don't install first time there aren't any problem solving threads etc
gogul1 said:
I want that feeling soooo bad. The drivers aren't installing on my computer correctly. I can boot my shield via command but when I enter adb devices nothing shows up even though in device manager the device shows up as Nvidia Shield ADB.
Sad times, its tough as its so new everyone is still trying to figure it out and if the drivers don't install first time there aren't any problem solving threads etc
Click to expand...
Click to collapse
What drivers are you trying to install and which version of Windows are you running?
Drivers
shimp208 said:
What drivers are you trying to install and which version of Windows are you running?
Click to expand...
Click to collapse
The ADB drivers and I'm running windows 7 64bit
Been trying to install them all day but I can bootload into shield but it can't pick up devices so can't root it.
gogul1 said:
The ADB drivers and I'm running windows 7 64bit
Been trying to install them all day but I can bootload into shield but it can't pick up devices so can't root it.
Click to expand...
Click to collapse
Did you try and install these drivers? Make sure to uninstall your old driver installation first.
Hi guys, I would really appreciate some help. I am able to root my gear and transfer the TWRP via odin. But when I reboot into recovery it just goes back to the stock launcher. I read this in the developer thread:
IF YOU FIND THE RECOVERY IS NOT STICKING & YOUR GEAR WIPES WHEN ATTEMPTING TO ACCESS RECOVERY AFTER FLASHING.
YOU MUST ROOT YOUR GEAR PRIOR TO INSTALLING TWRP AGIAN & RUN THE FOLLOWING COMMANDS IN ADB.
*NOTE* YOU WILL HAVE TO ACCEPT A SUPERUSER REQUEST POPUP WHEN EXECUTING "SU" COMMAND.
*NOTE 2* PROBABLY A GOOD IDEA TO RUN THIS PRIOR TO FIRST INSTALLATION, TO SAVE TIME.
Code:
$ adb shell
$ su
# mount -o rw,remount /dev/block/mmcblk0p20 /system
# rm /system/recovery-from-boot.p
IF YOU DELETE THE "RECOVERY-FROM-BOOT.P" FILE YOU MUST RELFASH TWRP RECOVERY.
I have rooted and installed roms on phone before but working in the developer tools is new to me. Can anyone explain exactly how and when to do this during the TWRP recovery install process? Or possibly just point me to a how to or youtube on basic adb commands? I have searched and it looks super complicated. Just need to know how to run these 3 commands.
THANKS!
i have the exact same issue, is there any answer for this??
Wettpassat said:
Hi guys, I would really appreciate some help. I am able to root my gear and transfer the TWRP via odin. But when I reboot into recovery it just goes back to the stock launcher. I read this in the developer thread:
IF YOU FIND THE RECOVERY IS NOT STICKING & YOUR GEAR WIPES WHEN ATTEMPTING TO ACCESS RECOVERY AFTER FLASHING.
YOU MUST ROOT YOUR GEAR PRIOR TO INSTALLING TWRP AGIAN & RUN THE FOLLOWING COMMANDS IN ADB.
*NOTE* YOU WILL HAVE TO ACCEPT A SUPERUSER REQUEST POPUP WHEN EXECUTING "SU" COMMAND.
*NOTE 2* PROBABLY A GOOD IDEA TO RUN THIS PRIOR TO FIRST INSTALLATION, TO SAVE TIME.
Code:
$ adb shell
$ su
# mount -o rw,remount /dev/block/mmcblk0p20 /system
# rm /system/recovery-from-boot.p
IF YOU DELETE THE "RECOVERY-FROM-BOOT.P" FILE YOU MUST RELFASH TWRP RECOVERY.
I have rooted and installed roms on phone before but working in the developer tools is new to me. Can anyone explain exactly how and when to do this during the TWRP recovery install process? Or possibly just point me to a how to or youtube on basic adb commands? I have searched and it looks super complicated. Just need to know how to run these 3 commands.
THANKS!
Click to expand...
Click to collapse
i have the exact same issue, is there any answer for this??
Well it's been well over a year since I did that but let's see if I can help..... Before I start I'm hoping you've already enabled adb debugging on the gear and downloaded adb onto your computer. I believe you run the commands after you've run cygnia but before you flash twrp. You run the task from a command prompt from your pc. I'm pretty sure you don't include the $ or #. Before you start try the adb command- adb devices from the command prompt on your pc. That'll let you know if the gear is connected. I remember being a bit intimidated by it all as it was different to any other flash I'd done. In reflection it's very easy, type the line in a command prompt, press enter, wait for the cursor to come up again, type the next line. As for guides..... I can't remember which one I used but there's plenty out there.
** Requires ROOT+Busybox and either Terminal or a capable File Manager
So you don't feel like flashing a new ROM and losing all your data, but your carrier's boot up and shutdown branding is getting on your nerves? Here is what you do, the basic idea is the same as putting on a new boot animation
I'll assume you're using a Terminal and bootsamsung.qmg for the rest of this, the other files follow the same method
Copy stock boot and shutdown animations onto your SD card, I'll call the path to this location %sd%. A copy of the stock files in the attached archive.
Open terminal and become root
Code:
su
You may need to remount your /system partition as writable, if you're connecting via ADB, adb.exe may crash here - that's fine, just re-connect the USB cable and you shouldn't need to repeat this step again
Code:
mount -o remount,rw [COLOR="RoyalBlue"]/system[/COLOR]
Copy bootsamsung.qmg from %sd% to /system/media/,
Code:
busybox cp -f "[COLOR="RoyalBlue"]%sd%[/COLOR][B][COLOR="Green"]bootsamsung.qmg[/COLOR][/B]" "[COLOR="RoyalBlue"]/system/media/[/COLOR][B][COLOR="Green"]bootsamsung.qmg[/COLOR][/B]"
Set the permissions of the file to 644,
Code:
chmod [COLOR="red"]644[/COLOR] "[COLOR="RoyalBlue"]/system/media/[/COLOR][B][COLOR="Green"]bootsamsung.qmg[/COLOR][/B]"
Get rid of the SD card copy if you don't want it anymore,
Code:
rm -f "[COLOR="RoyalBlue"]%sd%[/COLOR][B][COLOR="Green"]bootsamsung.qmg[/COLOR][/B]"
Clean up any overriding animations, I had this happen for my shutdown animation where my carrier had a shutdown directory in /system/media/video/ which contained another copy of shutdown.qmg, so check for the existence of these and remove them, e.g.
Code:
if [ -f [COLOR="RoyalBlue"]/system/media/video/[/COLOR][B][COLOR="Purple"]bootsamsung[/COLOR]/[COLOR="Green"]bootsamsung.qmg[/COLOR][/B] ]; then
rm -f [COLOR="RoyalBlue"]/system/media/video/[/COLOR][B][COLOR="Purple"]bootsamsung[/COLOR]/[COLOR="Green"]bootsamsung.qmg[/COLOR][/B]
fi
Reboot and see what happens!
Extra notes: Always keep backups of original files. If you can't get past the boot animation, restore the backups.
paulie-uk said:
** Requires ROOT+Busybox and either Terminal or a capable File Manager
So you don't feel like flashing a new ROM and losing all your data, but your carrier's boot up and shutdown branding is getting on your nerves? Here is what you do, the basic idea is the same as putting on a new boot animation
I'll assume you're using a Terminal and bootsamsung.qmg for the rest of this, the other files follow the same method
Copy stock boot and shutdown animations onto your SD card, I'll call the path to this location %sd%. A copy of the stock files in the attached archive.
Open terminal and become root
Code:
su
You may need to remount your /system partition as writable, if you're connecting via ADB, adb.exe may crash here - that's fine, just re-connect the USB cable and you shouldn't need to repeat this step again
Code:
mount -o remount,rw [COLOR="RoyalBlue"]/system[/COLOR]
Copy bootsamsung.qmg from %sd% to /system/media/,
Code:
busybox cp -f "[COLOR="RoyalBlue"]%sd%[/COLOR][B][COLOR="Green"]bootsamsung.qmg[/COLOR][/B]" "[COLOR="RoyalBlue"]/system/media/[/COLOR][B][COLOR="Green"]bootsamsung.qmg[/COLOR][/B]"
Set the permissions of the file to 644,
Code:
chmod [COLOR="red"]644[/COLOR] "[COLOR="RoyalBlue"]/system/media/[/COLOR][B][COLOR="Green"]bootsamsung.qmg[/COLOR][/B]"
Get rid of the SD card copy if you don't want it anymore,
Code:
rm -f "[COLOR="RoyalBlue"]%sd%[/COLOR][B][COLOR="Green"]bootsamsung.qmg[/COLOR][/B]"
Clean up any overriding animations, I had this happen for my shutdown animation where my carrier had a shutdown directory in /system/media/video/ which contained another copy of shutdown.qmg, so check for the existence of these and remove them, e.g.
Code:
if [ -f [COLOR="RoyalBlue"]/system/media/video/[/COLOR][B][COLOR="Purple"]bootsamsung[/COLOR]/[COLOR="Green"]bootsamsung.qmg[/COLOR][/B] ]; then
rm -f [COLOR="RoyalBlue"]/system/media/video/[/COLOR][B][COLOR="Purple"]bootsamsung[/COLOR]/[COLOR="Green"]bootsamsung.qmg[/COLOR][/B]
fi
Reboot and see what happens!
Extra notes: Always keep backups of original files. If you can't get past the boot animation, restore the backups.
Click to expand...
Click to collapse
Hello, I'm interested in debranding my verizon s5. I'd love to get rid of the Verizon screen at bootup. I read through your directions and it seems that you are suggesting overwriting the animation with the stock that you provided. All good. It is the use of the terminal that I am completely unfamiliar with. I tried using adb.exe in a command window inside of windows 7 and it didn't even like the first command 'su' My phone is rooted with a custom rom and busybox in developer mode. Could you help me out with what terminal to use and how to connect etc. to enter the commands? I have a decent filemanager installed but It doesn't let me write to system. Thanks for this post.
Eaglebiker said:
Hello, I'm interested in debranding my verizon s5. I'd love to get rid of the Verizon screen at bootup.
Click to expand...
Click to collapse
My first comment must be to say I have a G900F, the international version of the phone and it's using a stock ROM with a few tweaks, e.g. root. A custom ROM will have changed the system partition already so this method shouldn't be applicable there - if it shows a carrier logo on a custom ROM then it's in another partition, not system
Eaglebiker said:
I read through your directions and it seems that you are suggesting overwriting the animation with the stock that you provided. All good. It is the use of the terminal that I am completely unfamiliar with.
Click to expand...
Click to collapse
I gave terminal instructions so people could do it only using their phone but as you've noticed, it's not the only option
Eaglebiker said:
I tried using adb.exe in a command window inside of windows 7 and it didn't even like the first command 'su'
Click to expand...
Click to collapse
If you are using adb, make sure that adb can gain root - the flag should be somewhere in your superuser's settings - then with your USB connected launch adb into shell mode from your computer. This makes adb act as a terminal
Code:
adb shell
If you see a $ then you are not root and will need to gain root, i.e. run su
If you see a # then you are root and don't need to do that
Eaglebiker said:
My phone is rooted with a custom rom and busybox in developer mode.
Click to expand...
Click to collapse
All good things!
Eaglebiker said:
Could you help me out with what terminal to use and how to connect etc. to enter the commands?
Click to expand...
Click to collapse
The terminal I use is can be found here (though I used v1.0.65). Most custom ROMs already include it so you may find it in your apps already. It's all on your phone so you'd type on your phone's keyboard as normal. You shouldn't have to use this if you want to use ADB.
Every time I wrote a %path% you will need to enter the real path for what you have on your device, e.g. %sd% may be /extSdCard/
Eaglebiker said:
I have a decent filemanager installed but It doesn't let me write to system.
Click to expand...
Click to collapse
What doesn't let you do this? If it's "read only" then you may need to remount the /system partition (my step 3). File managers like the one you get with CM do let you do root things but it needs to be in root mode or prompt mode (see it's settings). To find /system in a file manager, the easiest way is to keep going up until you're at /, then you should be able to go down through [/B]/system[/B]
Eaglebiker said:
Thanks for this post.
Click to expand...
Click to collapse
Thank you for letting me give some meaningful answers in post 3!
The Rom I'm using would be better described as a stock lollipop rom for the 900v with a few tweaks.
I now understand that you can have a terminal on the s5. I've installed the terminal and greatly prefer it. Using a terminal on the s5 hadn't even occurred to me and it sounds much easier then hooking to a computer needlessly. Awesome.
I manage to get su access #. in step 2.
in step 3 I type in the mount command and nothing seems to happen. no errors
in step 4 it tells me the folder or file doesn't exist. I'm certain it does. I can see it in my file manager. in the folder /extSdCard/bootsamsung.qmg and the destination folder is /system/media as well. I've tried it with and without quotes and no joy. Any clue what is going on?