Can someone please help me, or point me in the right direction on how to setup and run simple commands through adb on a MAC? Yes, I've used the search, and yes I've searched all over the internet but I still cannot figure it out. Sorry for my stupidity lol
But any help would be greatly appreciated, thank you
Perhaps you could say a few words about what you have tried already and where you are stopped.
I'm assuming you've downloaded and installed the Mac version of the SDK, yes?
On the phone, you need to turn on Settings -> Applications -> Development -> USB debugging (and may as well check "Stay awake", too).
I don't have a OS/X box, but on Linux you need to perform the *first* adb command as root... the first time an "adb" command is run (after a reboot) it starts up an adb-server process, and that needs to be priviliged enough to write to USB. (After that, you can run adb commands as any user, since those commands "talk" to the adb-server on your Mac, which in turn talks to the phone over the USB cable.)
bftb0
Go to developer. android. com/sdk/index.html (take out the spaces - I still can't post links for some reason) and download the Android SDK for Mac. That same page also includes directions on how to get started with installation. You'll be using the Terminal within Mac OS X for ADB commands, so I would recommend getting comfortable with Terminal before jumping into the SDK. Unfortunately, you'll have to look this up because I couldn't even begin to explain everything, nor do I have the time. Hope the rest helps, though.
bftb0 said:
Perhaps you could say a few words about what you have tried already and where you are stopped.
I'm assuming you've downloaded and installed the Mac version of the SDK, yes?
On the phone, you need to turn on Settings -> Applications -> Development -> USB debugging (and may as well check "Stay awake", too).
I don't have a OS/X box, but on Linux you need to perform the *first* adb command as root... the first time an "adb" command is run (after a reboot) it starts up an adb-server process, and that needs to be priviliged enough to write to USB. (After that, you can run adb commands as any user, since those commands "talk" to the adb-server on your Mac, which in turn talks to the phone over the USB cable.)
bftb0
Click to expand...
Click to collapse
Yes I've downloaded and installed the sdk, turned debugging on and now im trying to flash the recovery image onto my phone and that is where im lost at because I don't know exactly what to do
Los-O said:
Yes I've downloaded and installed the sdk, turned debugging on and now im trying to flash the recovery image onto my phone and that is where im lost at because I don't know exactly what to do
Click to expand...
Click to collapse
Note that what you are asking (now) is completely different than what you asked about in your OP - in fact, OS X is immaterial, really, in light of what you just indicated. That suggests that you are in a hurry... if that is the case, I recommend you spend a couple days reading before you rush off and do something you might regret. It is evident from your response that you really have not been reading the threads here with much diligence.
If you are trying to flash a recovery image, that implies that your phone is already rooted; either that what you are trying it isn't going to work - you have to have a rooted phone to begin with before you flash a custom recovery image. At the moment, you can root your Eris only if it has a 1.5 (1.16.605.1 or 1.17.605.1) official Verizon/HTC release on it. This has been described if not a hundred times in the threads here, at least tens of times - you need to read some more.
Nevertheless, if you want to rush into something, here is a step by step set of instructions which was current a couple of days ago. I won't vouch for it being 100% up to date with the latest and greatest images (either ROM or recovery), but it completely describes the process involved.
Stock 1.5 --> Root (2.1) install --> Custom Recovery install -> recovery to custom ROM 0.3. That's what is working at the moment.
bftb0
bftb0 said:
Note that what you are asking (now) is completely different than what you asked about in your OP - in fact, OS X is immaterial, really, in light of what you just indicated. That suggests that you are in a hurry... if that is the case, I recommend you spend a couple days reading before you rush off and do something you might regret. It is evident from your response that you really have not been reading the threads here with much diligence.
If you are trying to flash a recovery image, that implies that your phone is already rooted; either that what you are trying it isn't going to work - you have to have a rooted phone to begin with before you flash a custom recovery image. At the moment, you can root your Eris only if it has a 1.5 (1.16.605.1 or 1.17.605.1) official Verizon/HTC release on it. This has been described if not a hundred times in the threads here, at least tens of times - you need to read some more.
Stock 1.5 --> Root (2.1) install --> Custom Recovery install -> recovery to custom ROM 0.3. That's what is working at the moment.
bftb0
Click to expand...
Click to collapse
I've already rooted my phone
Los-O said:
I've already rooted my phone
Click to expand...
Click to collapse
Well, then you should be on your way; the instructions for what you are trying to attempt are in that link I provided for you in answer to your question (which you purposely redacted when you quoted my post).
I understand that it's your first post, and I should give some leeway for that reason alone, especially since you might have gotten root without ever having used "adb" or "fastboot". (PB00IMG.ZIP method).
On the other hand, I think you can see my point. Please try to avoid wasting other people's time by providing them useful & relevant details of your situation so they can give you good answers. And reading some of the links adjacent to your own post which actually give exactly the details you are asking for might be a good idea, too.
You wanted to know "What are the directions to DisneyWorld?", but instead asked "How do I put gas in my car?" - when you already knew exactly how to do that. But don't take my word for it - reread your first post for yourself - it actually says nothing about what you are trying to do.
I don't know, maybe I got this all wrong, and you still don't have your phone talking to your OS X machine correctly with adb, and that's the source of the trouble. But then, there would be no way to know one way or another - you haven't really said.
bftb0
Download the android sdk and run this automator script.
20 Questions
Los-O:
You said "any help would be greatly appreciated." Maybe that will also include help from the surly folks, such as me.
You said you have "downloaded and installed the SDK". Let's start there. (Also, note that the Android SDK for Mac OS X is only for x86 Apple machines - stop right here if you are using an older PPC based OS X machine).
The Mac SDK is in a .zip file. I presume that means that you unzipped it somewhere on your hard drive, and that you can remember what the folder name/directory name is where you unpacked all those files. (From where I sit, that could mean that you used a GUI based tool, or something from the command line to unpack the files; but I am guessing.)
Here is a flowchart to help you with the steps.
(1) Have you successfully run the "adb" command from within a Terminal window? (Yes: goto (4), No: Continue)
(2) Do you know how to open a Terminal window in OS X? (Yes: goto (4), No: Continue)
(3) Have a look at this information about Terminal on OS X, and then
(4) Start a Terminal window up.
(5) When you type the command (followed by hitting the Enter key):
Code:
adb --help
at the command line, do you get a pageful of information about the adb command, or an error such as "command not found"? (Help Info: goto step (7), No: Continue)
(6) Add to your PATH the location of the SDK tools (including "adb"). For this step, you need to recall where you unpacked your .zip file. On my Linux box, the "adb" command (and others) are located in the folder at
/opt/android/android-sdk_r05-linux_86/tools/
where the part "/opt/android/" is the folder I unzipped them in. For OS X, surely the next folder name in the path is something other than "android-sdk-linux_86" - just poke around in whatever OS X uses as a file browser, and look for the "tools" folder underneath where you unpacked the files. Once you have done that, you should be able to type the full "path" to that (tools) folder in a command.
Let's suppose that the complete path to that "tools" folder looks something like this:
/HardDrive1/foo/bar/android-sdk_r05-mac_86/tools
Then, for example, we would add this to the current terminal (shell) PATH using the following command:
Code:
export PATH=${PATH}:/HardDrive1/foo/bar/android-sdk_r05-mac_86/tools
Obviously, you would change the part "HardDrive...86" so it matches the complete path to the "tools" folder in the SDK which you unpacked onto your machine.
You can inspect the value of PATH for correctness by typing the command
Code:
echo $PATH
Now, go back to step (5) and keep at steps 5-6 until you are able to run the "adb --help" command successfully - that is, get it to print some help information. Don't close this Terminal window after you have the PATH set correctly - we are going to use it shortly.***
(7) Plug the phone into the USB cable and the USB cable into the computer
(8) On the phone, make sure that Settings -> Applications -> Development -> USB debugging is toggled on.
(9) In the terminal window from step (6), type the commands
Code:
adb kill-server
adb devices
You will see one of three things at this point after the "adb devices" command executes:
A. (this is what we want to see)
Code:
* daemon not running. starting it now *
* daemon started successfully *
List of devices attached
HT9ABCDnnnnn device
If you see this, very good: adb has detected your phone and talked to it; continue to step # (10).
B. (not good - you probably need to run adb as the root user)
Code:
* daemon not running. starting it now *
* daemon started successfully *
List of devices attached
???????????? no permissions
In this case, the "adb" command ran, and detected the presence of the phone, but does not have sufficient privileges to write to the USB device; whether or not this happens in a given flavor or Unix (e.g. OS X) depends on what user and group permissions are set on the device, and which "groups" regular users are in. Not having OS X in front of me, I can not predict; but the solution in this case is to run the command as the root user.
It is my impression that OS X has the "sudo" command for this purpose (read here); if that is the case, then you might want to run the commands
Code:
adb kill-server
sudo `which adb` devices
If sudo is not available to you, or not setup correctly, you might have to read this Apple Technical Note, or this one, or this one
C. (some other problem - no USB device is detected)
Code:
* daemon not running. starting it now *
* daemon started successfully *
List of devices attached
Your on your own for this one - consult your local Apple OS X expert!
(10) Now you are ready to communicate with the phone using "adb" commands.
Note that running the "adb" command for the first time after your OS X machine is booted up creates a long lived adb "server" process. (You might see it in a "ps" command listing as "adb fork-server"). That process is what actually communicates with the phone. Any subsequent "adb" command first communicates with that "adb server" on your OS X machine, and then the server communicates with the phone.
Sometimes it goes stale or gets cranky after unplugging the phone too many times. Simply re-start if you want by doing a "adb kill-server" (any user can do this), followed by any adb command, keeping in mind the results from step # (9) above.
OK, whew! The desired goal was to get a recovery image loaded on to the Eris after it had been rooted - it is time to do that, as adb is working now.
See the Instructions by GrdLock here, in the section entitled "II. Installing Amon's recovery image"
bftb0
***The setting of the PATH when you use the Terminal app using the directions given in step # (6) only last for the life of a single Terminal session. If you want to make this change in such a way that it will be already set up every time you open a new Terminal window, you need to do this by editing a file in your home folder - either ".bash_profile" or ".bashrc" . (Different files names are used depending on which "shell" is used). Setting this up is an exercise left up to the interested reader.
Once you have the android sdk unzipped, add the full path to the android tools directory to your path.
I just added the path to my .bash_profile.
For me it looks like this:
export ANDROID-SDK=/Users/Aaron/android-sdk/
export PATH=$ANDROID-SDK/toolsATH
Then I save and close my bash_profile and run the command, from the terminal:
source .bash_profile
This reloads the bash_profile into the shell. Then cd to your android tools directory. Once you get into the tools directory type the command adb. If everything is correct you should see a help menu spit out to the console.
If you need help with your bash_profile a simple google search will help you out.
hey bftb0,
just wanted to chime in and say thanks for that step-by-step. been wrestling with the same issues as the original poster and your walk through got it going. thanks for being patient.
taocow
bftb0,
thank you so so soo much for that last post, I think i've finally figured it out. and also thank you for your patience, i wish i could buy you a coke or something lol
taocow said:
hey bftb0,
just wanted to chime in and say thanks for that step-by-step. been wrestling with the same issues as the original poster and your walk through got it going. thanks for being patient.
taocow
Click to expand...
Click to collapse
los-O said:
bftb0,
thank you so so soo much for that last post, I think i've finally figured it out. and also thank you for your patience, i wish i could buy you a coke or something lol
Click to expand...
Click to collapse
taocow / los-O
Did you need to run the first "adb" command as root with "sudo" ? Let me know - and also mention the version of OS X that you are using; maybe it will help other Mac users if they read this thread. (I got the impression from reading a little bit that different releases of OS X might handle "sudo" a little differently - or have different device permissions for regular users.)
Also, in reviewing this thread, I have to say ... I acted like an a$$. And I should know better, I did IT for a while. If there is one thing I learned about dealing with people and computers, it's that it is extremely easy for a misunderstanding to occur, and especially if you are helping someone out over the phone or via mail/forum. Please accept my apologies.
bftb0
bftb0 said:
taocow / los-O
Did you need to run the first "adb" command as root with "sudo" ? Let me know - and also mention the version of OS X that you are using; maybe it will help other Mac users if they read this thread. (I got the impression from reading a little bit that different releases of OS X might handle "sudo" a little differently - or have different device permissions for regular users.)
Also, in reviewing this thread, I have to say ... I acted like an a$$. And I should know better, I did IT for a while. If there is one thing I learned about dealing with people and computers, it's that it is extremely easy for a misunderstanding to occur, and especially if you are helping someone out over the phone or via mail/forum. Please accept my apologies.
bftb0
Click to expand...
Click to collapse
also now im able to install the recovery (thanks to you) but when i try and push the recovery and flash images i get
"cannot stat 'recovery.img': No such file or directory" same for the flash image
but i put the files in the tools folder like the guide said to do...?
also im on OS X 10.6.2, but no i didnt have to use the "sudo" thing you were talking about, the "adb devices" command worked the first try. and dont worry about it, i understand where you were coming from. but apology accepted, though
Los-O said:
also now im able to install the recovery (thanks to you) but when i try and push the recovery and flash images i get "cannot stat 'recovery.img': No such file or directory" same for the flash image but i put the files in the tools folder like the guide said to do...?
Click to expand...
Click to collapse
That sounds like you are referring to the files by name, but they are not in the current directory where you are running the fastboot command.
The "pwd" command (Print Working Directory) tells you what your current directory is.
The "cd folder-path" command (Change Directory) allows you to change the Terminal/Shell's idea of where the "current directory" is.
The idea behind the PATH variable is that it is a searchable list (separated by ':' colon characters), so that you can be in a given directory with the files you want to manipulate, but the commands you use are in other directories. When you start a command by typing its' name, the Terminal/Shell app walks through that list of folders in PATH (from left to right in order), looking for that program by name.
That means that if you want to run a program ("proggie") that opens a file ("myfile") that is in the current directory you might type the command.
$ proggie myfile
(or $ proggie ./myfile )
... and as long as "proggie" was in one of the folders listed in your PATH, it would run, and find your file "myfile".
But, there is no requirement that you be in the same directory with your files, or the program that you are running (for instance "fastboot"). In those cases, you need to explicitly specify the complete path to your files or programs, so they can be found. For instance:
$ proggie /users/los-o/mystuff/project3/myfile
or, if "proggie" was not in a folder in your PATH, but you knew that it was located in /opt/tools, you could type the command
$ /opt/tools/proggie myfile
If your current directory contains the file "myfile", or
$ /opt/tools/proggie /users/los-o/mystuff/project/myfile.
Same deal with fastboot - you give it the name of the recovery file as the 3rd argument on the "command line"
$ fastboot flash recovery name-of-my-copy-of-the-recovery-file.img
bftb0
*Whew!* Ok thanks again bftb0 for all the help, I think im finally starting to get the hang of this adb stuff
u have a knack for teaching
bftb0 said:
Los-O:
You said "any help would be greatly appreciated." Maybe that will also include help from the surly folks, such as me.
You said you have "downloaded and installed the SDK". Let's start there. (Also, note that the Android SDK for Mac OS X is only for x86 Apple machines - stop right here if you are using an older PPC based OS X machine).
The Mac SDK is in a .zip file. I presume that means that you unzipped it somewhere on your hard drive, and that you can remember what the folder name/directory name is where you unpacked all those files. (From where I sit, that could mean that you used a GUI based tool, or something from the command line to unpack the files; but I am guessing.)
Here is a flowchart to help you with the steps.
(1) Have you successfully run the "adb" command from within a Terminal window? (Yes: goto (4), No: Continue)
(2) Do you know how to open a Terminal window in OS X? (Yes: goto (4), No: Continue)
(3) Have a look at this information about Terminal on OS X, and then
(4) Start a Terminal window up.
(5) When you type the command (followed by hitting the Enter key):
Code:
adb --help
at the command line, do you get a pageful of information about the adb command, or an error such as "command not found"? (Help Info: goto step (7), No: Continue)
(6) Add to your PATH the location of the SDK tools (including "adb"). For this step, you need to recall where you unpacked your .zip file. On my Linux box, the "adb" command (and others) are located in the folder at
/opt/android/android-sdk_r05-linux_86/tools/
where the part "/opt/android/" is the folder I unzipped them in. For OS X, surely the next folder name in the path is something other than "android-sdk-linux_86" - just poke around in whatever OS X uses as a file browser, and look for the "tools" folder underneath where you unpacked the files. Once you have done that, you should be able to type the full "path" to that (tools) folder in a command.
Let's suppose that the complete path to that "tools" folder looks something like this:
/HardDrive1/foo/bar/android-sdk_r05-mac_86/tools
Then, for example, we would add this to the current terminal (shell) PATH using the following command:
Code:
export PATH=${PATH}:/HardDrive1/foo/bar/android-sdk_r05-mac_86/tools
Obviously, you would change the part "HardDrive...86" so it matches the complete path to the "tools" folder in the SDK which you unpacked onto your machine.
You can inspect the value of PATH for correctness by typing the command
Code:
echo $PATH
Now, go back to step (5) and keep at steps 5-6 until you are able to run the "adb --help" command successfully - that is, get it to print some help information. Don't close this Terminal window after you have the PATH set correctly - we are going to use it shortly.***
(7) Plug the phone into the USB cable and the USB cable into the computer
(8) On the phone, make sure that Settings -> Applications -> Development -> USB debugging is toggled on.
(9) In the terminal window from step (6), type the commands
Code:
adb kill-server
adb devices
You will see one of three things at this point after the "adb devices" command executes:
A. (this is what we want to see)
Code:
* daemon not running. starting it now *
* daemon started successfully *
List of devices attached
HT9ABCDnnnnn device
If you see this, very good: adb has detected your phone and talked to it; continue to step # (10).
B. (not good - you probably need to run adb as the root user)
Code:
* daemon not running. starting it now *
* daemon started successfully *
List of devices attached
???????????? no permissions
In this case, the "adb" command ran, and detected the presence of the phone, but does not have sufficient privileges to write to the USB device; whether or not this happens in a given flavor or Unix (e.g. OS X) depends on what user and group permissions are set on the device, and which "groups" regular users are in. Not having OS X in front of me, I can not predict; but the solution in this case is to run the command as the root user.
It is my impression that OS X has the "sudo" command for this purpose (read here); if that is the case, then you might want to run the commands
Code:
adb kill-server
sudo `which adb` devices
If sudo is not available to you, or not setup correctly, you might have to read this Apple Technical Note, or this one, or this one
C. (some other problem - no USB device is detected)
Code:
* daemon not running. starting it now *
* daemon started successfully *
List of devices attached
Your on your own for this one - consult your local Apple OS X expert!
(10) Now you are ready to communicate with the phone using "adb" commands.
Note that running the "adb" command for the first time after your OS X machine is booted up creates a long lived adb "server" process. (You might see it in a "ps" command listing as "adb fork-server"). That process is what actually communicates with the phone. Any subsequent "adb" command first communicates with that "adb server" on your OS X machine, and then the server communicates with the phone.
Sometimes it goes stale or gets cranky after unplugging the phone too many times. Simply re-start if you want by doing a "adb kill-server" (any user can do this), followed by any adb command, keeping in mind the results from step # (9) above.
OK, whew! The desired goal was to get a recovery image loaded on to the Eris after it had been rooted - it is time to do that, as adb is working now.
See the Instructions by GrdLock here, in the section entitled "II. Installing Amon's recovery image"
bftb0
***The setting of the PATH when you use the Terminal app using the directions given in step # (6) only last for the life of a single Terminal session. If you want to make this change in such a way that it will be already set up every time you open a new Terminal window, you need to do this by editing a file in your home folder - either ".bash_profile" or ".bashrc" . (Different files names are used depending on which "shell" is used). Setting this up is an exercise left up to the interested reader.
Click to expand...
Click to collapse
excellent post...very helpful
Los-O said:
Can someone please help me, or point me in the right direction on how to setup and run simple commands through adb on a MAC? Yes, I've used the search, and yes I've searched all over the internet but I still cannot figure it out. Sorry for my stupidity lol
But any help would be greatly appreciated, thank you
Click to expand...
Click to collapse
I do everything on a Mac, so I would be the guy to ask. How far did you get? Have you unzipped the sdk to a folder?
Basically the difference between mac and others is that when others do a command like adb, we have to do ./adb This is true for other commands too. It's easy once you get used to it.
bftb0,
Thanks so much! Step 6 solved my problem
Thank you!!
bftb0 said:
Los-O:
You said "any help would be greatly appreciated." Maybe that will also include help from the surly folks, such as me.
You said you have "downloaded and installed the SDK". Let's start there. (Also, note that the Android SDK for Mac OS X is only for x86 Apple machines - stop right here if you are using an older PPC based OS X machine).
The Mac SDK is in a .zip file. I presume that means that you unzipped it somewhere on your hard drive, and that you can remember what the folder name/directory name is where you unpacked all those files. (From where I sit, that could mean that you used a GUI based tool, or something from the command line to unpack the files; but I am guessing.)
Here is a flowchart to help you with the steps.
(1) Have you successfully run the "adb" command from within a Terminal window? (Yes: goto (4), No: Continue)
(2) Do you know how to open a Terminal window in OS X? (Yes: goto (4), No: Continue)
(3) Have a look at this information about Terminal on OS X, and then
(4) Start a Terminal window up.
(5) When you type the command (followed by hitting the Enter key):
Code:
adb --help
at the command line, do you get a pageful of information about the adb command, or an error such as "command not found"? (Help Info: goto step (7), No: Continue)
(6) Add to your PATH the location of the SDK tools (including "adb"). For this step, you need to recall where you unpacked your .zip file. On my Linux box, the "adb" command (and others) are located in the folder at
/opt/android/android-sdk_r05-linux_86/tools/
where the part "/opt/android/" is the folder I unzipped them in. For OS X, surely the next folder name in the path is something other than "android-sdk-linux_86" - just poke around in whatever OS X uses as a file browser, and look for the "tools" folder underneath where you unpacked the files. Once you have done that, you should be able to type the full "path" to that (tools) folder in a command.
Let's suppose that the complete path to that "tools" folder looks something like this:
/HardDrive1/foo/bar/android-sdk_r05-mac_86/tools
Then, for example, we would add this to the current terminal (shell) PATH using the following command:
Code:
export PATH=${PATH}:/HardDrive1/foo/bar/android-sdk_r05-mac_86/tools
Obviously, you would change the part "HardDrive...86" so it matches the complete path to the "tools" folder in the SDK which you unpacked onto your machine.
You can inspect the value of PATH for correctness by typing the command
Code:
echo $PATH
Now, go back to step (5) and keep at steps 5-6 until you are able to run the "adb --help" command successfully - that is, get it to print some help information. Don't close this Terminal window after you have the PATH set correctly - we are going to use it shortly.***
(7) Plug the phone into the USB cable and the USB cable into the computer
(8) On the phone, make sure that Settings -> Applications -> Development -> USB debugging is toggled on.
(9) In the terminal window from step (6), type the commands
Code:
adb kill-server
adb devices
You will see one of three things at this point after the "adb devices" command executes:
A. (this is what we want to see)
Code:
* daemon not running. starting it now *
* daemon started successfully *
List of devices attached
HT9ABCDnnnnn device
If you see this, very good: adb has detected your phone and talked to it; continue to step # (10).
B. (not good - you probably need to run adb as the root user)
Code:
* daemon not running. starting it now *
* daemon started successfully *
List of devices attached
???????????? no permissions
In this case, the "adb" command ran, and detected the presence of the phone, but does not have sufficient privileges to write to the USB device; whether or not this happens in a given flavor or Unix (e.g. OS X) depends on what user and group permissions are set on the device, and which "groups" regular users are in. Not having OS X in front of me, I can not predict; but the solution in this case is to run the command as the root user.
It is my impression that OS X has the "sudo" command for this purpose (read here); if that is the case, then you might want to run the commands
Code:
adb kill-server
sudo `which adb` devices
If sudo is not available to you, or not setup correctly, you might have to read this Apple Technical Note, or this one, or this one
C. (some other problem - no USB device is detected)
Code:
* daemon not running. starting it now *
* daemon started successfully *
List of devices attached
Your on your own for this one - consult your local Apple OS X expert!
(10) Now you are ready to communicate with the phone using "adb" commands.
Note that running the "adb" command for the first time after your OS X machine is booted up creates a long lived adb "server" process. (You might see it in a "ps" command listing as "adb fork-server"). That process is what actually communicates with the phone. Any subsequent "adb" command first communicates with that "adb server" on your OS X machine, and then the server communicates with the phone.
Sometimes it goes stale or gets cranky after unplugging the phone too many times. Simply re-start if you want by doing a "adb kill-server" (any user can do this), followed by any adb command, keeping in mind the results from step # (9) above.
OK, whew! The desired goal was to get a recovery image loaded on to the Eris after it had been rooted - it is time to do that, as adb is working now.
See the Instructions by GrdLock here, in the section entitled "II. Installing Amon's recovery image"
bftb0
***The setting of the PATH when you use the Terminal app using the directions given in step # (6) only last for the life of a single Terminal session. If you want to make this change in such a way that it will be already set up every time you open a new Terminal window, you need to do this by editing a file in your home folder - either ".bash_profile" or ".bashrc" . (Different files names are used depending on which "shell" is used). Setting this up is an exercise left up to the interested reader.
Click to expand...
Click to collapse
Wow what a straightforward guide to helping me get this set up!! A million thanks! I don't even have an Eris, but what model of the phone you have is irrevelant to this guide...
Thanks again!!
So 3 days of trying to install ubuntu on chroot and a little knowledge of linux and terminal, i was rather surprised to log into it and there i was, faced with an LXDE interface.
I want to thank coralic, burningbroccoli, lifehacker, josh_axeY and backfireNL for supplying the information i needed to make this possible.
So a brief overview of whats going to be done. First we will need to root our galaxy s in order to access terminal. An ubuntu image will be created and used in chroot environment by mounting (loading) it. Finally a vnc server will be setup and will be logged in using androidVNC.
So for the guide i suppose!
Guide:
First your going to need to root your phone. This is to access terminal and enter the commands required. This is taken from backfireNl's easy way to root your phone.
1. Download: 2.1 Update .zip
2. Put update.zip to root of /sdcard (not /sdcard/sd) (not on the physical SD card but the Internal SD card/Phone Memory)
3. Turn off phone
4. Hold down volume up + home button + power (tip: release the power button for half a second when you see the samsung logo)
5. Phone will reboot into recovery mode
6. Wait until you see the Recovery Screen and then release the buttons
7. With the volume down key go to the option: "apply: /sdcard/update.zip"
8. Press the home button
9. Phone will start updating
10. Phone reboots... and there you go! your phone is rooted!
So that wasnt too hard was it? Although once you have done this, you will need to download a couple of programs from the market. Goto market and download the following programs:
-Busybox
-Terminal Emulator
-androidVNC
Ensure all of these are installed as this is what you shall need in order to successfully run LXDE on your phone.
Next is the image for the install! i will post up an image file for download although for the sake of people wanting the whole info on how-to here it is.
1) login on your ubuntu machine and fire up terminal.
2) login as the super user by entering "sudo su"
3) you will be required to enter your su password, enter this and you will be logged in as root
4) In terminal enter "apt-get install rootstock"
5) One this package is all installed, enter the following code into the computer terminal:
sudo rootstock -f localhost --login ubuntu --password ubuntu --imagesize 1G --notarball --dist lucid --seed ssh,tightvncserver,lxde,expect
6)The image will be stored in the home folder. The image will need to be a .img file or it wont work. So extract the file if necessesary and rename the file so it reads "ubuntu.img"
7)Now you will need to put the ubuntu.img on the phone. The directory which it needs to be installed into is "/sdcard/ubuntu/"
8) All done for this step!
Ok so you have everything setup and ready to do the fun part! so lets get everything mounted and configured!
1)Open up terminal emulator on your phone
2)enter "su". this logs you in as superuser
3)I found you will need to make the following directories in order to work, so in terminal emulator enter:
mkdir /data/local/mnt
mkdir /data/local/mnt/proc
mkdir /data/local/mnt/dev
mkdir /data/local/mnt/dev/pts
4)enter "cd sdcard" then "cd ubuntu"
5)You will then be in the folder with the image. Type into terminal:
export HOME=/root
export USER=root
export PATH=$bin:/usr/bin:/usr/sbin:/bin:$PATH
busybox mount -t ext3 ubuntu.img /data/local/mnt
busybox mount -t proc proc /data/local/mnt/proc
busybox mount -t devpts devpts /data/local/mnt/dev/pts
busybox chroot /data/local/mnt /bin/bash
/etc/init.d/ssh start
6) Although it doesnt seem it, your now into your distro!
Okay so your into your distro but it looks all horrid and "text based". wouldnt it be lovely to see a proper desktop? so lets go!
1) enter into terminal "apt-get install x11vnc" this installs x11vnc to your phone. This may take a while depending on how your connected to the net
2) once x11vnc is installed, type "x11vnc -storepasswd" and enter a password. It will ask to verify the password so enter it again, then enter "y" to setup a password for it
3) first enter "vncserver" to initiate the server on your distro. For some reason without this, androidVNC will start to connect then crash
4)finally enter "x11vnc -usepw -find"
now your x11vnc is setup using a password hooray! last step in this guide and you will be away in no time! So is everyone ready?
1)hit the button on the bottom to return to the desktop but keep terminal emulator running
2)goto androidVNC and enter the following:
Nickname: root
Password: (whatever password you setup in x11vnc)
address: localhost
Port: 5900
color format can be anything, i set it to 4 bpp and use local mouse pointer
3)Simply click "connect" and viola! welcome to your impressive lxde environment!
This has been done before although i tried to do every step, base it around the phone as much as possible so no connecting to the computer.
any questions or problems i will try my best to help you guys, and thanks for the guys who helped me on this voyage.
i will write a bash script soon to try and incorporate as much of the manual typing in as possible
good luck!
Things which need to be done:
Upload image: Completed! - http://www.megaupload.com/?d=H55O5UEM
Bash script for terminal emulator: Completed, needs to be uploaded
Bash script for setup process of terminal emulator: Not completed
Startup script for image: Not completed
Youtube video: Not completed
Include internet browser and x11vnc in image file: Not completed
If anyone has any recommendations on how to make the process easier please let me know and i will try my best
Good to see the info consolidated into one post!
Cheers for the shoutout.
no probs your information helped me soo much, i just thought it would be good for someone to goto a post and go "oh yeah thats how to do it" instead of going to loadsa websites
i will try it very soon, thank you.
awesome!
When will you post your img file? I'll have a try.
I have no ubuntu installed, I'm using ArchLinux.
okay ive written a bash script to automate most of the process although there are a few things i could tweak before im fully happy
i have also posted a youtube video to demonstrate how easy it is! the first post will be updated with the link.
people ask me the reason for doing this and i have 2 replies:
1)to show the true potential of this phone (and working in a phone shop it really works)
2)for development purposes. Things like this are the next step in unlocking the true potential of the phone
lijgame: Im just uploading it now for you
Good work, will give it a try. And what about any browser ? Like firefox ?
hi.
okay so this is installing ubuntu into a chrooted environment and vnc'ing to it.
does anyone know if it is possible to blow away android and install pure debian on it? does anyone know of a hardware list on the sbc in this thing and what sort of support one might need to hack in to get a such a thing to work?
I will apologise now for the delay in image upload, the image file is 1gb and im having trouble finding a place to upload it.
In terms of installing a clean debian would need more than just a straightforward port. You would be looking at making an environment which supports the arm architecture, porting all of the drivers over, creating an option to support telephony, messages and gps too. If you wanted a debian environment it would probably be best to either run it like how the n900 does or getting a distro of it which is specifically made towards mobiles and modifying it.
Although you have an extremely good point there! Tell you what, once ive got everything running on here i will have a look and see what i can do in terms of atleast getting a debian shell running or a limo version
.kiz said:
I will apologise now for the delay in image upload, the image file is 1gb and im having trouble finding a place to upload it.
Click to expand...
Click to collapse
Just create zip/tar-ball of img file and it will become around 300MB. Then you can upload it on multiupload (or megaupload/rapidshare/mediafire).
I just created that image too and will be testing on my Galaxy S soon, so if its working for me then I will upload my image too.
Thanks for your good work
haha i shouldve really thought about compressing the file really
this will be a pre-image im just working on getting a better image with optimization, x11vnc and firefox
okay guys the first post is edited with the image for the install.
http://www.megaupload.com/?d=H55O5UEM
I am currently in the process of playing about with images to include everything you need, so soon enough i will have an image with everything you need to get started
Tnx for the credit!
Ubuntu image is uploaded and ready to go, im currently working on a better image so when ive finished that, it shall be released.
Also i have recently installed an internet browser and it is functioning properly. I will post screenshots soon
.kiz said:
okay guys the first post is edited with the image for the install.
http://www.megaupload.com/?d=H55O5UEM
I am currently in the process of playing about with images to include everything you need, so soon enough i will have an image with everything you need to get started
Click to expand...
Click to collapse
The image is only 11MB and is corrupted
Moreover, I tried to mount my ubuntu.img to /data/local/mnt but it is giving error (sort of -> loop back device can't be mounted: No such file or directory) although I created and checked /data/local/mnt directory which exists
Try creating a second loop device with: mknod /dev/loop2 b 7 0
fslateef said:
The image is only 11MB and is corrupted
Moreover, I tried to mount my ubuntu.img to /data/local/mnt but it is giving error (sort of -> loop back device can't be mounted: No such file or directory) although I created and checked /data/local/mnt directory which exists
Click to expand...
Click to collapse
im guessing because the image is corrupt, your unable to mount it.
I have just uploaded my bash script making it easier to mount each time.
bash script: http://www.megaupload.com/?d=CEU6R5J4
Image file: http://www.megaupload.com/?d=H55O5UEM
ensure you have made the directories explained in my first post.
pop the hsetup.sh file inside /sdcard/ubuntu (along with your image)
then fire up terminal emulator and type:
su
cd sdcard
cd ubuntu
sh hsetup.sh
This mounts everything for you and logs you into LXDE, all you need to do after is type in:
/etc/init.d/ssh start
vncserver
x11vnc -find
Then log in using androidVNC
i will attempt to upload the file to another location and i will test the image file to ensure its not a compression error
i apologise, ive just looked at the zip file and it is corrupt.
just compressing a new one and i will upload it
.kiz said:
im guessing because the image is corrupt, your unable to mount it.
Click to expand...
Click to collapse
Nops, I am using my own created ubuntu.img file according to your command which is 1GB in size .....
fslateef said:
Nops, I am using my own created ubuntu.img file according to your command which is 1GB in size .....
Click to expand...
Click to collapse
I found the problem. As mentioned by ArminC, I found that there isn't any loop device node in my mobile hence I created one and its mounted
Great ... Now going ahead .....
Hopefully his isn't totally redundant or horribly written, MODS feel free to do what you will with it. This is just me trying to give back to the community that's giving so much to us.
This is for the ubuntu/linux user that has never setup or succesfully set up the android sdk and adb but does know what terminal is and is fairly computer literate.
AKA: I couldn't Find the guide I'd been looking for so I decided to write it myself.
Credit goes to s3gfault for getting me thru this process and having the knowledge, this guide is based off the steps that he guided me thru and I recorded over a chat log. This guide is written for someone who has no idea where to start or what to do or has tried and failed to get adw/sdk fully functional on their linux/ubuntu box.
Step 1) Create a folder named "ANDROID" in your home folder
Step 2) Download the Android SDK for Linux(i383) from here: Android dev site and place it in the newly created ANDROID folder
Step 3) Right click on "android-sdk_r10-linux_x86.tgz" (the file you just downloaded and moved to the ANDROID folder) and select "Extract here"
Step 4) Open the Ubuntu Software Center. Select Edit-->Software Sources (at this point it will ask for your sudo/root password)-->Other Software. Checkmark "Canonical Partners" then Close
Step 5) Right next to the "Get Software" in the left hand list column in the Software center you will see a arrow/indicator. Ckick on that to expand the list and then select "Canonical Partners" Look thru the list on the right and find "Sun Java(TM) Development Kit(JDK) 6" and click "more info." In the "Add-Ons" section* checkmark the (sun-java6-javadb) package and (sun-java6-source) options. Click "Apply Changes," and accept the License Agreement. Exit the Software Center after install.
*honestly the extra add-on packages may not be needed (I honestly don't know) but unless you're hurting for bandwidth I can't see them hurting.
Step 6) Start a terminal session and input
Code:
sudo vi /etc/udev/rules.d/70-android.rules
Terminal will then ask for your password, then will output something that should look like this:
Code:
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
"/etc/udev/rules.d/70-android.rules" [New File]
once it does, close the terminal window.
Step 7) Start a new terminal window and input
Code:
gksudo gedit /etc/udev/rules.d/70-android.rules
This will open the geditor. Once it does paste
Code:
SUBSYSTEM=="usb", SYSFS{idVendor}=="0bb4", MODE="0666"
INTO the GEDIT file, Save and Exit. Exit terminal.
Step 8) Navigate back to your "ANDROID" folder. open the file folder that you exctracted, multi-select the contents of the entire folder (folders add-ons, platforms, tools and a readme.txt) and cut/paste them directly into the ANDROID folder where the .tgz file is. Delete the now empty shell folder. Navigate to ANDROID/Tools/ find the file named "android" and double click on it. A pop-up box will appaer asking you what you want to do. Click "Run". At this point the Android SDK and AVD Manager will open. in the left navigation pane select available packages. IMPORTANT: If you're in a hurry or low on bandwidth you can expand Android repository--> and just select "Android SDK Platform-tools, revision 3" as that is where ADW is located, otherwise you may want to go ahead and install everything. Your choice.
Click "Install Selected"-->"Install" after download pop-up about ADW, select "Yes" watch the dialogue for a succesful kill/restart of ADW and then hit "Close" and exit the SDK Manager
Step 9) Open a terminal session and type
Code:
cd /home/*****/ANDROID/platform-tools
where ***** is your ubuntu username, in the case of my laptop, loganmobile.
Protip: navigate to the adb file and right click-->Properties copy/paste path after cd command in terminal.
Step 10) On your Android phone: Menu-->Settings-->Applications-->Development: USB Debugging. Make sure it is checked on. Connect your phone via usb to your computer, DO NOT mount as sdcard.
Step 11) Back in terminal type in
Code:
./adb devices
it should now list your phone! huzzah!
Step 12) And you thought you were done? A few more things to wrap everything up all nice and tidy.
Open a new terminal instance and type
Code:
gedit ~/.bashrc
and add this line to the bottom of the file:
Code:
export PATH=$PATH:/home/*****/ANDROID/platform-tools
where once again ***** is your Ubuntu username. Save and exit the file.
Reboot your machine and verify that ADB still works afterwards via the same
Code:
cd /home/*****/ANDROID/platform-tools
./abd devices
winning
***DISCLAIMER***
I am by no means an expert and s3gfault is not at fault if you blow something up, he coached me thru this and it worked for me on both my desktop and laptop running Ubuntu 10.10. I provided this write up in hopes that it helps someone who was/is in the same boat I was in; somewhat lost and very frustrated as to why their adb didn't work right. Please add critiques and suggestions, or just flame me.
Thanks go out to andrew8806 for helping root my thunderbolt the first go around, jcase for helping me reroot it after it somehow messed up (and being an awesome dev) and s3gfault for handholding me thru the process of getting adb permanently working.
Good write up
Sent from my Thunderbolt using XDA Premium App
Guess this isn't as useful/helpful as I thought it would be.
qwirked said:
Guess this isn't as useful/helpful as I thought it would be.
Click to expand...
Click to collapse
It is if your new to linux, it's really a good write up
Sent from my Thunderbolt using XDA Premium App
Another, bit more compehensive guide, good one:
Lazyman's installation guide to ADB on Ubuntu 10.10
Cheers!
I found it helpful
qwirked said:
Guess this isn't as useful/helpful as I thought it would be.
Click to expand...
Click to collapse
I liked it and found it quite helpful. I've known how to use adb in windows, but not Ubuntu (which I use 90% of the time) until now. This write up got me going and I would like to say thanks...
Now I don't have to boot into windows for adb anymore
Thanks mate i know this is a very old post but believe me you have helped me much thank you...
or you can follow my signature.