[Q] Executing a binary in a shell: no permission - Nexus 9 Q&A, Help & Troubleshooting

I have large, non-graphical application that I want to run on my N9. I have successfully built the application using ndk-build, and I can 'adb push' the binary to the N9. However, with 'adb shell' I am unable to figure out the magic incantation to make the binary executable and run it.
My N9 is unlocked, and has the chainfire superSU; and I installed SElinuxModeChanger, but I have been beating my head against the N9 all day: "./foo: no permission".
Any suggestions?
-- unused0

Found it...
Ah, found it...
http: //kevinboone.net/ android_native.html
Thanks,
Charles

Related

[Q] [Help/Q] Rooted, but adb is not recognizing su priviledges

Okay, my Atrix is rooted and USB Debugging is on, but when I try to remount adb, it says "remount failed: Operation not permitted". Since I can't get adb shell to the # to come up, I type "adb shell su" and I get a Permission denied. I originally rooted with SuperOneClick and enabled sideloading with it and today I rerooted, unrooted, then used DesignGears' new root script to reroot and clean up SuperOneClick's root. Still no adb root access. I have TitaniumBackup, Superuser, and RootExplorer installed and even downloaded Root Checker to check if i really had root. I've spent almost all day looking this up and the closest I've found is the thread that talks about adb showing the device offline with the fix of copying over another adbd to the sbin folder(which I also tried) and adb still doesn't seem to recognize my root. The only time I can get the # prompt is when I do a shell root with SuperOneClick, but that is just a temporary root. Is anyone else experiencing this?
Edit: forgot to mention that adb works fine when I connect my NexusOne, so it's probably not the computer.

Why can't fre3vo be run with a script using script manager?

Since we now have more than one solution that provides full root access between reboots, I figured I'd try writing a shell script to run fre3vo. I can... and it runs... but I get the message "this device is not supported by this exploit".
So why does it run from ADB and not a script? Does the phone have more rights/access when connected via ADB? If the script would work, we could write one that could run after every reboot (using script manager) and it'd be a permanent solution.
Mike
I am trying the same thing with the easyfre3vo package...Setting the root.redo.bat to 'run as root', and executing just seems to hang...
Any ideas?
Sent from my PG86100 using XDA App
What about that app "gscript lite", or " adb wireless"?
Sent from my 3rd Dimension of Evolution
ADB has different permissions compared to a terminal on the phone. A terminal emulator on the phone and/or a tool like Gscript doesn't have the ability to do anything in the /data/local/tmp directory like ADB does.
ADB over wifi needs root, so you can't use it to run fre3vo since you don't have root - you can use it AFTER you've run fre3vo though.

[Q] Linux distro binaries within Android?

I just extracted the Gentoo Stage3 package for ARM7A and I am playing around trying to get the binaries to run either through terminal emulator or adb shell on my Galaxy Tab running Gingerbread.
I am FULLY aware of how PATH works and all of the normal reasons you would get a "not found" error when trying to run a command, but this one has me stumped.
I tried setting my path to include a subdirectory of /system/bin as follows:
PATH=/system/bin/gentoo:$PATH and gentoo is where I put my gentoo binaries.
When I do which (command) it says:
/system/bin/gentoo/(command)
When I try to run it, it runs the same command from one of the other directories such as /system/xbin (from busybox) instead.
I tried renaming one of the binaries so it has a unique name mv ps wtf I can still do which wtf and get /system/bin/gentoo/wtf
THEN when I try to run it I get wtf: not found.
Obviously the file is there. Even if I go directly to /system/bin/gentoo and do ./wtf I get wtf: not found. If I copy one of the Android system binaries to /system/bin/gentoo/wtf it will run just fine.
Why would I get a not found error for a binary that is obviously there??
I would expect a different error if it wasn't an acceptable binary, so I am lost.
Any ideas?
rustyshack3 said:
I just extracted the Gentoo Stage3 package for ARM7A and I am playing around trying to get the binaries to run either through terminal emulator or adb shell on my Galaxy Tab running Gingerbread.
I am FULLY aware of how PATH works and all of the normal reasons you would get a "not found" error when trying to run a command, but this one has me stumped.
I tried setting my path to include a subdirectory of /system/bin as follows:
PATH=/system/bin/gentoo:$PATH and gentoo is where I put my gentoo binaries.
When I do which (command) it says:
/system/bin/gentoo/(command)
When I try to run it, it runs the same command from one of the other directories such as /system/xbin (from busybox) instead.
I tried renaming one of the binaries so it has a unique name mv ps wtf I can still do which wtf and get /system/bin/gentoo/wtf
THEN when I try to run it I get wtf: not found.
Obviously the file is there. Even if I go directly to /system/bin/gentoo and do ./wtf I get wtf: not found. If I copy one of the Android system binaries to /system/bin/gentoo/wtf it will run just fine.
Why would I get a not found error for a binary that is obviously there??
I would expect a different error if it wasn't an acceptable binary, so I am lost.
Any ideas?
Click to expand...
Click to collapse
Just a guess, but I'd bet that the linker path for the binary is having trouble finding a library.

[Q] adb root access works. Installing superuser.apk fails

I have searched through lot of posts on xda; able rooted device copied su binary and make root work by sdb shell.
Able to get #prompt on adb shell. But when i install superuser.apk; try to run from UI, i see an error.
"There was an error installing superuser"
What am i missing here. Sorry if a repost. quick help would be appreciated
TIA

[Q] Ematic EGS004 BU Rooting/Kernal Module Issue

Hello,
Veteran SW guy here; but newbie at Android.
I have three tablets. All of them are Ematic Model EGS004. All three were bought for the sole purpose of being used by children to watch educational videos (in mp4 and flv formats) and read PDF documents. Absolutely nothing else. No games. No internet access whatsoever. Etc.
Two of the tablets are still in the box and have not been touched. I'm hoping that they may be useful for making/restoring an original image of the tablets.
To implement the requirements of this project, I did the following to one of the tablets:
1) Used the instructions at http://forum.xda-developers.com/showthread.php?t=2495069 to get root access with Cydia Impactor and Chainfire SuperSU.
2) Installed Titanium Backup (root). Using this, I uninstalled most of the Google applications (excluding Google Play), messager, YouTube, games, etc.
3) Installed File Manager (Explorer) by Rhythm Software.
4) Installed Shell Terminal Emulator by MobilDev. Using the shell, I went to the /system/lib directory and renamed libwifidisplay.so
and libwpa_client.so to libwifidisplay.disabled and libwpa_client.disabled.
Unfortunately, upon reboot, the tablet gets stuck in the bootup screen (with the ematic logo). Obviously, something about Android causes a hang if an expected kernel module is missing...
I tried using the shell in Cydia Impactor. But, the file system was read only. I tried:
mount -o rw,remount /system
But, I get an "Operation not permitted" since I am not root.
I downloaded the ADB bundle for windows at http://developer.android.com/sdk/index.html#download and successfully installed adb on my PC. I could get into a shell with the "adb shell" command. But, the /system/lib directory still is read only and I can't seem to remount it since I am not root.
I tried "adb remount". "Operation not permitted" was the result, again.
Cydia Impactor installs its "su" binary in /system/xbin. I tried running it from there using various invocations like "su -c mount -o rw,remount /system" Each time, the shell hung and I never got a shell prompt afterwards.
Questions:
1) Surely there's a way that I can get back in to rename these files now... I can "ls" them from the adb shell. I can pull them to my PC with adb pull. (adb put doesn't work either since the file system is read only.) Ideas?
2) Once I get this solved, what is the best way to get rid of the wireless capability so that children can never use it? I would like to move videos and PDF's between it and a PC strictly via USB.
3) Is there a way to image/restore one of the untouched tablets - or, for that matter, this one once its up and running like it needs to be?
Thanks everyone!
Jim
Let's try a simpler question since there have been no responses:
Once I get into a shell (non-root) using ADB or Cythia Impactor, I believe I can rename the files if I can only get SuperSU to work. However, when I invoke su, the shell hangs:
su -c ls
su
etc. All of these hang. I assume that SuperSU is waiting for a confirmation from the android display. But, since I'm stuck at the startup screen, there's never an opportunity. How can I get the shell to interact with me as root so that I can remount the file system as RW and rename files?
Thanks,
Jim
rivkah613 said:
Hello,
Veteran SW guy here; but newbie at Android.
I have three tablets. All of them are Ematic Model EGS004. All three were bought for the sole purpose of being used by children to watch educational videos (in mp4 and flv formats) and read PDF documents. Absolutely nothing else. No games. No internet access whatsoever. Etc.
Two of the tablets are still in the box and have not been touched. I'm hoping that they may be useful for making/restoring an original image of the tablets.
To implement the requirements of this project, I did the following to one of the tablets:
1) Used the instructions at http://forum.xda-developers.com/showthread.php?t=2495069 to get root access with Cydia Impactor and Chainfire SuperSU.
2) Installed Titanium Backup (root). Using this, I uninstalled most of the Google applications (excluding Google Play), messager, YouTube, games, etc.
3) Installed File Manager (Explorer) by Rhythm Software.
4) Installed Shell Terminal Emulator by MobilDev. Using the shell, I went to the /system/lib directory and renamed libwifidisplay.so
and libwpa_client.so to libwifidisplay.disabled and libwpa_client.disabled.
Unfortunately, upon reboot, the tablet gets stuck in the bootup screen (with the ematic logo). Obviously, something about Android causes a hang if an expected kernel module is missing...
I tried using the shell in Cydia Impactor. But, the file system was read only. I tried:
mount -o rw,remount /system
But, I get an "Operation not permitted" since I am not root.
I downloaded the ADB bundle for windows at http://developer.android.com/sdk/index.html#download and successfully installed adb on my PC. I could get into a shell with the "adb shell" command. But, the /system/lib directory still is read only and I can't seem to remount it since I am not root.
I tried "adb remount". "Operation not permitted" was the result, again.
Cydia Impactor installs its "su" binary in /system/xbin. I tried running it from there using various invocations like "su -c mount -o rw,remount /system" Each time, the shell hung and I never got a shell prompt afterwards.
Questions:
1) Surely there's a way that I can get back in to rename these files now... I can "ls" them from the adb shell. I can pull them to my PC with adb pull. (adb put doesn't work either since the file system is read only.) Ideas?
2) Once I get this solved, what is the best way to get rid of the wireless capability so that children can never use it? I would like to move videos and PDF's between it and a PC strictly via USB.
3) Is there a way to image/restore one of the untouched tablets - or, for that matter, this one once its up and running like it needs to be?
Thanks everyone!
Jim
Click to expand...
Click to collapse
Erratic Ematic
rivkah613 said:
Let's try a simpler question since there have been no responses:
Once I get into a shell (non-root) using ADB or Cythia Impactor, I believe I can rename the files if I can only get SuperSU to work. However, when I invoke su, the shell hangs:
su -c ls
su
etc. All of these hang. I assume that SuperSU is waiting for a confirmation from the android display. But, since I'm stuck at the startup screen, there's never an opportunity. How can I get the shell to interact with me as root so that I can remount the file system as RW and rename files?
Thanks,
Jim
Click to expand...
Click to collapse
I rooted my son's EGS004, installed busybox, and played around with it without any apparent problem. When I rebooted it, I was prompted to set up the device then and every subsequent time I rebooted it. I could not install any apps and could not redo the Cydia Impactor rooting procedure. The reason was that /data was reporting itself as 0.00B in size. Factory reset didn't change anything. Ematic wants me to return it.
Your issue sounds different, but it could be something as simple as the device being very unforgiving. There's a pinhole with a reset button (never worked for me but tech support suggested it) which may help.

Categories

Resources