Related
Hello.
I'm trying to install adb on my tablet so that I might issue adb/fastboot commands to my Android phone.I downloaded this file which is a zip of the platform-tools directory. I put it on my internal memory' but I also tried it from /data/. The problem is that when I enter that directory and enter "adb" I get a permission denied error. OK, so I enter a root shell and try again, only to get a not found error. "./adb" also returns a permission error even from a root shell.
Anyone have any ideas?
You are trying to run an Intel binary on an ARM processor.
I downloaded a standalone version of ADB from this website (no SDK) and the Odin files (loki_flash and recovery.lok). I put the Odin files in my data/local/tmp folder using Root Explorer on my phone. Now I'm trying to use the ADB shell command to install them. However, when I try to run it, it says "error: device offline" even though it's plugged into the USB port. How do I get ADB to detect my phone?
Thank you.
silverfang77 said:
I downloaded a standalone version of ADB from this website (no SDK) and the Odin files (loki_flash and recovery.lok). I put the Odin files in my data/local/tmp folder using Root Explorer on my phone. Now I'm trying to use the ADB shell command to install them. However, when I try to run it, it says "error: device offline" even though it's plugged into the USB port. How do I get ADB to detect my phone?
Thank you.
Click to expand...
Click to collapse
Your have to authorize ADB from your phone, a message should pop up if it doesn't then first make sure you have the latest usb drivers, and that you have enabled usb debugging on the phone try and to use adb again and see if that works. If all else fails it never hurts to download the SDK, and make sure both java/jre and ADB are in your system path variable.
Hello everyone,
I have a Samsung Galaxy S II (I9100) with Cyanogenmod 11 (Snapshot M12) installed. Recently I dropped my phone and the screen was completely shattered. The display does not work, neither does the touch. However, the phone works fine as I can turn it on and connect it via USB to my computer and access the data on my internal memory. Although USB debugging is enabled on my phone, I am unable to do anything because the computer isn't authorised i.e. I cannot press "OK" on the authentication prompt that I would have otherwise normally seen on the screen (screenshot attached). Is there any way to bypass this prompt or a workaround for it? I basically need to get a Nandroid backup of my phone and then factory reset it.
P.S.: I tried to access my phone via a program called "Android Control" but apparently it is practically useless without the debugging privileges.
Thanks.
Solved!
This guide assumes that USB debugging was enabled on your device before you broke it. You can enable USB debugging via recovery using:
Code:
adb shell
echo "persist.service.adb.enable=1" >>/system/build.prop
echo "persist.service.debuggable=1" >>/system/build.prop
echo "persist.sys.usb.config=mass_storage,adb" >>/system/build.prop"
reboot
After digging through various threads I finally managed to bypass the secure USB prompt on my Galaxy SII with a shattered screen.
For this method to work you need another device running Android 4.4.2 or above with USB debugging enabled and the same computer authorised from that device i.e. connect that device to your computer and press "OK" on the authorisation prompt that appears on screen for secure USB debugging. Let us call this device the "authorised device".
"adb_keys" is the file we need from the authorised device which is located in /data/misc/adb/
Normally you must be rooted to take the adb_keys file from the device using "Root explorer" or "ES File Explorer" but I will assume that the authorised device is unrooted. You don't need to root it. However, if your authorised device is rooted then simply copy the adb_keys file on your computer and jump directly to Step 5.
Steps:
Connect the authorised device to your computer using USB (debugging enabled) and open a command prompt with administrator privileges.
To get the "adb_keys" file, use this command:
adb pull /data/misc/adb/adb_keys <destination path>/adb_keys
For example:
adb pull /data/misc/adb/adb_keys c:/adb_keys
The above command will save the adb_keys file to the root of your C: drive. You can change the destination folder to your liking. Now the job of the authorised device is done. You can disconnect it and disable USB debugging.
Once you get a copy of adb_keys, reboot the phone with the broken screen into recovery.
Now connect the broken phone to the computer using USB.
We need to copy the adb_keys file to the broken device. Use the command below:
adb push <file location> /data/misc/adb
For example:
adb push c:/adb_keys /data/misc/adb
After the file is copied, reboot your device using "adb reboot" and voila! You can now use adb shell.
Special thanks to torankusu for this post which helped me compile this guide.
Check out this thread by k.janku1 if you want to have full control over your device even with a broken screen (requires Java Runtime Environment and Visual C++ redistributable). This tool lets you use your device through your Windows PC even if your touchscreen doesn't work or you can't see anything.
P.S.: My broken device was a Samsung Galaxy SII running Cyanogenmod 11 (M12) and my authorised device was an unrooted Moto G running stock ROM.
Thanks man.
I'm (noob) trying to follow the guide which exactly fits my situation.
Status : Broken SGS7 screen with USB debugging enabled but cannot accept the computer
SGS4 backup phone where i extracted the adb_key
both are not rooted and running stock OS
Unfortunately i get stuck between step 6/7... When i reboot to recovery mode the windows does not recognize neither of the phones when conneted to USB. Therefore i cannot run the ADB command and copy the key on my broken phone (SGS7).
i can choose the "aply update From ADB" and then the computer recognizes the phone and i can find it in ADB devices "sideload" but here i cannot use the command "adb push....."
Ii've tried updating drivers googled alot, but without luck...
what am i missing?
input very appreciated
I too am a noob who was trying to follow this guide, which also exactly fit my situation. My status was a broken Sony Xperia screen with USB debugging enabled, but I was unable to click on the "accept" button whenever I hooked my phone up to my PC. I extracted a working adb_key from my new Asus ZooXS phone; neither phone is rooted, and both are running stock Android OS.
Unfortunately, I got stuck right between Steps 7 & 8; Windows did not allow me to use the ADB Push command to copy the key onto my broken Sony Xperia. I could Pull the key from my Asus using ADB just fine, but not the other way around.
I did eventually find an alternative solution: I used an OTG device & hooked up a mouse to my Sony Xperia so that I could get past the broken screen issues & navigate to Settings > Bluetooth. I then borrowed a Bluetooth Mouse & "discovered" it with my broken Sony Xperia. I could then unplug the OTG device & re-connect my phone to my PC via USB, & then click on the screen using the Bluetooth Mouse to "accept" my computer as always being authorized to perform USB debugging. Afterwards, I was able to use Helium backup to pull off most of my important data from my phone.
Hope this helps others who are running into the same problem....
i don't get it - authorizing adb via adb
The steps maq_ posted helped me rescue my data from my broken OP3. Combined with the information from here: https://stackoverflow.com/questions...b-rsa-key-with-broken-touch-screen-on-android which indicates the files between the computer (running adb) and the key file you copy to /data/misc/adb should "match" with each other. Indeed, you might need to have been bootloader unlocked (with a custom recovery) to use adb push to copy the adb_keys file to your broken phone. For me, since my broken phone was rooted I used a terminal emulator with the 'su' command (after successfully getting the file onto my broken phone) to copy the file over to /data/misc/adb.
Some tips that might help newbs before following maq_'s steps: First, re-install another copy of adb (remember the path you installed to on your PC). Second, erase contents of c:\Users\$name\.android\ (which contains existing keys generated by adb). Third, run adb kill-server to make sure other instances of adb don't confuse things.
maq_ said:
This guide assumes that USB debugging was enabled on your device before you broke it. You can enable USB debugging via recovery using:
After digging through various threads I finally managed to bypass the secure USB prompt on my Galaxy SII with a shattered screen.
For this method to work you need another device running Android 4.4.2 or above with USB debugging enabled and the same computer authorised from that device i.e. connect that device to your computer and press "OK" on the authorisation prompt that appears on screen for secure USB debugging. Let us call this device the "authorised device".
"adb_keys" is the file we need from the authorised device which is located in /data/misc/adb/
Normally you must be rooted to take the adb_keys file from the device using "Root explorer" or "ES File Explorer" but I will assume that the authorised device is unrooted. You don't need to root it. However, if your authorised device is rooted then simply copy the adb_keys file on your computer and jump directly to Step 5.
Steps:
Connect the authorised device to your computer using USB (debugging enabled) and open a command prompt with administrator privileges.
To get the "adb_keys" file, use this command:
adb pull /data/misc/adb/adb_keys <destination path>/adb_keys
For example:
adb pull /data/misc/adb/adb_keys c:/adb_keys
The above command will save the adb_keys file to the root of your C: drive. You can change the destination folder to your liking. Now the job of the authorised device is done. You can disconnect it and disable USB debugging.
Once you get a copy of adb_keys, reboot the phone with the broken screen into recovery.
Now connect the broken phone to the computer using USB.
We need to copy the adb_keys file to the broken device. Use the command below:
adb push <file location> /data/misc/adb
For example:
adb push c:/adb_keys /data/misc/adb
After the file is copied, reboot your device using "adb reboot" and voila! You can now use adb shell.
Special thanks to torankusu for this post which helped me compile this guide.
Check out this thread by k.janku1 if you want to have full control over your device even with a broken screen (requires Java Runtime Environment and Visual C++ redistributable). This tool lets you use your device through your Windows PC even if your touchscreen doesn't work or you can't see anything.
P.S.: My broken device was a Samsung Galaxy SII running Cyanogenmod 11 (M12) and my authorised device was an unrooted Moto G running stock ROM.
Click to expand...
Click to collapse
Thanks for clarifying TWRP and UNLOCKED bootloader is required.
TWRP is not available for some devices. Luckily i found a ported recovery.img for my broken tablet. Unfortunately adb shows device as offline in TWRP, adb does not work in recovery.
I finally managed installing adbkey.pub via script. does not work on dm-verity, KNOX enabled or locked devices!
1. install ODIN (Samsung) or SPFLASH tool (MTK)
2. get the firmware for your device (fw.updato.com)
3. unpack system.img
4. add your own shell script (backdoor) to /system/etc/init.d, /system/etc/install-recovery.sh or whatever
5. repack your custom system.img
6. flash system.img
7. copy RSA Key to /sdcard via MTP
My (backdoor) shell script was a watchdog looking for another shell script on /sdcard. The second shell script was copying adbkey.pub from /sdcard to /data partition. This worked without root because init scripts run with root permissions on boot.
With this method i was able to backup userdata from my broken tablet via adb. TWRP has adb backup option too, in case touch screen is broken.
I will explain in detail on request.
edit: for experts only: instead of flashing whole system.img, you can do slight modification using Tarek Galal inception Utility via ODIN, for example "Place your adb keys, configure USB debugging"
edit2: most recent version of that backdoor script can be found here
https://forum.xda-developers.com/showthread.php?t=4111923
my touch is broken and i cant select usb authorization as ok... device is not rooted...
device name is sony z3...
i have another device with 4.4 and with that device i made a backup of drm keys... now what should i do?
sorry if english is bad... helpwill be really appriciated....
hello, i have te same problem with my huawei p smart. does this work for huawei to?
no, but you can connect OTG keyboard and unlock screen. that should unlock MTP you can at least transfer pictures. even Monitor via MHL/HDMI is possible for some devices
https://dtmedia.tech/list-of-mhl-compatible-phones
speedin said:
I'm (noob) trying to follow the guide which exactly fits my situation.
Status : Broken SGS7 screen with USB debugging enabled but cannot accept the computer
SGS4 backup phone where i extracted the adb_key
both are not rooted and running stock OS
Unfortunately i get stuck between step 6/7... When i reboot to recovery mode the windows does not recognize neither of the phones when conneted to USB. Therefore i cannot run the ADB command and copy the key on my broken phone (SGS7).
i can choose the "aply update From ADB" and then the computer recognizes the phone and i can find it in ADB devices "sideload" but here i cannot use the command "adb push....."
Ii've tried updating drivers googled alot, but without luck...
what am i missing?
input very appreciated
Click to expand...
Click to collapse
Hi
I have the same connection impact when I use adb command too. Is there any solution for this situation?
Thank you.
aIecxs said:
Thanks for clarifying TWRP and UNLOCKED bootloader is required.
TWRP is not available for some devices. Luckily i found a ported recovery.img for my broken tablet. Unfortunately adb shows device as offline in TWRP, adb does not work in recovery.
I finally managed installing adbkey.pub via script. does not work on dm-verity, KNOX enabled or locked devices!
1. install ODIN (Samsung) or SPFLASH tool (MTK)
2. get the firmware for your device (fw.updato.com)
3. unpack system.img
4. add your own shell script (backdoor) to /system/etc/init.d, /system/etc/install-recovery.sh or whatever
5. repack your custom system.img
6. flash system.img
7. copy RSA Key to /sdcard via MTP
My (backdoor) shell script was a watchdog looking for another shell script on /sdcard. The second shell script was copying adbkey.pub from /sdcard to /data partition. This worked without root because init scripts run with root permissions on boot.
With this method i was able to backup userdata from my broken tablet via adb. TWRP has adb backup option too, in case touch screen is broken.
I will explain in detail on request.
edit: for experts only: instead of flashing whole system.img, you can do slight modification using Tarek Galal inception Utility via ODIN, for example "Place your adb keys, configure USB debugging"
Click to expand...
Click to collapse
ThanK You Senior for posting the solution.
Can you please help me in this.
I am using mediatek device
Didn't find /system/etc/init.d
Didn't find /system/etc/install-recovery.sh
But found "" install-recovery.sh "" inside /system/bin folder
Now do i have to only paste the your given rsa_copy.sh scrip in this file?
and paste the pub_keys from authorize device to /sdcard/
That method will most likely fail because dm-verity deny booting if any modifications detected. You can however patch boot.img with Magisk (to disable dm-verity). What android version/mediatek device you have?
Yes you can replace install-recovery.sh or add line
Code:
/system/bin/sh /path/to/rsa_copy
/system/bin/sh /path/to/99userinit_daemon
But I do not recommend this method any longer, modifications in /system should be avoided. Instead you could simply disable RSA authorization and enable usb-debugging in default.prop
https://forum.xda-developers.com/showthread.php?t=1867446
I recommend AIK it is capable of re-signing AVBv1-signed boot.img
I have android 7
mt6753
init.d is n't here
placing code inside install-recovery.sh didn't work because it runs with root privileges
now i am trying to cp /system/adbkey.pub /data/misc/adb/adb_keys
and tring to modify boot.img
aIecxs said:
That method will most likely fail because dm-verity deny booting if any modifications detected. You can however patch boot.img with Magisk (to disable dm-verity). What android version/mediatek device you have?
Yes you can replace install-recovery.sh or add line
Code:
/system/bin/sh /path/to/rsa_copy
/system/bin/sh /path/to/99userinit_daemon
But I do not recommend this method any longer, modifications in /system should be avoided. Instead you could simply disable RSA authorization and enable usb-debugging in default.prop
https://forum.xda-developers.com/showthread.php?t=1867446
I recommend AIK it is capable of re-signing AVBv1-signed boot.img
Click to expand...
Click to collapse
Senior Help. (I am extra noob)
I also noticed data folder inside boot.img can I directly put " adb" folder here?
no. data directory is just mount point. no longer required to place adb_keys, just edit default.prop with Notepad++
aIecxs said:
no. data directory is just mount point. no longer required to place adb_keys, just edit default.prop with Notepad++
Click to expand...
Click to collapse
I attempted this trick with working phone's boot.img (working img) but even after repacking boot.img without edits phone stuck/hangs on boot (without animation)
Recommend me a good tool for unpacking and repacking boot.img with guide.
(I already tried with android kitchen on Linux (This one's boot.img make phone report after boot animation) and unpack/repack Tool on windows ( http://www.mediafire.com/file/nvo2popw26k4mit/IMG_Extractor_2.0.rar/file) and this one's boot.img doesn't boot phone to boot animation and hangs on initial logo)
I tried this on other working phone
@osm0sis may have a look into boot.img can you upload please?
aIecxs said:
no. data directory is just mount point. no longer required to place adb_keys, just edit default.prop with Notepad++
Click to expand...
Click to collapse
I attempted this trick with working phone's boot.img (working img) but even after repacking boot.img without edits phone stuck/hangs on boot (without animation)
Recommend me a good tool for unpacking and repacking boot.img with guide.
(I already tried with android kitchen on Linux (This one's boot.img make phone report after boot animation) and unpack/repack Tool on windows ( http://www.mediafire.com/file/nvo2popw26k4mit/IMG_Extractor_2.0.rar/file) and this one's boot.img doesn't boot phone to boot animation and hangs on initial logo)
aIecxs said:
@osm0sis may have a look into boot.img can you upload please?
Click to expand...
Click to collapse
Yes please,
LT700 is for testing purpose workig phone.
Both phones are almost from the same manufacturer (Note: but different models) Even unmodified repacked file does make phone boot success.
Uploading both stock and magisk patched working images of both phone
Hey Guys,
Been lurking for a while. I want to get into some Android development. I bought a cheap Galaxy Tab s SM-T800 from ebay. It was a retail unit, so came with the usual retail protection, but that was no issue, I've reflashed it and rooted it, it is now running 6.0.1 with build number MMb29K.T800XXU1CRJ1.
The issue is, there are a bunch of apps and files that appear to be left over from the retail demo mode, and I can't remove them. The apps won't uninstall, it just says "uninstall unsuccessful", and the files, when I try to delete them, it just says "failed to delete".
Even after freshly restoring the new firmware, the storage on this device is pretty much zero, a lot of the space being taken up with the files and apps that I can't remove.
There was just about enough space remaining to install System App Remover, but that couldn't delete the files and apps either.
How are these files being write protected? How do I go about removing the write protection? I'm wondering if this device, because it was a retail demo unit, was configured with some kind of write protected partition, which is why the storage is so low, and why I can't delete the apps?
Any thoughts, this is driving me nuts.
Thanks
Install a file manager that allows to mount the partitions in question as READ-WRITE, thus folders/files can get deleted
jwoegerbauer said:
Install a file manager that allows to mount the partitions in question as READ-WRITE, thus folders/files can get deleted
Click to expand...
Click to collapse
Thanks, but I can't install any of the file manager apps, as there is not enough free space. I'll need to do it by connecting from Windows. What android partition/file manager would be a good one to use from Windows?
DotNetDude said:
Thanks, but I can't install any of the file manager apps, as there is not enough free space. I'll need to do it by connecting from Windows. What android partition/file manager would be a good one to use from Windows?
Click to expand...
Click to collapse
Because your device is rooted, you use ADB ( read: Android Debug Bridge ) - what you've to install on your Windows computer - to manage this device - you must have turned on Developer options -> USB Debugging on it, of course: IMHO the only the chance you have.
Once done so, you connect your device via USB cable with Windows computer, then in Windows command prompt run the commands as follows - one after one:
Code:
adb devices
adb root
adb shell mount -o rw,remount / -t auto
If success then your Android device completly is switched to READ-WRITE mode, you then via further relevant ADB commands can remove folders/files which you consider dispensable, even apps if you know their package name, and so on ...
jwoegerbauer said:
Because your device is rooted, you use ADB ( read: Android Debug Bridge ) - what you've to install on your Windows computer - to manage this device - you must have turned on Developer options -> USB Debugging on it, of course: IMHO the only the chance you have.
Once done so, you connect your device via USB cable with Windows computer, then in Windows command prompt run the commands as follows - one after one:
Code:
adb devices
adb root
adb shell mount -o rw,remount / -t auto
If success then your Android device completly is switched to READ-WRITE mode, you then via further relevant ADB commands can remove folders/files which you consider dispensable, even apps if you know their package name, and so on ...
Click to expand...
Click to collapse
Thanks for your details.
So I tired this but the adb root command wasn't working. It was coming up with the message:
adbd cannot run as root in production builds
So after a bit of research, I found the adp insecure app from Chainfire, that apparently resolves this exact problem. So I've deployed that to the tab and run it, but now when I connect the tablet to my PC, the PC doesn't connect. I get the charging symbol on the tab, so the connection is in place, but it is not detected by the pc, so I can't connect using adb.
Any suggestions would be much appreciated?
Thanks
DotNetDude said:
Thanks for your details.
So I tired this but the adb root command wasn't working. It was coming up with the message:
adbd cannot run as root in production builds
So after a bit of research, I found the adp insecure app from Chainfire, that apparently resolves this exact problem. So I've deployed that to the tab and run it, but now when I connect the tablet to my PC, the PC doesn't connect. I get the charging symbol on the tab, so the connection is in place, but it is not detected by the pc, so I can't connect using adb.
Any suggestions would be much appreciated?
Thanks
Click to expand...
Click to collapse
I realise I am responding to my own message!
Now that I am running with adb insecure, I have realisd that the USB debugging mode from developer settings is working in reverse. That is, if I enable it, the tab detaches form the PC. If I disable it, the tab reconnects to the pc. However with that setting disabled, and the pc connected, when I then run the command adb devices, it says there are no devices connected (even though I can browse to the tablet through windows explorer)
From within the adb insecure app on the tablet, when I enable the app, I can see it displays a message that says USB debugging is disabled.
I have no idea what is going on here...
Any help much appreciated?
Thanks
@DotNetDude
May be reading this helps.
jwoegerbauer said:
@DotNetDude
May be reading this helps.
Click to expand...
Click to collapse
Thanks for this. Actually, adbd insecure was just causing more problems. In the end I have resolved this by extracting the PIT file and re-partitioning. Firmware then restored correctly and all the problems are now gone, and there is plenty of free space remaining.
Hello
My tablet is soft bricked so i want to apply update from ADB but it keep saying "E: Failed to open driver control. Permission denied"
My tablet is: Lenovo TB-X605F
I tried everything to repair this tablet but nothing work
Please help me
XX_MRBEAN_XX said:
Hello
My tablet is soft bricked so i want to apply update from ADB but it keep saying "E: Failed to open driver control. Permission denied"
My tablet is: Lenovo TB-X605F
I tried everything to repair this tablet but nothing work
Please help me
Click to expand...
Click to collapse
Do you have a custom recovery installed to sideload a stock/custom ROM flash able zip? You won't be able to use stock recovery for flashing. Usually ADB isn't accessable unless set in the default.prop file
@XX_MRBEAN_XX
What ADB subcommand returns that error?
Typically "Permission Denied" is returned when a subcommand gets invoked that only works on a R/W-mounted device or requires ROOT.
jwoegerbauer said:
@XX_MRBEAN_XX
What ADB subcommand returns that error?
Typically "Permission Denied" is returned when a subcommand gets invoked that only works on a R/W-mounted device or requires ROOT.
Click to expand...
Click to collapse
In recovery menu, i select "apply update from ADB"
Beforce i connect my tablet to my pc it's say "E: failed to open driver control. Permission denied" Stopping adb
And my tablet is not recognized in adv devices
XX_MRBEAN_XX said:
In recovery menu, i select "apply update from ADB"
Beforce i connect my tablet to my pc it's say "E: failed to open driver control. Permission denied" Stopping adb
And my tablet is not recognized in adv devices
Click to expand...
Click to collapse
That's NOT an ADB subcommand, but an option offered by your tablet's Recovery Menu.
Take note that ADB consists of three components
A client, which runs on your desktop computer
A server, which runs as a background process on your desktop machine. It manages communication between the client and the daemon running on the Android-powered device
A daemon, which runs as a background process on the Android device. FYI: That automatically gets started when device boots up if enabled in Android's system settings - keyword: system file named build.prop, there settings ro.secure=0 & ro.debuggable=1.
My advice: Download from Lenovo's website the USB-driver that matches your tablet and install it: never use any other USB-driver !
jwoegerbauer said:
That's NOT an ADB subcommand, but an option offered by your tablet's Recovery Menu.
Take note that ADB consists of three components
A client, which runs on your desktop computer
A server, which runs as a background process on your desktop machine. It manages communication between the client and the daemon running on the Android-powered device
A daemon, which runs as a background process on the Android device. FYI: That automatically gets started when device boots up if enabled in Android's system settings - keyword: system file named build.prop, there settings ro.secure=0 & ro.debuggable=1.
My advice: Download from Lenovo's website the USB-driver that matches your tablet and install it: never use any other USB-driver !
Click to expand...
Click to collapse
Okay i'll try that !
By the way, my tablet can have a microSD , can i put a zip in the microSD and flash it ? ??
XX_MRBEAN_XX said:
Okay i'll try that !
By the way, my tablet can have a microSD , can i put a zip in the microSD and flash it ? ??
Click to expand...
Click to collapse
Yes, but stock recovery may fail unless it accepts test-key signed zips. If not then you'll need a custom recovery that allows to do so or to disable a signature check
That or if your bootloader is unlocked you can modify the recovery file to replace /res/keys with a test-key one and use stock recovery to flash test-signed files
XX_MRBEAN_XX said:
By the way, my tablet can have a microSD , can i put a zip in the microSD and flash it ? ??
Click to expand...
Click to collapse
Using ADB sideload, you can easily sideload any signed and/or unsigned ROM and any signed and/or unsigned MOD zip files: no need for any external SD-card. IMHO that's the most convenient method.
Code:
adb devices
adb sideload <PATH-TO-ZIP-FILE>