I'm coming from a long time being on Windows 7 and regular shell. I'm trying to transition to powershell but cannot find a way to get root permission to android /system via ADB script. This worked formally:
adb shell su -c "mount -o rw,remount /system"
This no longer works. When trying to set chmod or copy systemui.apk to system I get "Read Only file system".
Any help with this would be extremely helpful and I would be grateful. I've googled and googled and nothing seems to work.
Tulsadiver said:
I'm coming from a long time being on Windows 7..........
Click to expand...
Click to collapse
I'm not a huge Guru regarding the ADB besides a general/basic working knowledge.
The ADB command you provided is for the Command Prompt and won't work in Powershell since Powershell uses cmdlets instead but, ADB is possible using Powershell.
The following link is very good at providing you with the differences between the Command Prompt and Powershell.
https://www.howtogeek.com/163127/how-powershell-differs-from-the-windows-command-prompt/
The following is helpful regarding the use of ADB in Powershell.
https://superuser.com/questions/1251078/adb-command-for-powershell-windows
I hope that this was helpful for you and that I had explained it okay via text.
Good Luck!
~~~~~~~~~~~~~~~
UNLESS asked to do so, PLEASE don't PM me regarding support. Sent using The ClaRetoX Forum App on my Enigma Machine {aenigma = Latin for "Riddle"}.
Ibuprophen said:
I'm not a huge Guru regarding the ADB besides a general/basic working knowledge.
The ADB command you provided is for the Command Prompt and won't work in Powershell since Powershell uses cmdlets instead but, ADB is possible using Powershell.
The following link is very good at providing you with the differences between the Command Prompt and Powershell.
https://www.howtogeek.com/163127/how-powershell-differs-from-the-windows-command-prompt/
The following is helpful regarding the use of ADB in Powershell.
https://superuser.com/questions/1251078/adb-command-for-powershell-windows
I hope that this was helpful for you and that I had explained it okay via text.
Good Luck!
~~~~~~~~~~~~~~~
UNLESS asked to do so, PLEASE don't PM me regarding support. Sent using The ClaRetoX Forum App on my Enigma Machine {aenigma = Latin for "Riddle"}.
Click to expand...
Click to collapse
That was very helpful. Unfortunately, nobody seems to address the specific mount problem I'm having.
Tulsadiver said:
That was very helpful. Unfortunately, nobody seems to address the specific mount problem I'm having.
Click to expand...
Click to collapse
I had performed a Google search using the following 3 words together (With and then Without Quotes)...
"Powershell" "ADB" "Mount"
I had located the following thread that may be a bit dated but, should still be valid since Powershell commands hasn't really changed much (if at all) besides the addition to them and such.
https://forum.xda-developers.com/showthread.php?t=2384206
You should also find that the following links will help you with either an answer to or clarification of what your in search for.
https://www.jesusninoc.com/04/05/adb-shell-commands/
https://stackoverflow.com/questions/44094188/access-mtp-storage-with-system-io-from-powershell
https://stackoverflow.com/questions/39948451/batch-script-for-adb-commands
I hope this was helpful in some way and I wish you the best of luck!
~~~~~~~~~~~~~~~
UNLESS asked to do so, PLEASE don't PM me regarding support. Sent using The ClaRetoX Forum App on my Enigma Machine {aenigma = Latin for "Riddle"}.
Related
I'm running Ubuntu (latest) and can't get it to recognize my phone. Well, actually it sees it but I keep keep getting "??????????? no permissions". BTW. I've successfully done this on a Windows machine before. Does anyone know of a resource for fixing my issue?
Sent from my ADR6400L using XDA Premium App
farkmeil said:
I'm running Ubuntu (latest) and can't get it to recognize my phone. Well, actually it sees it but I keep keep getting "??????????? no permissions". BTW. I've successfully done this on a Windows machine before. Does anyone know of a resource for fixing my issue?
Sent from my ADR6400L using XDA Premium App
Click to expand...
Click to collapse
You need to be more descriptive in the steps you were taking to get that error. However, it's probably a permissions error due to not putting sudo in front of whatever command you were executing.
yareally said:
You need to be more descriptive in the steps you were taking to get that error. However, it's probably a permissions error due to not putting sudo in front of whatever command you were executing.
Click to expand...
Click to collapse
Sorry. It's when I type devices, or any other command really, in the ADB shell. I'll try sudo and see if that works.
Sent from my ADR6400L using XDA Premium App
More then likely it's because you haven't set your udev rules yet. Once you have the udev rules set it won't matter if your root or not for running ADB. 99% of the guides out there take you step by step on properly installing the Android SDK including setting the UDEV rules under the Ubuntu OS.
R.F.
rfw2003 said:
More then likely it's because you haven't set your udev rules yet. Once you have the udev rules set it won't matter if your root or not for running ADB. 99% of the guides out there take you step by step on properly installing the Android SDK including setting the UDEV rules under the Ubuntu OS.
R.F.
Click to expand...
Click to collapse
Great. Thanks for your help.
Sent from my ADR6400L using XDA Premium App
yareally said:
You need to be more descriptive in the steps you were taking to get that error. However, it's probably a permissions error due to not putting sudo in front of whatever command you were executing.
Click to expand...
Click to collapse
This is it, but remember that sudo doesn't look at your normal path, so you'll need to restart adb with adb kill server, then sudo [path to android sdk]/platform_tools/adb devices.
I've set up an alias in my .bashrc that lets me start adb with su privileges, then I'm off to the races. It sure makes things easy!
Good luck!
Zennmaster said:
This is it, but remember that sudo doesn't look at your normal path, so you'll need to restart adb with adb kill server, then sudo [path to android sdk]/platform_tools/adb devices.
I've set up an alias in my .bashrc that lets me start adb with su privileges, then I'm off to the races. It sure makes things easy!
Good luck!
Click to expand...
Click to collapse
Thanks everyone, I'm new to Linux and rooting. So your help is invaluable.
Sent from my ADR6400L using XDA Premium App
*****To all newebies(as quite a few new people are at this forum because they got their first device! (TFP)) any anyone who wants to learn, let’s get educated about our devices!*****
ADB (Android Debug Bridge) is an extremely useful tool that WILL help you in all of your customizing needs! You may see the need to use ADB commands to help root your device, change ROMS, or send your device a fix. Without the knowledge here, you could easily be left in the dark.
ADB is a necessity for developers and general consumers alike. Knowing this tool is a great advantage to you to help your device at the best quality possible.
Installation
Download Google SDK
Choose the correct operating system and install!
The installation REQUIRES Java JDK which can be downloaded from Here
If during installation it asks for JDK (and you have installed it) Press the back button and next again, sometimes that will fix the error.
**Note** The SDK installs to C:\Program Files (x86)\Android\android-sdk standard, chose any directory for you
Start the SDK and immediately, you will notice a few checkboxes. For the standard user, just make sure Android SDK Platform-tools (under Tools) and Google USB Driver package (under Extras) – the drivers are always good to have, latest ADB drviers.
Click install 2 packages and wait. Once installed go to your installation directory and find the platform-tools folder. This directory is your ADB and will be your lifeline!
**Do you want ADB accessible through any command prompt directory?**
You are in luck. (For Windows 7)
Right click on My Computer > Properties > Advanced System Settings >Advanced (Tab) > Environment Variables > Under System Variables scroll and dbl click on Path
TO THE END of the Variable value line add
Code:
;C:\Program Files (x86)\Android\android-sdk\platform-tools
Or whatever the directory you installed to + platform-tools
Open CMD and type ADB, if you did it right, you will see proper ADB jargon regardless if you are in the correct directory or not!
Congratulations! ADB is installed!
**Make sure your device is using the latest drivers (that you just downloaded) or other ADB drivers provided by ASUS to access ADB. When connected in Debugging mode, device manager will have: ASUS Android Composite ADB Interface**
ADB Usage
**I will be talking mainly about commands/arguments that the general end-user may use or come across**
**Make sure your tablet is in USB Debugging Mode to be able to connect to ADB (Settings > Applications)**
ADB Devices : This command shows all connected android devices that will respond to an ADB command. It is useful for making sure your device is connected.
ADB Connect [IPORT] : This command will connect to your device over personal WIFI connection if your device is setup for ADB over WIFI (Requires root and NOT recommended)
ADB Push [local_file] [remote_file] : This command will push any local file to the device (only if the device is Read/Writable. Stock /system/ folders are only Readable.
ADB Pull [Remote_file or Directory] [Save file or Directory] : This command take files or an entire directory and save it to your desired location. This command only works when directory is read/Writable.
ADB Shell [command] : This command will perform most UNIX commands on the device. Without a command, you can enter several shell commands before you ‘exit’. Most will not work unless SU is applied (# instead of $). Must be rooted for SU. Only play with these commands if they are known by you or exactly copied from instructions.
ADB Logcat [ > file.txt ] : This command will display (or save per > file.txt) a log of what’s happening on the device. If you are receiving errors, turn on logcat, reproduce error, turn off, and send logcat to the developer.
ADB Install [-r][-s] [local_apk] : This command force installs (or reinstalls –r or –s installs on SD-Card) any APK provided.
ADB Uninstall [-k] [APK_Name] : This command uninstalls any APK Name provided (app.apk) and will even keep cache and other data with the –k tag.
ADB start-server : This command will start the server if the server is off or killed. (Normally server will auto-start when ADB command is used)
ADB kill-server : This command will close ADB server. Useful if ADB server is acting up or not connecting to any devices.
ADB remount : This command will mounts the /system/ partition Read/Writable pending the device is allow to. Stock TFP will NOT.
ADB root : This command will restart ADB with root permissions if the build allows for it. Stock TFP will NOT.
ADB usb : This command will restart ADB on device to use USB connection for ADB communication.
ADB tcpip [port] : This command will restart ADB on device to use TCPIP connection for ADB. Standard port is 5555. Again, this connect not recommended for file transfers.
ADB reboot [recovery/bootloader] : This command will restart your device. If either of the two options are given, the device will boot into that mode (sadly TFP does not support the two options.. yet)
ADB Tips/Tricks
When following ADB instructions, follow them WORD-BY-WORD in the EXACT ORDER GIVEN. If copy and pasting their commands (one line at a time) makes it easier, then do so.
If you have root access, do not mess around in ADB shell unless you know what you are doing
Connecting over IP can be beneficial for you for quick ADB access, but for file transfers, speed is slow and you ALWAYS risk corruption (check the md5!) One bad file and you have boot-loops!
ADB Logcat is an amazing command. If anything is wrong with your device, 9/10 you can see it in logcat. If you can find the exact problem, fixes can happen much easier. USE LOGCAT TO YOUR ADVANTAGE!
ADB reboot can be a quick reboot, sometimes you don’t feel like waiting!
Use the environmental variables! It helps exponentially, and keeps from having multiple instances of ADB running.
When multiple instances of ADB are running (different directories) ADB can get messed up! (ADB not up-to-date restarts, and connect problems). ASUS Sync service has and ADB setup. Turn it off if you are not using it. Try to stick to only ONE instance of ADB
Eventually, we may have root access in our recovery kernel. Then and only then can our devices be truly customizable!
The GUIDE is not finite. Please post anything you feel should be added/corrected to the guide. Please take notice from this, as the understanding of these simple commands could help save your device(s)!
Thanks and 5 star would make me feel good inside too!
Wow... Nice post. Lots of time went into this lol. Thanks can't give the five stars in the app though:-(
Sent from my Transformer Prime TF201 using xda premium
The link in step #1 is whack - I think you want tis? http://developer.android.com/sdk/index.html
Lock-N-Load said:
The link in step #1 is whack - I think you want tis? http://developer.android.com/sdk/index.html
Click to expand...
Click to collapse
hmm thats what was in there, i re-saved and it works now ... maybe xda error
thanks tho!
biggem001 said:
hmm thats what was in there, i re-saved and it works now ... maybe xda error
thanks tho!
Click to expand...
Click to collapse
before you fixed it, it was trying to use this http://http://developer.android.com/sdk/index.html"
note the extra parens at the end and the double http call
i noticed that too, all i did was re-save and it worked. how weird.
Thanks! I've seen a few tutorials on this but this one was by far the easiest to follow and best organized. Short and sweet. Worked on my desktop great, I've never managed to install it right D:
Re posting to give 5 stars. Thanks again OP
Quick question: Is it normal for PTP mode to be required for adb to work? Because as soon as I switch to MTP I can no longer use adb.
cmat1120 said:
Quick question: Is it normal for PTP mode to be required for adb to work? Because as soon as I switch to MTP I can no longer use adb.
Click to expand...
Click to collapse
i can do either at once.. thats weird
GPS, Wifi and BT Testing
Could someone write some basic tutorials on how to verify/test GPS, wifi and BT funtions? For those of us who are new to Android it would helpful in verifying which problems are truly present. Also perhaps show how to find the serial number - for example: some don't know you have to click status - because there are a some erroneous posts out there. There may be users who assume something works or doesn't work, based on limited knowledge and these inaccurate findings only serve to muddy up the works.
There's a lot of animosity about the influx of newbies (and trust me, as a newbie it doesn't feel good). I think the first step is to educate. If some of these troubleshooting steps are laid out, more people can contribute in an intelligent way.
I thought this would be a good thread for the Guides thread, but it is closed and I cannot send PMs.
Thanks - Great Info
One thing you can add for all us amateurs is how to use ADB to install off market apps, stuff like that. Things the non-power user can benefit from. Some simple command line structure would be great.
theandies said:
One thing you can add for all us amateurs is how to use ADB to install off market apps, stuff like that. Things the non-power user can benefit from. Some simple command line structure would be great.
Click to expand...
Click to collapse
i wont add it to the guide, because adb install is pretty self explanatory but this
make sure you can install non-market apps
Code:
adb install app.apk
jonalisa said:
Could someone write some basic tutorials on how to verify/test GPS, wifi and BT funtions? For those of us who are new to Android it would helpful in verifying which problems are truly present. Also perhaps show how to find the serial number - for example: some don't know you have to click status - because there are a some erroneous posts out there. There may be users who assume something works or doesn't work, based on limited knowledge and these inaccurate findings only serve to muddy up the works.
There's a lot of animosity about the influx of newbies (and trust me, as a newbie it doesn't feel good). I think the first step is to educate. If some of these troubleshooting steps are laid out, more people can contribute in an intelligent way.
I thought this would be a good thread for the Guides thread, but it is closed and I cannot send PMs.
Click to expand...
Click to collapse
for GPS, use GPS Test app on the market
for BT and wifi testing, i'll just connect my device via BT or adhoc wifi and do the testing on my PC itself, more accurate and better programs
Excellent howto, thanks
I have trouble connecting to my prime with adb. In the Win7 Device Manager the correct device shows up, no exclamation mark at all, but adb just won't see the Prime.
USB debugging mode is on, no Asus Sync software on the PC. I have no clue why ADB won't see my device.
Now many of us can really shoot ourself in the foot.
by far the best and quickest adb install/setup ever. thanks OP!
neo1738 said:
by far the best and quickest adb install/setup ever. thanks OP!
Click to expand...
Click to collapse
aw shucks!
THANKS!
biggem001 said:
ADB Devices : This command shows all connected android devices that will respond to an ADB command. It is useful for making sure your device is connected.
ADB Connect [IPORT] : This command will connect to your device over personal WIFI connection if your device is setup for ADB over WIFI (Requires root and NOT recommended)
ADB Push [local_file] [remote_file] : This command will push any local file to the device (only if the device is Read/Writable. Stock /system/ folders are only Readable.
ADB Pull [Remote_file or Directory] [Save file or Directory] : This command take files or an entire directory and save it to your desired location. This command only works when directory is read/Writable.
ADB Shell [command] : This command will perform most UNIX commands on the device. Without a command, you can enter several shell commands before you ‘exit’. Most will not work unless SU is applied (# instead of $). Must be rooted for SU. Only play with these commands if they are known by you or exactly copied from instructions.
ADB Logcat [ > file.txt ] : This command will display (or save per > file.txt) a log of what’s happening on the device. If you are receiving errors, turn on logcat, reproduce error, turn off, and send logcat to the developer.
ADB Install [-r][-s] [local_apk] : This command force installs (or reinstalls –r or –s installs on SD-Card) any APK provided.
ADB Uninstall [-k] [APK_Name] : This command uninstalls any APK Name provided (app.apk) and will even keep cache and other data with the –k tag.
Click to expand...
Click to collapse
Just a small suggestion, adb won't accept commands if they are capitalized.
For example "ADB devices" will work perfectly, but "ADB Devices" won't.
So, in order to help the newest of newbies, you might want to put the commands in lowercase in the first post.
Hi All,
This query is about running 'multiple adb commands' on 'single adb shell' opened using CreateProcess.
Currently we are able to run single command on adb shell which is created using CreateProcess API. This works fine.
But our requirement is, opening up of single adb shell and executes set of adb commands on that same shell. (ie., reusing of already opened adb shell for executing further adb commands on it)
Kindly let me know if anyone has an idea on this.
Thanks and Regards,
Sridevi.
joemittu said:
Hi All,
This query is about running 'multiple adb commands' on 'single adb shell' opened using CreateProcess.
Currently we are able to run single command on adb shell which is created using CreateProcess API. This works fine.
But our requirement is, opening up of single adb shell and executes set of adb commands on that same shell. (ie., reusing of already opened adb shell for executing further adb commands on it)
Kindly let me know if anyone has an idea on this.
Thanks and Regards,
Sridevi.
Click to expand...
Click to collapse
Hi, Please let me know If you have figured out anyway. I am also looking for the same. Thanks in advance.
-Balachandar KM
Hey all I hope I'm not in the wrong section and I tried searching for an already similar if not identical thread but couldn't find one(probably not looking too hard) but I have a rooted LG G2 and I have ADB up and running but I don't know the commands I'm assuming. I type "ADB shell" and it connects and finds device but the only command that works for me is "reboot system". I've tried "boot recovery" and a few iterations but no luck.. Do I just not know the correct commands to tell it?
Sent from my LG-D801
DurbanPoison24 said:
Hey all I hope I'm not in the wrong section and I tried searching for an already similar if not identical thread but couldn't find one(probably not looking too hard) but I have a rooted LG G2 and I have ADB up and running but I don't know the commands I'm assuming. I type "ADB shell" and it connects and finds device but the only command that works for me is "reboot system". I've tried "boot recovery" and a few iterations but no luck.. Do I just not know the correct commands to tell it?
Sent from my LG-D801
Click to expand...
Click to collapse
It would help if you told us what it is you're trying to do. If you just want a full list of every command then there's threads and websites that have it all. If you're trying to do something specific then let us know and we'll try and give you the correct commands.
The most common you'll use are:
adb devices - To ensure phone is connected correctly.
adb shell - To access the phone shell (?).
adb push [filename] /path/to/destination - Send a file from PC to phone, usually the sdcard.
Mr_JMM said:
It would help if you told us what it is you're trying to do. If you just want a full list of every command then there's threads and websites that have it all. If you're trying to do something specific then let us know and we'll try and give you the correct commands.
The most common you'll use are:
adb devices - To ensure phone is connected correctly.
adb shell - To access the phone shell (?).
adb push [filename] /path/to/destination - Send a file from PC to phone, usually the sdcard.
Click to expand...
Click to collapse
If it makes any sense I really wasn't trying to do anything specific I just wanted to make sure everything was working right. And as for what wasn't working for me was telling the phone to go into recovery. That's honestly the only thing I was trying.
Sent from my LG-D801 using xda app-developers app
You don't need a shell for this
adb reboot recovery
Should do the trick, opening a shell gets you into the phones file system which is not needed to reboot to recovery
Just do a quick Google search and you will find many guides on this, especially here in xda
Sent from my Nexus 7 using XDA Premium 4 mobile app
Hi
First of all, sorry for my bad english.
It has been several hours that i'm trying to find a solution to my problem.
I want to wake my nvidia shield via adb command throught network.
I installed android tools on my raspberry pi, and when i connect to it via command line everything work, i can wake up the Shield.
But when i put my command line in a bash script
Code:
#!/bin/bash
adb kill-server
adb start-server
adb connect 192.168.1.38:5555
adb shell input keyevent KEYCODE_WAKEUP
adb kill-server
i have this error :
Code:
error: device unauthorized.
This adb server's $ADB_VENDOR_KEYS is not set
Try 'adb kill-server' if that seems wrong.
Otherwise check for a confirmation dialog on your device.
I dont know why, when i am execute the command line in a bash script it can't find the rsa key, who is there and should be used.
Any ideas
Thanks in advance.
darkouz said:
Hi
First of all, sorry for my bad english.
It has been several hours that i'm trying to find a solution to my problem.
I want to wake my nvidia shield via adb command throught network.
I installed android tools on my raspberry pi, and when i connect to it via command line everything work, i can wake up the Shield.
But when i put my command line in a bash script
Code:
#!/bin/bash
adb kill-server
adb start-server
adb connect 192.168.1.38:5555
adb shell input keyevent KEYCODE_WAKEUP
adb kill-server
i have this error :
Code:
error: device unauthorized.
This adb server's $ADB_VENDOR_KEYS is not set
Try 'adb kill-server' if that seems wrong.
Otherwise check for a confirmation dialog on your device.
I dont know why, when i am execute the command line in a bash script it can't find the rsa key, who is there and should be used.
Any ideas
Thanks in advance.
Click to expand...
Click to collapse
Normally on Windows the first time you turn on usb debugging it will pop up and ask you to accept the adb key. This is what is preventing you, I haven't had to resolve this in Linux, but essentially you need to go to C:\\Users\You\.android\ (in Windows, path will be different in Linux) and copy the file adbkey. Now you need to move it to data/misc/adb/
This will most likely require root or TWRP. Good luck, my friend.
Sent from my KYOCERA-C6745 using Tapatalk
Hi
Thanks for your quick response.
I couldn't make the connection via USB my adb tells me that there is no emulated device. But it work with network And yeah the first time I made the connection, the authorization pop up appeared on my shield. I checked, always authorized this device.
I have the key in /root/.android on my raspberry pi
I don't think I have the access to the /data/ folder in my shield.
But what I don't understand is why when I execute the command in a terminal like that, it work and when it's from the bash script it won't work anymore
darkouz said:
Hi
Thanks for your quick response.
I couldn't make the connection via USB my adb tells me that there is no emulated device. But it work with network And yeah the first time I made the connection, the authorization pop up appeared on my shield. I checked, always authorized this device.
I have the key in /root/.android on my raspberry pi
I don't think I have the access to the /data/ folder in my shield.
But what I don't understand is why when I execute the command in a terminal like that, it work and when it's from the bash script it won't work anymore
Click to expand...
Click to collapse
Option B would be to dump your boot.img and use Assayed's kitchen to add insecure kernel and adb direct root, then the adbkey doesn't need to be on the device.
Sent from my KYOCERA-C6745 using Tapatalk
RealWelder said:
Option B would be to dump your boot.img and use Assayed's kitchen to add insecure kernel and adb direct root, then the adbkey doesn't need to be on the device.
Sent from my KYOCERA-C6745 using Tapatalk
Click to expand...
Click to collapse
Yeah as you said in your previous post, i think the solution is to root the nvidia shield cause the rsa key doesny copy itself on the device.
But would you able to explain to me why if i execute those command individually in the terminal it works.
But if i put them all in a bash script that i execute it doesnt work anymore, what's the difference between those two procedure ?
darkouz said:
Yeah as you said in your previous post, i think the solution is to root the nvidia shield cause the rsa key doesny copy itself on the device.
But would you able to explain to me why if i execute those command individually in the terminal it works.
But if i put them all in a bash script that i execute it doesnt work anymore, what's the difference between those two procedure ?
Click to expand...
Click to collapse
How are you executing the script? There's some (hopefully) helpful info here.
https://community.spiceworks.com/topic/433656-command-not-running-in-batch-but-will-run-in-cmd
Sent from my KYOCERA-C6745 using Tapatalk
RealWelder said:
How are you executing the script? There's some (hopefully) helpful info here.
https://community.spiceworks.com/topic/433656-command-not-running-in-batch-but-will-run-in-cmd
Sent from my KYOCERA-C6745 using Tapatalk
Click to expand...
Click to collapse
i m doing : sh script.sh
i m gonna read that, thanks
I found the solution.
I don't really understand why, but adding
Code:
sleep 1
before
Code:
adb shell input keyevent KEYCODE_BACK
resolved the problem, maybe the script execution was to fast for adb to adjust, dont know.
All i know is, that works
darkouz said:
I found the solution.
I don't really understand why, but adding
Code:
sleep 1
before
Code:
adb shell input keyevent KEYCODE_BACK
resolved the problem, maybe the script execution was to fast for adb to adjust, dont know.
All i know is, that works
Click to expand...
Click to collapse
Glad you got it.
Sent from my KYOCERA-C6745 using Tapatalk
sudo rm -rf /home/(username)/.android
that worked with my kde neon machine