All,
I follow the http://forum.xda-developers.com/showthread.php?t=532719 to setup the adb. Here is my output:
D:\>cd D:\Program Files\Android\android-sdk-windows
D:\Program Files\Android\android-sdk-windows>cd platform-tools
D:\Program Files\Android\android-sdk-windows\platform-tools>adb devices
List of devices attached
I89613ba062a device
D:\Program Files\Android\android-sdk-windows\platform-tools>adb shell
$
Does the output look correct to you? Note that I got '$' instead of '#' prompt, is that ok?
My PC assign two drive letters for the phone's SDs. The phone is a Samsung I896(from Rogers)
I have installed the latest JDK 6 and the latest Android SDK from the respective main site.
thanks,
That looks to be correct. The $ sign means you are running the standard shell. The get to the #, you need to typ 'su' without ticks. Then make sure you allow that on your phone for superuser priviledges. Now you will be the root and you will see the # prompt.
My comptuer also gives two drive letters. One for the internal, the other for the external SD card. However in shell when you cd /sdcard, I believe it goes to the internal card.
Cappy is found by adb and yes the $ is what you should see - so looks good
trekie86 said:
... The $ sign means you are running the standard shell. The get to the #, you need to typ 'su' without ticks. Then make sure you allow that on your phone for superuser priviledges. Now you will be the root and you will see the # prompt...
Click to expand...
Click to collapse
A followup question, I type the su and got the following:
su: not found
does this mean that I need to 'root' the unit first before getting the '#' prompt?
sorry for the noob question
cheve said:
A followup question, I type the su and got the following:
su: not found
does this mean that I need to 'root' the unit first before getting the '#' prompt?
sorry for the noob question
Click to expand...
Click to collapse
No, that's a very good question. I'm still new to this as well. The reason you can access su is because you need to install busybox. Sorry I don't have the market place link. There are plenty of posts about it around here. So you need to install busy box, run it's utility, then you will have options like su available. The shell through adb is a very stripped down unix shell. Hope that helps.
Oh, and yes. You would have to root the unit to get su permissions. If you aren't doing anything that requires elevated permissions, you can still use adb for push/pull of data.
Related
I've followed the instructions to a T on the wiki but I'm having a few problems. I had to downgrade to RC29 and then put "recovery.img" and the HardSPL "update.zip" on the root of the memory card. I even finished with the telnet commands (which didn't seem to do anything) and flashed JesusFreke's 1.5 crb43. Now when I try to use the Terminal Emulator for abd commands I get a permissions error. In addition, nothing shows up in my Superuser Permission application leading me to believe that I may not have rooted properly.
Any help would be greatly appreciated.
I forgot to mention that I cheated and I don't know if that was a problem. I started with crb43 and used the old exploit to downgrade to rc29 (format sd card, copy rc29 update.zip to root of card, enter bootloader mode and flash).
SharpieMarker said:
I've followed the instructions to a T on the wiki but I'm having a few problems. I had to downgrade to RC29 and then put "recovery.img" and the HardSPL "update.zip" on the root of the memory card. I even finished with the telnet commands (which didn't seem to do anything) and flashed JesusFreke's 1.5 crb43. Now when I try to use the Terminal Emulator for abd commands I get a permissions error. In addition, nothing shows up in my Superuser Permission application leading me to believe that I may not have rooted properly.
Any help would be greatly appreciated.
Click to expand...
Click to collapse
You should be using adb for terminal commands. If you type 'adb' in the terminal you will get nothing.
Go to terminal emulator and type 'su'
if it brings up the permission screen press 'allow'
if your command line changed from '$' to '#' then you have successfully rooted.
There shouldn't be anything in superuser permissions if you haven't given any apps permissions (every app is considered a different user)
Hope this helps, but this seems like a thread that would be better suited to the Q&A or Dream topics since this is the Development section not general questions...just thought I'd mention it.
Just AIM me: Breakthecycle2
Breakthecycle2 said:
Just AIM me: Breakthecycle2
Click to expand...
Click to collapse
I can't use AIM at work. I am better reached at [email protected]
I think that worked. su brought up permissions window and when I select allow I now have root. Brilliant. Thanks very much for the assistance.
EDIT:
Oops
Then what am I missing about this? I'm attempting to replace these files to increase my maximum volume and I'm unable to use any of the adb commands, even with root.
adb remount
- wait for the 'remount succeeded' message
adb push Desktop/AudioFilter.csv system/etc
adb push Desktop/AudioPara4.csv system/etc
adb push Desktop/AudioPara4_TMUS.csv system/etc - Optional
SharpieMarker said:
Then what am I missing about this? I'm attempting to replace these files to increase my maximum volume and I'm unable to use any of the adb commands, even with root.
adb remount
- wait for the 'remount succeeded' message
adb push Desktop/AudioFilter.csv system/etc
adb push Desktop/AudioPara4.csv system/etc
adb push Desktop/AudioPara4_TMUS.csv system/etc - Optional
Click to expand...
Click to collapse
adb is the Android Device Bridge that allows you to interface your G1/Magic with an x86 Windows system. It is included in the Android Developer Toolkit.
You need windows and to have your G1 connected to your computer. There are a few really good threads giving step by step walkthroughs on setting it up correctly, just use the search.
ADB for Dummies
ADB for Dummies
ADB can't be used from terminal emulator on the phone...you have to use it from your windows command prompt...read up on ADB first.
I am trying to learn how to use ADB, so I can find the cause of a problem I am having on every 2.xx Rom I have tried, and I have tried them all!
So take a look at the screen shot, and you can see it finds my phone. For some reason thats as far as I have gotten, been screwing with it for 2 days but alas I have to ask!
Thanks for any help you can be!
Roman
OK, at a quick glance....
Instead of just typing "logcat", try "adb logcat". I think you'll have better luck.
Still looking through the rest, will edit in a few minutes.
EDIT 1: Don't actually put the "#" or the "$" on your command line. Those are prompts that the shell presents to you, not something you're supposed to type.
EDIT 2: Add the sdk\tools directory to your path. It will make your life much easier. You can get away with just doing a "cd" to that directory, but in the long run things will be much easier if you just put it in your path.
EDIT 3: "Operation not permitted"????? That command should have worked. Have you rooted your phone yet?
do adb "insert command here" logcat push pull install etc...
Cool thanks for the help subliminalurge, I think I got it now!
Now to start my bluetooth headphones with 1.5 and grab a log, then load up 2.1 and grab a log and see what the HELL is wrong!
Thanks again!
One last question, is it possible to save a whole string from CMD!
Also how do you do a dalvik wipe?
These are the 2 commands I have! Not sure if either one work or not!
DALVIK WIPE:
adb remount
adb shell
# cd /system/sd/dalvik-cache
# rm *
adb reboot recovery
adb shell mount /data
adb shell rm -r /data/dalvik-cache
I havent used adb since rooting my g1, since the release of the flashrec method.
Heres my noob question
Can terminal emulator do the same things as adb?
The only thing id ever use adb for is to push/pull, and i just use root explorer for that.
Jesus, youd think i became a senior just by spamming...
Terminal Emulator can not do the same thing as ADB. ADB is Android Developer Bridge (bridge as in computer to phone connection). Terminal Emulator, if you know Linux terms, emulates a Linux terminal on the phone... so, if you do "adb shell", you'll have the same commands as you would in terminal emulator... sorry I'm confusing
mrinehart93 said:
Terminal Emulator can not do the same thing as ADB. ADB is Android Developer Bridge (bridge as in computer to phone connection). Terminal Emulator, if you know Linux terms, emulates a Linux terminal on the phone... so, if you do "adb shell", you'll have the same commands as you would in terminal emulator... sorry I'm confusing
Click to expand...
Click to collapse
Lol i see what you mean.
You need adb to theme, dont you?
Windows man, through and through
(oh the irony, of being such an android patron...)
how do i use the terminal emulator app to access adb shell?
adb shell is only used when you're on a computer, like when using android sdk tools. When you use the terminal emulator you use different commands try This Link for some help using the terminal emulator, they're basically the same as linux commands.
also this should be in the Q&A section
lol the terminal is the 'shell'
if you're running a terminal right on the phone, then consider yourself already @root when you're typing in commands.
foil said:
lol the terminal is the 'shell'
if you're running a terminal right on the phone, then consider yourself already @root when you're typing in commands.
Click to expand...
Click to collapse
Sort of. You are a user, but not "root". To become superuser you have to use the SU command.
/ $ su
~ # |
Click to expand...
Click to collapse
I'm sorry if I'm nitpicking here. Your original point remains true. You don't have to use ADB at that point to run commands. You run the command without ADB right in the terminal.
subcypher said:
Sort of. You are a user, but not "root". To become superuser you have to use the SU command.
I'm sorry if I'm nitpicking here. Your original point remains true. You don't have to use ADB at that point to run commands. You run the command without ADB right in the terminal.
Click to expand...
Click to collapse
No, you're fine. I was just assuming that he was already rooted, but you're right - it's a regular user account unless you change to superuser.
in order to do what you probably want you will have to type su. It should then ask for SU permission and then you should gey
Code:
#
.
hello everyone, idk if im in the wrong place, but im trying to connect my non rooted phone to my rooted tablet with terminal emulator.Is there a way for me to use adb because it worked with my previous phone...its not working and isn't showing any device when i input "adb devices"...Can anyone help me please, help would be greatly appreciated ?(btw usb debugging is enabled on my phone)
I have been trying to make this whole adb think work for about twenty hours strait and I still have not gotten very far. I own a mac and no pc and updated to froyo with my buddies pc. I have followed all the directions to a T over and over using terminal on the mac and I can get to the ADB commands and even to where I can see my phone by clicking devices but I must be missing something important. ANY HELP WOULD BE REALLY APPRECIATED I AM ABOUT TO PULL MY FREAKING HAIR OUT!!!
Ok, so if you can see your phone through adb, then you are definitely on the right track. Unfortunately, I'm not really familiar with OS X anymore so I'm not quite sure how to do it. Just sit tight for now until someone who does use a Mac, or has more of a clue then I do can help you out.
But seriously, don't pull your hair out. It won't stay on your head forever ya know...
Edit: oops, just saw this is JI6 (Froyo) not JF6, so I can't help you, but here is a general overview:
from terminal inside Android sdk main directory:
tools/adb devices -> list all devices connected that ADB can see
tools/adb shell -> gets a normal user shell on your phone
tools/adb reboot recovery -> reboots into recovery mode, suitable for update.zip root method
--------------------------------
Place the root update.zip on internal sdcard.
from terminal inside Android sdk directory:
tools/adb reboot recovery
Select the update software option, and you will be done.
laxwillsch said:
I have been trying to make this whole adb think work for about twenty hours strait and I still have not gotten very far. I own a mac and no pc and updated to froyo with my buddies pc. I have followed all the directions to a T over and over using terminal on the mac and I can get to the ADB commands and even to where I can see my phone by clicking devices but I must be missing something important. ANY HELP WOULD BE REALLY APPRECIATED I AM ABOUT TO PULL MY FREAKING HAIR OUT!!!
Click to expand...
Click to collapse
Start simple:
If you open a terminal on the mac, and go to your android SDK tools folder; what happens when you type ADB shell?
Or if you type any of the ADB push commands?
You need to give more detail around what you are seeing for us to help you.
Ok so if I am in terminal and i type in my /android-sdk-mac_x86/tools nothing happens and it just says /android-sdk-mac_x86/tools is a directory. But if I type the same but with /tools/abd it opens the abd command lines, like how to write code. Then when I try to "adb push rageagainstthecage-arm5.bin /data/local/tmp/rageagainstthecage-arm5.bin"
it says "-bash: adb: command not found"
however when I type laxwillsch$ /android-sdk-mac_x86/tools/adb shell
it does give me the drop down $
but when I then try to write the next line of code "chmod 0755 rageagainstthecage-arm5.bin"
it says "chmod: rageagainstthecage-arm5.bin: No such file or directory"
I am stumped I am beginning to think i need to buy a pc as I am very interested in android development and want to learn more, but it seems all the tutorials are run assuming you are on a PC
EDIT** I have downloaded the android SDK started pack, and the 2.2 root pack and they are all in my /android-sdk-mac_x86/tools folder that is directly on my Macintosh HD for simplicity
Do you know how to change directories (cd command)?
The problem is that you are trying to work in one directory, but all your tools are in another.
So change directories to the tools directory:
cd /android-sdk-mac_x86/tools/
now run your adb commands - you may have to type ./adb to tell your mac to look in the current directory for the adb command (that is what ./ means "start here")
Also, try to understand what is happening so you can more easily troubleshoot: chmod is a command to change permissions, and you are running it on the phone. If you can't push the file to the phone, then you can change it's permisssions. I guess you never got rageagainstthecage on the phone, so there is no way to chmod it.
If you can't do this on a mac, a PC is not easier. I use both, and like both, but you need to learn basic commands first - they apply to the mac terminal and the windows cmd prompt.
Getting root means moving in and out of the phone - adb shell - puts you in a terminal on the phone. So you really need to understand cd (change directory); pwd (present working directory - shows you where you are); cp (copy); and know your current path - what the ./ does.
I hope this helps, not trying to sound condescending - maybe practice a linux terminal tutorial would help
Thanks so much, I am at school right now and cant test out all that but you are really helping me understand all this! I will post tonight and let you know how it goes. again thank you
ok so i dont have my usb cable with me but I was playing around with the commands that you suggested and ureka! i finally got to a point where it says "h70-33-65-19:tools laxwillsch$" thats a first! and when i type pwd it shows "/android-sdk-mac_x86/tools" so that means I am working out of the right directory right? and from here I enable usb debugging connect my phone then just copy and paste the codes from the thread correct?
yes, it sounds like you are on the right track. But take it nice and slow when you follow the steps. It is very important that the commands are entered exactly as you see them.
Also, one step tells you to wait for something to run and kick you out of ADB - wait just like it says - takes about 45 seconds but feels like forever.
If you are in the tools directory - just by typing "adb" no quotes will give you whole page of adb commands - if you get a "command not found", then you need to add the ./ and make it ./adb
Hope this helps and again, read the commands step by step a couple times first so you understand what is happening.
In a nutsell, you push the rage file;
change its permissions, run it;
get kicked out of ADB and then open a new ADB shell;
you are now root;
remount the system partition to give you write access when it reboots;
reboot;
push over some files;
change permissions on files you pushed;
reboot;
Some things to know - SU is a command for gaining root access; when you use SU your prompt changes (in adb shell) from $ to #
If you are succesful you should see the SuperUser app listed in your apps.
Done and Done just rooted successfully couldnt have done it without you! thanks so much
Well, this is interesting.
On my Revo4g, all I did was enable USB debugging in internet only mode, and i'm faced with this:
Code:
c:\tools\android\android-sdk-windows\platform-tools>adb shell
# busybox whoami
busybox whoami
whoami: unknown uid 0
#
Looks like there's no need for rageagainstthecage, or any exploits. ADB is run as superuser already! (although for some reason ro.secure is set, and it seems to be ignored, so it possibly may be a bug)
EDIT: Nope, verified. Toggle ADB debugging on and off, and you're root!
This is most definitely not what LG intended, but hey- it works!
Still no signs of fastboot without accidentally erasing recovery or something. Looks like it's left in as emergency-only.
If you're not rooted, try this:
Open ADB shell
Your command prompt should be "$"
Run
Code:
kill `busybox pidof adbd`
Re-run ADB shell, your command prompt should change to "#"
Congrats! You're root.. now you can push "su" and whatnot.
That was strangely easy...
thecubed said:
Well, this is interesting.
On my Revo4g, all I did was enable USB debugging in internet only mode, and i'm faced with this:
Code:
c:\tools\android\android-sdk-windows\platform-tools>adb shell
# busybox whoami
busybox whoami
whoami: unknown uid 0
#
Looks like there's no need for rageagainstthecage, or any exploits. ADB is run as superuser already! (although for some reason ro.secure is set, and it seems to be ignored, so it possibly may be a bug)
EDIT: Nope, verified. Toggle ADB debugging on and off, and you're root!
This is most definitely not what LG intended, but hey- it works!
Still no signs of fastboot without accidentally erasing recovery or something. Looks like it's left in as emergency-only.
If you're not rooted, try this:
Open ADB shell
Your command prompt should be "$"
Run
Code:
kill `busybox pidof adbd`
Re-run ADB shell, your command prompt should change to "#"
Congrats! You're root.. now you can push "su" and whatnot.
That was strangely easy...
Click to expand...
Click to collapse
OKAY... So, I don't need to do superoneclick? And I don't need to go through the painful process of downloading 3-4 programs?
markapowell said:
OKAY... So, I don't need to do superoneclick? And I don't need to go through the painful process of downloading 3-4 programs?
Click to expand...
Click to collapse
Well, if you've got ADB installed, then no you don't need superoneclick, but it's main claim to fame is that it's got all of the tools bundled together.
Stick with superoneclick until I get an easy method put together...
LOL... That's sweet!
Like I mentioned elsewhere... LG wants Verizon to think all is locked down and such but secretly behind its back it is giving us free candy. Like when grandpa and grandma hide money in your room before leaving...
They left in everything needed, we only had to put the pieces together.
Bravo LG bravo... now can we have the source code for this device for 2.2 and 2.3..
Now i'm for sure rooting today, as i already have adb installed. Epic.
So i ran ADB Shell and it automatically gave me "#". I then proceeded to "kill 'busybox pidof adbd' " and it said it did it. Still had "#". I don't seem to have root though. I can't delete bingsearch.apk, can't do anything in setcpu.
When i installed super user from the market, it did say there was an update, so it asked if i wanted to install it. I said yes, and it said an error occurred but it put a zip on my sd card to update the binary and that i need to reboot into recovery and install it.
Any ideas? I don't have cwm yet so i can't exactly do that. Here's how the whole thing went down:
Code:
C:\AndroidSDK\platform-tools>adb shell
*daemon not running. starting it now on port 5037 *
*daemon started successfully *
# kill 'busybox pidof adbd'
kill 'busybox pidof adbd'
[1] Terminated kill "busybox pidof adbd"
#
Nevermind, i just went with super one click and i have root now.
powder007 said:
I then proceeded to "kill 'busybox pidof adbd' " and it said it did it.
Click to expand...
Click to collapse
Those were back-ticks, like this: `` not single quotes: ' '
powder007 said:
I don't seem to have root though. I can't delete bingsearch.apk, can't do anything in setcpu.
Click to expand...
Click to collapse
setCPU will require superuser.apk and a working su. Did you mount the system partition r/w by hand before trying to delete bing? Using this method, you'd have to mount r/w, then push su, etc.
Ah, my bad. I'm semi new to adb. Thanks for pointing that out.
I had the super user app from the market. On root explorer it didn't give me a Mount r/w button, so i knew i wasn't rooted.
The problem with this rooting method is that it's incomplete.
My method gives you entry to a root shell-- it does not "root" your device.
A "rooted" device requires a file in /system/bin/ called "su", which allows normal Android apps to access root functionality on the device.
The method I detail allows you to manually remount /system as r/w and push the required file to the proper location without requiring an exploit.
Once I have some time free from working on the deodex'd rom, and porting CM7, I will make a super-super easy one click root application for windows/linux.
Until then, this thread is mostly for technical reference for devs, and something interesting that I found