[Q] Question about RO /system/bin - General Questions and Answers

Hello XDA need your support.I am trying to fix a bootloop but I cannot run the ADB SHELL - exec '/system/bin/sh' failed: No such file or directory (2) - when I try to insert the sh file with adb push it sends me Cannot Copy "Read-Only" system
I know I can unlock the /system with the shell codes but my urgent question is how I can insert this sh file because android cant find it
And the most important is then the ADB SHELL is needed for fastboot commands
Any Ideas ?

Related

[Resolved] [Q] adb install results in "/sbin/sh: pm: not found"

I am using a rooted HTC G2 with Clockwork recovery and Cyanogenmod 6.1.1.
I broke my launcher, ADW EX, using Ninjamorph; the phone now gets stuck on the boot animation.
My planned solution was to use adb install to restore a backup of ADW EX.
Using adb pull I pulled a backup of ADW EX and placed in C:\
I mounted /system and /data in recovery
Using adb from recovery I entered adb shell and removed the broken ADW EX with:
rm /data/app/org.adwfreak.launcher-2.apk
Next, I exited adb shell and entered:
adb install C:\org.adwfreak.launcher-2.apk
This generated the error:
/sbin/sh: pm: not found
I cannot get past this error and successfully install the application. I am learning as I go, any direction or assistance is welcome. I miss my Android
Solved
In case any other doofus' run into this situation.
As I have now learned, the "adb install" command will not work from recovery.
Because I had broken my launcher, and I had no alternative launchers installed, there was no launcher to hand-off to after booting; the result was an endless boot animation. Calls and notifications could still be received, etc. Most importantly, the phone was no longer in recovery and "adb install" could be used.
adb install C:\org.adwfreak.launcher-2.apk
Press "home"
Fixed.
hi,
in adb shell type:
cd /system/bin
cp pm ap_process /sbin/
exit
and now try again to install/uninstall the app.
hosseinb said:
hi,
in adb shell type:
cd /system/bin
cp pm ap_process /sbin/
exit
and now try again to install/uninstall the app.
Click to expand...
Click to collapse
I am getting error at second command
/system/bin >> cp pm ap_process /sbin/
cp pm ap_process /sbin/
cp: can't stat 'pm': No such file or directory
cp: can't stat 'ap_process': No such file or directory
can you tell why
nialexme said:
I am getting error at second command
/system/bin >> cp pm ap_process /sbin/
cp pm ap_process /sbin/
cp: can't stat 'pm': No such file or directory
cp: can't stat 'ap_process': No such file or directory
can you tell why
Click to expand...
Click to collapse
Sorry for my delay;
It's because the files (pm & ap_process) do not exist in /system/bin , try to locate them by "find" command:
adb shell
#find / -name ap_process
good luck
~ # find / -name ap_process
find: /sys/kernel/slab/L2TP/IP: No such file or directory
~ # exit
and now ?!!
kb667 said:
~ # find / -name ap_process
find: /sys/kernel/slab/L2TP/IP: No such file or directory
~ # exit
and now ?!!
Click to expand...
Click to collapse
Do you have root access? Have you installed busybox?

Is there a way to push files to /system if I deleted the /system directory? I cannot

The device I'm developing for does not have a fastboot option or recovery. The only thing I can do is boot it up, and view the device via adb. However, I cannot adb push to the system because it's read-only, I cannot adb shell to obtain root because I'm missing /system/bin/sh, and I cannot adb remount the /system writable. Is there a way to change where the adb shell command targets the sh binary? I can push the sh binary to /dev/local/bin which *may* be in the path, but if I execute adb shell it targets only /system/bin/sh. Any help would be GREATLY appreciated
I'm looking also for an answer.

[Q]Installing busybox

Hi,
I'm trying to install busybox into a development board by downloading the pre-compiled binary and following the installation steps here. However, after doing so, I'm still unable to use the commands in /system/busybox. For example, when I try to run mknod, it shows me the following error:
Code:
./sh: mknod: not found
Basically, I did the following:
In Linux
Code:
adb root
adb remount
adb push busybox /system/busybox
adb shell
In device adb shell
Code:
cd /system/busybox
./busybox --install .
./sh
cd /system/bin
mv sh sh.android
ln -s /system/busybox/sh sh
It would seem like what I did to install busybox didn't work. May I know what's the correct procedure to install it?
I tried creating symlinks using the same ln command and it works, but do I have to do this manually for every single command?
Thanks!
goister said:
Hi,
I'm trying to install busybox into a development board by downloading the pre-compiled binary and following the installation steps here. However, after doing so, I'm still unable to use the commands in /system/busybox. For example, when I try to run mknod, it shows me the following error:
Code:
./sh: mknod: not found
Basically, I did the following:
In Linux
Code:
adb root
adb remount
adb push busybox /system/busybox
adb shell
In device adb shell
Code:
cd /system/busybox
./busybox --install .
./sh
cd /system/bin
mv sh sh.android
ln -s /system/busybox/sh sh
It would seem like what I did to install busybox didn't work. May I know what's the correct procedure to install it?
I tried creating symlinks using the same ln command and it works, but do I have to do this manually for every single command?
Thanks!
Click to expand...
Click to collapse
You didn't add /system/busybox to your PATH
Sent from my LT26i using XDA
Hi,
Where would I add it? init.rc or something?
Anyone?
Thanks!

[Q] Cant access Android shell

I attempted to set the Android ash shell as default based on a thread here by:
mv /system/bin/sh /system/bin/sh0
ln -s /system/xbin/bb/ash /system/bin/sh
This did not work? Now when i attempt to open shell I see an error:
-exec '/system/bin/sh failed : No such file or directory'
I'm afraid I have screwed up. I thought about writing a small app to execute a shell command to rename the file back to "sh". Would this work? Do I have simpler options?
Any help appreciated
Thanks,
Bill F
Update
Ok, I was able to get the renamed sh file off the phone with adb pull. I renamed it to "sh" and tried to push it back using:
adb push c:\temp\sh /system/bin
but I get an error that says
failed to copy c:\temp\sh to /system/bin/sh : No such file or directory
What should I do?
Thanks,
Bill F
I, too, had a similar problem.
And were you able to fix it?
Bill F
Any answer?
I'm having the same problem. Does anyone have a solution?
bfarley59 said:
Ok, I was able to get the renamed sh file off the phone with adb pull. I renamed it to "sh" and tried to push it back using:
adb push c:\temp\sh /system/bin
but I get an error that says
failed to copy c:\temp\sh to /system/bin/sh : No such file or directory
What should I do?
Thanks,
Bill F
Click to expand...
Click to collapse

[Q] adb push- why am I getting permission denied?

phone: LG esteem ms910
Rooted: Yes
I'm trying to adb push a .apk file into my phones /system/app folder. These are the steps I am taking in trying to do this, but I am getting a permission denied response at the "adb push" part. Oh and my phone is under the "internet connection" setting. The other two (mass storage, charge only) wont let my phone enter debugging mode.
Code:
adb shell
su
mount -o remount,rw /dev/block/stl9 /system
exit
exit
adb push C:\Myfile.apk /system/app
Also when I enter the "mount -o remount,rw /dev/block/stl9 /system" command, It pops up twice but without the # symbol, not sure if there is an error there but it ends up looking like this:
Code:
C:\Android\android-sdk\platform-tool>adb shell
$ su
# mount -o remount,rw /dev/block/stl9 /system
mount -o remount,rw /dev/block/stl9 /system
# exit
exit
$ exit
exit
C:\Android\android-sdk\platform-tool>
I think you would want it to be on charge only, as the other options are utilizing the USB while charge only does not. That is how my setup functions... I did have the permission denied error before when I was using Ubuntu 10.04. Are you sure you have an up to date version of JDK? And the USB rules?
your command should be
adb push C:\Myfile.apk /system/app/myfile.apk
you have also to run adb as root or enable rw for /system/app
Basically:
______________________________________________
adb shell
su
mount -o remount,rw /dev/block/stl9 /system
chmod 777 /system/app
exit
exit
adb push C:\Myfile.apk /system/app/myfile.apk
________________________________________________
should do the job
@imheroldman- I tried leaving it on charge only, but the devices wasnt found when I ran the adb devices command, and yes the JDK is the latest.
@djodjoni -Hey I tried your suggestions and it worked.
Thanks to the both of you for helping.
FWIW, I got permission denied errors when I tried to push busybox via adb. I just downloaded a busybox .zip and flashed it via TWRP, it seems to have worked, and the busybox app recognizes it as installed.
I can't use adb push. It says Read Only file system when I try to push things to /sdcard. Don't know why
kavinzhao said:
I can't use adb push. It says Read Only file system when I try to push things to /sdcard. Don't know why
Click to expand...
Click to collapse
Use this:
Code:
[path] > adb shell
# mount -o rw,remount rootfs /
# chmod 777 /sdcard
# exit
[path] > adb push [file path on your PC] /sdcard
ИΘΘK¡€ said:
Use this:
Code:
[path] > adb shell
# mount -o rw,remount rootfs /
# chmod 777 /sdcard
# exit
[path] > adb push [file path on your PC] /sdcard
Click to expand...
Click to collapse
Thanks. I was using the recovery to receive before this. I think that should save me some time.
hello, I am having same problem, can you please help me out?
[email protected]_himaulatt:/data/local # adb push C:\firewater /data/local/temp
adb push C:\firewater /data/local/temp
error: device not found
1|[email protected]_himaulatt:/data/local # adb push C:\firewater /data/local/
adb push C:\firewater /data/local/
error: device not found
1|[email protected]_himaulatt:/data/local # adb push C:\firewater /data/l
adb push C:\firewater /data/l
error: device not found
1|[email protected]_himaulatt:/data/local # adb push C:\firewater /data/
adb push C:\firewater /data/
error: device not found
1|[email protected]_himaulatt:/data/local # cd ..
cd ..
[email protected]_himaulatt:/data # cd ..
cd ..
[email protected]_himaulatt:/ # exit
exit
[email protected]_himaulatt:/ $ exit
exit
C:\Users\Winpc\Downloads\fastboot-win>adb push C:\firewater /data/local/temp
failed to copy 'C:\firewater' to '/data/local/temp/firewater': Permission denied
C:\Users\Winpc\Downloads\fastboot-win>adb wait-for-devices push firewater /data/local/temp
failed to copy 'firewater' to '/data/local/temp/firewater': Permission denied
C:\Users\Winpc\Downloads\fastboot-win>adb shell
[email protected]_himaulatt:/ $ su
su
[email protected]_himaulatt:/ # mount -o rw,remount rootfs/
mount -o rw,remount rootfs/
Usage: mount [-r] [-w] [-o options] [-t type] device directory
1|[email protected]_himaulatt:/ # mount -o rw,remount rootfs /
mount -o rw,remount rootfs /
[email protected]_himaulatt:/ # chmod 777 /sdcard
chmod 777 /sdcard
[email protected]_himaulatt:/ # exit
exit
[email protected]_himaulatt:/ $ adb push C:\firewater /data/
adb push C:\firewater /data/
error: device not found
1|[email protected]_himaulatt:/ $ exit
exit
C:\Users\Winpc\Downloads\fastboot-win>adb wait-for-devices push firewater /data/local/temp
failed to copy 'firewater' to '/data/local/temp/firewater': Permission denied
C:\Users\Winpc\Downloads\fastboot-win>
Make sure you have phone detected and correct drivers and adb installed.
Once ADB is functioning properly, then let's PUSH files!
First let's make sure adb is running and make sure adb see's the phone. Please run these commands:
Code:
adb kill-server
adb start-server
adb devices
The output after devices will be a serial number, if this looks good, move on. First you need to make
sure the apk you want to push is in the same directory as adb.exe
once you have moved the apk to the adb.exe directory, then run the following:
Code:
[FONT=Verdana]adb remount
adb push myfile.apk /system/app/
adb shell chmod 644 /system/app/myfile.apk
adb reboot[/FONT]
adb remount mounts the phone as read write so you can write thru adb, it will be automatically unmounted when phone disconnected or rebooted
assuming your APK you want moved is called "myfile.apk"
adb push file_myfile.apk /system/app/ this command moves the "myfile.apk" (the apk you want moved) to the /system/app/ directory on your phone
adb shell chmod 644 /system/app/myfile.apk this command sets the correct file permissions for APKs
adb reboot this reboots the phone so that the new apk can be detected
Good luck
hi:
phone is rooted;
android 5.0 ;
adb start-server is OK;
adb devices is OK;
adb root is adbd is already running as root;
system and system/app are "chomd is 777 ";
I want to "adb push myfile /system/app/ "
Question: Permission denied .
- -
thx
other:
adb remount is Permission denied too.
"adb push ./build.gradle /storage/sdcard0/ " is OK.
opalescent said:
hi:
phone is rooted;
android 5.0 ;
adb start-server is OK;
adb devices is OK;
adb root is adbd is already running as root;
system and system/app are "chomd is 777 ";
I want to "adb push myfile /system/app/ "
Question: Permission denied .
- -
thx
other:
adb remount is Permission denied too.
"adb push ./build.gradle /storage/sdcard0/ " is OK.
Click to expand...
Click to collapse
sounds like you possibly do not have proper permission for the user you are logged into your computers operating system with. make sure you have the proper permissions and rights to access the folders you are trying to access. For a quick fix you can try loging into the system using the root user or administrator of the system that you are using and then try the adb commands. and you can just do a quick su switch from the Computer OS's konsole/terminal.
XeoNoX said:
First you need to make sure the apk you want to push is in the same directory as adb.exe
Click to expand...
Click to collapse
OMG thanks, mine wasn't working because something as simple as that!

Categories

Resources