JF 1.43 Bug? SCP not working. - G1 Android Development

I loaded up console on my JF 1.43 ADP1 to scp something from my computer to my phone. Heres what I did (Note, I tried this with root and non-root privileges):
Code:
# scp [email protected]:/home/user/file /sdcard/
/system/bin/ssh: No such file or directory
when you try to scp something, it looks for ssh client in /system/bin when it should be looking in /system/xbin, thus resulting in error. This seems like a bug.

someprogr said:
I loaded up console on my JF 1.43 ADP1 to scp something from my computer to my phone. Heres what I did (Note, I tried this with root and non-root privileges):
Code:
# scp [email protected]:/home/user/file /sdcard/
/system/bin/ssh: No such file or directory
when you try to scp something, it looks for ssh client in /system/bin when it should be looking in /system/xbin, thus resulting in error. This seems like a bug.
Click to expand...
Click to collapse
Confirmed. I just looked at the hex code and the string compiled into /system/xbin/scp seems to be /system/bin/ssh indeed. Noone noticed, this is almost funny.

This still seems to be a problem in JF1.5 unfortunately. I would love to see a fix, even if it's just a link to a fixed binary to download, anyone?

Well, here's the simple fix:
$ su
# mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
# cd /system/bin
# ln -s /system/xbin/ssh .
# mount -o ro,remount -t yaffs2 /dev/block/mtdblock3 /system

Related

Install Modded RC30 from Bug Terminal?

Hey guys,
Sadly, I've got Vista64, which works fairly well, FYI.
Anyways, because of it I can't install the USB drivers.. But I figure I'm just using them to access the terminal, which I, on RC29, apparently already have access to...
If I copy recovery.img to the SDcard and then use the filemanager to put it in /system, would I be able to flash it from the homescreen? What commands would I use?
Just
$ su
su
# mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
# cd /system
cd /system
# cat /data/local/recovery.img > recovery.img
cat /data/local/recovery.img > recovery.img
# flash_image recovery recovery.img
flash_image recovery recovery.img
#
?? Is this going to do something bad...
Thanks
**I don't have write permission to /System using Android File Manager. I'm sorry I'm a linux newb here, what cmds do I need to use to overwrite that file?
grim1234 said:
Hey guys,
Sadly, I've got Vista64, which works fairly well, FYI.
Anyways, because of it I can't install the USB drivers.. But I figure I'm just using them to access the terminal, which I, on RC29, apparently already have access to...
If I copy recovery.img to the SDcard and then use the filemanager to put it in /system, would I be able to flash it from the homescreen? What commands would I use?
Just
$ su
su
# mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
# cd /system
cd /system
# cat /data/local/recovery.img > recovery.img
cat /data/local/recovery.img > recovery.img
# flash_image recovery recovery.img
flash_image recovery recovery.img
#
?? Is this going to do something bad...
Thanks
**I don't have write permission to /System using Android File Manager. I'm sorry I'm a linux newb here, what cmds do I need to use to overwrite that file?
Click to expand...
Click to collapse
I have the same problem: I am using Windows Server 2008 x64 and there is no 64 bit driver for ADB. I ended up installing a Ubuntu VM:
http://www.koushikdutta.com/2008/10/developing-and-debugging-android.html
Well, I tired txting this to someone...
cp /sdcard/recovery.img /system
su
mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
cd /system
cat /data/local/recovery.img > recovery.img
flash_image recovery recovery.img
Then booted into recovery mode and pressed alt-L...
And it doesn't work.
I guess it's VMWare time... zzz
Check out my post over at AndroidCommunity http://androidcommunity.com/forums/f28/i-have-rc30-and-root-6867/ this will allow you to install the modified upgrade without the adb, and sdk.

Blocking the OTA Updates

I am going to bring this up to the group. I am looking for the method to block the OTA updates. I enjoy my rooted Evo phones. It is a freedom I enjoy and plan to protect.
I am getting tired of pressing cancel every day. If I want to update, I want to be the one to control it.
I have been looking for a method to disable the OTA update prompts. From the board, I was able to find this.
Thread 6450334
I have tried it on my Evo with no luck
adb shell
# mount -o remount,rw -t yaffs2 /dev/block/mtdblock4 /system
mount -o remount,rw -t yaffs2 /dev/block/mtdblock4 /system
# cd /etc/security
cd /etc/security
# mv otacerts.zip otacerts.zip.bak
mv otacerts.zip otacerts.zip.bak
failed on 'otacerts.zip' - Directory not empty
# ls
ls
otacerts.zip
cacerts.bks
# mv otacerts.zip otacerts.zip.bak
mv otacerts.zip otacerts.zip.bak
failed on 'otacerts.zip' - Directory not empty
Anyone know why otacerts.zip is in use and cannot be renamed. I did some different methods, but no luck.
Has someone done this before or knows of a better method of blocking the OTA updates from Sprint. I am open for a solution.
check with chuckhriczko, he successfully completed what you are trying to do. Also check out his ROM...it already has this action implemented into the ROM
techie4971 said:
I am going to bring this up to the group. I am looking for the method to block the OTA updates. I enjoy my rooted Evo phones. It is a freedom I enjoy and plan to protect.
I am getting tired of pressing cancel every day. If I want to update, I want to be the one to control it.
I have been looking for a method to disable the OTA update prompts. From the board, I was able to find this.
Thread 6450334
I have tried it on my Evo with no luck
adb shell
# mount -o remount,rw -t yaffs2 /dev/block/mtdblock4 /system
mount -o remount,rw -t yaffs2 /dev/block/mtdblock4 /system
# cd /etc/security
cd /etc/security
# mv otacerts.zip otacerts.zip.bak
mv otacerts.zip otacerts.zip.bak
failed on 'otacerts.zip' - Directory not empty
# ls
ls
otacerts.zip
cacerts.bks
# mv otacerts.zip otacerts.zip.bak
mv otacerts.zip otacerts.zip.bak
failed on 'otacerts.zip' - Directory not empty
Anyone know why otacerts.zip is in use and cannot be renamed. I did some different methods, but no luck.
Has someone done this before or knows of a better method of blocking the OTA updates from Sprint. I am open for a solution.
Click to expand...
Click to collapse
I am assuming you are in the system when doing this? If so, you need to back out into recovery and do it. We currently don't have write access to the system partition while Android is running. Only in recovery. Highly recommend you look up Rom Manager on the market and use that to install the "fake-flash" recovery. It's truly the best recovery we have atm.
But you are doing it correctly except you wrote cd /etc/security. It should be /system/etc/security. The following is all you need.
Code:
adb shell
mount -o remount,rw -t yaffs2 /dev/block/mtdblock4 /system
cd /system/etc/security
mv otacerts.zip otacerts.zip.bak
You can ls to make sure it worked but that should do it. Reboot and voila. Never press cancel again.
chuckhriczko said:
But you are doing it correctly except you wrote cd /etc/security. It should be /system/etc/security. The following is all you need.
Click to expand...
Click to collapse
from my brief experience last night with this, /etc is a symlink to /system, so /etc or /system/etc is the exact same thing, doesn't matter.
i took the build.prop in the PC36IMG.zip which shows itself with test-keys, removed those and used release-keys, and the OTA appeared when it hadn't before!
now it downloaded the OTA but verification failed. i had to copy over ota-certs.zip from a stock EVO and those allowed the OTA update to pass verification.
if you wanted to reverse the process and prevent OTA updates from downloading, you can manually change your build.prop to show you as already having .6 software package loaded and it won't show any OTA available anymore.
it might be better to actually load the .6 software though which will adjust the build.prop, but thats my personal recommendation and not related to your request. im also running PC36IMG.zip on .1 software and also get the OTA update prompt but i plan on loading .6 software soon.
another factor to consider is the radio version also ...
joeykrim said:
from my brief experience last night with this, /etc is a symlink to /system, so /etc or /system/etc is the exact same thing, doesn't matter.
i took the build.prop in the PC36IMG.zip which shows itself with test-keys, removed those and used release-keys, and the OTA appeared when it hadn't before!
now it downloaded the OTA but verification failed. i had to copy over ota-certs.zip from a stock EVO and those allowed the OTA update to pass verification.
if you wanted to reverse the process and prevent OTA updates from downloading, you can manually change your build.prop to show you as already having .6 software package loaded and it won't show any OTA available anymore.
it might be better to actually load the .6 software though which will adjust the build.prop, but thats my personal recommendation and not related to your request. im also running PC36IMG.zip on .1 software and also get the OTA update prompt but i plan on loading .6 software soon.
another factor to consider is the radio version also ...
Click to expand...
Click to collapse
Oh I didn't know about the symlink. Good call.
Good point. I forgot to mention I did change the build number in the build.prop to be .6 instead of .1 so maybe that helps.
chuckhriczko,
I first tried it in system and no luck, then I went to recovery. I figured the active system partition was the issue.
Now I know I was in the wrong place. I will get Rom Manager and take a look at your customized ROM.
Nice job on the ROM. Love to say goodbye to those Sprint Apps.
Thanks for the quick response.
C:\Program Files (x86)\android-sdk\tools>adb shell
# mount -o remount,rw -t yaffs2 /dev/block/mtdblock4 /system
mount -o remount,rw -t yaffs2 /dev/block/mtdblock4 /system
mount: mounting /dev/block/mtdblock4 on /system failed: Invalid argument
# exit
exit
C:\Program Files (x86)\android-sdk\tools>adb devices
List of devices attached
HT05VHL13839 recovery
C:\Program Files (x86)\android-sdk\tools>
I get stuck there. I am rebooted into recovery mode and properly attached as you can tell from the adb devices command. Any ideas?
Problem solved:
adb shell
mount /dev/block/mtdblock4 /system
cd /system/etc/security
mv otacerts.zip otacerts.zip.bak
chuckhriczko said:
But you are doing it correctly except you wrote cd /etc/security. It should be /system/etc/security. The following is all you need.
Code:
adb shell
mount -o remount,rw -t yaffs2 /dev/block/mtdblock4 /system
cd /system/etc/security
mv otacerts.zip otacerts.zip.bak
You can ls to make sure it worked but that should do it. Reboot and voila. Never press cancel again.
Click to expand...
Click to collapse
Will this work on the Incredible as well?
SteelH said:
C:\Program Files (x86)\android-sdk\tools>adb shell
# mount -o remount,rw -t yaffs2 /dev/block/mtdblock4 /system
mount -o remount,rw -t yaffs2 /dev/block/mtdblock4 /system
mount: mounting /dev/block/mtdblock4 on /system failed: Invalid argument
# exit
exit
C:\Program Files (x86)\android-sdk\tools>adb devices
List of devices attached
HT05VHL13839 recovery
C:\Program Files (x86)\android-sdk\tools>
I get stuck there. I am rebooted into recovery mode and properly attached as you can tell from the adb devices command. Any ideas?
Problem solved:
adb shell
mount /dev/block/mtdblock4 /system
cd /system/etc/security
mv otacerts.zip otacerts.zip.bak
Click to expand...
Click to collapse
So to reverse this could I use cmd
mv otacerts.zip.bak otacerts.zip
??
Thanks.
How about:
adb shell
su
pm disable com.google.android.gsf/com.google.android.gsf.update.SystemUpdateActivity
pm disable com.google.android.gsf/com.google.android.gsf.update.SystemUpdateService
pm disable com.google.android.gsf/com.google.android.gsf.update.SystemUpdateService\$Receiver
This should disable the OTA updates without removing any files from system.

problems accessing to /system using terminal (from the phone)

hi,
after latest upgrade (htc desire, open desire 2.3, busybox, app2sd), i have issues with the access to the file system on /system (via terminal emulator from the phone).
all works fine using adb, but when i try to delete or copy a file to /system (directly on phone), i have a error.
i have searched over inet, but i don't find :/
i attach a example below
Code:
# mount -o rw,remount /dev/block/mtdblock3 /system
# cd /system/etc/test
# ls
-rw-rw-rw root root 124 ul 22 13:54 test1
-rw-rw-rw root root 124 ul 22 13:54 test2
# rm test1
error deleting test1: directory not empty
# ls
-rw-rw-rw root root 124 ul 22 13:54 test2
# ls test1
test1
edit:
i have the same issue when i connect to my phone using adb (and the phone started, not in recovery mode)..
Code:
# mount -o rw,remount /dev/block/mtdblock3 /system
# cd /system/app
# cp -f /sdcard/install/nosense/system/app/Terminal.apk .
cp: can't create './Terminal.apk': Out of memory
# cp -f /sdcard/install/nosense/system/app/Terminal.apk .
cp: can't create './Terminal.apk': Out of memory
# cd /system/app
# cp -f /sdcard/install/nosense/system/app/Terminal.apk .
cp: can't create './Terminal.apk': Out of memory
# cd /system/app
# cp -f /sdcard/install/nosense/system/app/Terminal.apk .
cp: can't create './Terminal.apk': Out of memory
Hi there... are you new to the desire?
As far as I can remember, writing to /system/ outside of ADB in Recovery is not possible on the Desire - an unfortunate limitation of the current root methods which hasn't been circumvented yet.
oh! thx!
i have received my desire a few days ago.
my old phone was a nexus.
i agree! and sorry for the inconvenience
What inconvenience?
I was a little confused too when I started reading about root on the Desire, and the info is hard to find (buried in one [or a few] of the many root tutorials)...
The really interesting part, IMO, is whether this limitation causes any problems with root-apps. But there don't seem to be any other than Adfree, and there seem to be patched versions that work with the Desire now (IIRC by moving the Hosts file out of /system/ and symlinking to it)

Issues with c4droid. "Permission Denied". [Solved]

I have a rooted ASUS Transformer running Revolver 2.1.1 (Android 3.2).
I am a programmer and want a simple programming environment for my Transformer. I purchased an app called c4droid the other day and have had issues compiling c++ code using the g++ compiler.
When I try to compile/run code, I get the messages below:
C4droid has been granted superuser permissions
Click to expand...
Click to collapse
Then....
sh: /sdcard/Android/data/com.n0n3m4.droidc/files/gcc/compile-g++.sh: Permission Denied
Click to expand...
Click to collapse
How can I get this to work? Did I root wrong?
If you face these issues, click on the link below -
http://forum.xda-developers.com/showpost.php?p=16604606&postcount=6
What about trying this:
$su
#chmod 755 /sdcard/Android/data/com.n0n3m4.droidc/files/gcc/compile-g++.sh
I'm not sure what type of FS /sdcard is on the TF, so I don't know if those permissions will a) be allowed to be set, and b) work, but I doubt if any shell script will give anything but a permissions error without having +x permissions.
By the way:: If you can't do a chmod and that is due also to a permissions error, then I'm guessing you're not really rooted or not correctly rooted.
Good luck.
hachamacha said:
What about trying this:
$su
#chmod 755 /sdcard/Android/data/com.n0n3m4.droidc/files/gcc/compile-g++.sh
I'm not sure what type of FS /sdcard is on the TF, so I don't know if those permissions will a) be allowed to be set, and b) work, but I doubt if any shell script will give anything but a permissions error without having +x permissions.
By the way:: If you can't do a chmod and that is due also to a permissions error, then I'm guessing you're not really rooted or not correctly rooted.
Good luck.
Click to expand...
Click to collapse
did.......
su then chmod 755 /sdcard/Android/data/com.n0n3m4.droidc/files/gcc/compile-g++.sh and it had no such error but if I ran both on the same line I got a "Permission Denied" error. Either way, it still provided me with the permission denied error through c4droid.
Also, I've used root checker to verify that it's rooted.
So is it a sure thing that the .sh file you're getting the error on is actually the problem or could it be something inside it that is also having a permissions error?
I guess you could easily test that by writing a single line test.sh script that does an ls or a ps command.
Code:
example:
--start of test.sh--
#!/system/bin/sh #or whatever the path is for your case
ls > /sdcard/ls.txt
-- end of file ---
# cd {pathoftestfile}
# chmod 755 test.sh
# ./test.sh
# more ls.txt # or cat ls.txt, etc.
If that doesn't give an error then something in your 'real' shell script is.
One other thing worth a shot, which I "think" I've noticed on droids in the past is to just test the script inside the /system FS and see if it does any better there. At least we know that scripts have no problems in for example, /system/xbin or /system/bin, so mount /system rw (mount -o remount,rw /system) and move the test.sh over there , fix permissions, (mount -o remount,ro /system) and cd to /system/*bin/ and ./test.sh.
You've probably tried all this already, but if not.
NOTE: Never mind: I just tested my stuff ^^ myself, and it just doesn't work in the /sdcard tree. I moved it to /system/xbin after mounting rw and it works fine without any change.
There might be some way past this, but I can't recall ever getting a shell script working while on the /sdcard share.
I tried making the shell script but I had no luck actually running it. I chmodded it without error and ran it without error but it didn't produce a .txt file so I guess it failed to run or didn't have permissions to create a file.
The app developer/creator specifies that the compiler I'm using should work fine on rooted phones. I don't have an android phone to test it. I've tried working out problems with the developer but he couldn't figure it out either.
Okay, the creator helped me out and we resolved it. Here are the steps I took to do it, for other users.-
Pre-requisites: You must have BusyBox, SuperUser, C4droid, GCC for C4droid, and a Terminal Emulator installed. You also need a rooted device.
1. Open Terminal emulator and type "su" and press enter. A superuser screen will pop up and you need to click allow.
2. Type the following lines into the terminal (one by one):
cd /Removable/MicroSD/
mkdir Android
mkdir Android/data
cp -r /sdcard/Android/data/com.n0n3m4.droidc/ /Removable/MicroSD/Android/data/
su
mount -o remount,rw,exec -t vfat /dev/block/vold/179:9 /Removable/MicroSD
/system/xbin/mount -o bind /Removable/MicroSD/Android/data/com.n0n3m4.droidc/ /sdcard/Android/data/com.n0n3m4.droidc/
3. Change the default compiler in C4droid to G++ + bionic (Root required)
4. Done
Congratulations!
I guess it was mainly the 'noexec' switch of the mount -o {} that kept things from being executable.
I didn't notice that and am glad you posted the solution and I also wasn't really aware of the use of the "mount -o bind" for dual-pathing as well.
-- Thanks.

[Q] removing BT5 arm off xoom

Hey, I installed BT5 arm on the Motorola Xoom wifi and i would like to know how to completely remove it from my device. My device is rooted and i have tried to delete the whole BT5 file with astro file manager and absolute file manager but neither of them worked. I was wondering if anyone knows another way of doing it.
I tried deleting it with commands in terminal emulator but its a read only file. Wouldn't chmod help with that? If so how would i use it?
jimmothycharles said:
I tried deleting it with commands in terminal emulator but its a read only file. Wouldn't chmod help with that? If so how would i use it?
Click to expand...
Click to collapse
Go read the backtrack 5 thread. There is a link on how to remove it. That really should be the first thing you check before asking
ok thanks, ill do that the next time i have a problem
I couldn't find it. I think it might be a tiamat BT5 img and i have the remover tool but im not quite sure how to use it. I just flashed it like i would do with a rom but it says installation failed. what would i do to fix that?
jimmothycharles said:
I couldn't find it. I think it might be a tiamat BT5 img and i have the remover tool but im not quite sure how to use it. I just flashed it like i would do with a rom but it says installation failed. what would i do to fix that?
Click to expand...
Click to collapse
Common knowledge - system must be set to RW
Here is an alternate route- manually
How To:
ADB Shell Folder Removal - (we will use BT5 as an example)
++++++++++++++++++++++++++++
1. Connect Xoom to pc
2. Boot into recovery
3. Toggle to internal storage as /sdcard
4. mount /data
Enter adb shell via pc
(cd to file location) in this case BT5, is in the sdcard directory
Code:
Code:
cd /sdcard #
(once typed, you will be at.... /data/media prompt)
if after the above command and you are not at the /data/media prompt start over)
Code:
Code:
rm -r BT5
(BT5 is the stubborn Folder)
*Side note ... This works for any other stubborn folder that you want to delete as well...
USE AT YOU OWN RISK - MAKE SURE YOU DO A BACKUP FIRST
If this was helpful Hit The Thanks!
it didnt work it said that rm failed for BT5, permission denied
jimmothycharles said:
it didnt work it said that rm failed for BT5, permission denied
Click to expand...
Click to collapse
Come on now, lol Your device must be set to rw. Google can guide you.
Mjamocha said:
Come on now, lol Your device must be set to rw. Google can guide you.
Click to expand...
Click to collapse
ok well this is what i got when i tried to do that.
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
C:\Windows\System32>cd C:\Users\josh\Desktop\xoom files\BT5
C:\Users\josh\Desktop\xoom files\BT5>adb shell
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
[email protected]:/ # cd storage/sdcard0/0/0/0
cd storage/sdcard0/0/0/0
[email protected]:/storage/sdcard0/0/0/0 # ls
ls
Android
BT5
Box
DCIM
Download
Evernote
Pictures
SELog.txt
Video
airdroid
goodies
goomanager
tmp
[email protected]:/storage/sdcard0/0/0/0 # rm -r BT5
rm -r BT5
rm failed for BT5, Permission denied
255|[email protected]:/storage/sdcard0/0/0/0 # rm BT5
rm BT5
rm failed for BT5, Is a directory
255|[email protected]:/storage/sdcard0/0/0/0 # cd
cd
[email protected]:/data # exit
exit
C:\Users\josh\Desktop\xoom files\BT5>adb shell
[email protected]:/ # mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system
mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system
[email protected]:/ # cd storage/sdcard0/0/0/0
cd storage/sdcard0/0/0/0
[email protected]:/storage/sdcard0/0/0/0 # ls
ls
Android
BT5
Box
DCIM
Download
Evernote
Pictures
SELog.txt
Video
airdroid
goodies
goomanager
tmp
[email protected]:/storage/sdcard0/0/0/0 # rm -r BT5
rm -r BT5
rm failed for BT5, Permission denied
255|[email protected]:/storage/sdcard0/0/0/0 # rm -rBT5
rm -rBT5
rm failed for -rBT5, No such file or directory
255|[email protected]:/storage/sdcard0/0/0/0 # chmod 777 BT5
chmod 777 BT5
[email protected]:/storage/sdcard0/0/0/0 # rm -r BT5
rm -r BT5
rm failed for BT5, Permission denied
255|[email protected]:/storage/sdcard0/0/0/0 #
I looked up on google how to mount system rw and thats where [email protected]:/ # mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system
mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system came from. then i tried rm -r BT5 after that and it was still denied. so i tried to
do chmod 777 BT5 to give all permissions and then when i tried to remove it again it was still denied.
I looked up the permissions of the file and its set to rwxrwxr-x. so chmod apparently didn't work

Categories

Resources