Fixing app re-install/update issues - Hero CDMA Themes and Apps

Now that we have root access I was trying to figure out the cause of the "old apps keep reappearing after an update and restart bug."
From the looks of it it seems the /data/boot-cache directory is corrupt. I tried my experiment with Google Sky Map and got the following:
Code:
$ adb shell
$ su
# cd /data/boot-cache
# ls -al *stardroid*
-rw------- system system 3988 2009-10-17 18:36 AndroidManifest.xml
# rm -rf *stardroid*
rm failed for -rf, No such file or directory
# rmdir *stardroid*
rmdir failed for [email protected]@com.google.android.stardroid.apk, Directory not empty
# fsck
fsck: not found
Same thing happens with all the other apps that misbehave when updated.
Do we have any way of running fsck or some other file system repair utility to fix these issues?

Code:
# rm -rf *stardroid*
rm failed for -rf, No such file or directory
# rmdir *stardroid*
rmdir failed for [email protected]@com.google.android.stardroid.apk, Directory not empty
Do we have any way of running fsck or some other file system repair utility to fix these issues?
Click to expand...
Click to collapse
Or you could just empty the directory before you tried to remove it, since whatever 'rm' binary is provided apparently doesn't understand "-rf" and treated it as a filename.

posguy99 said:
Or you could just empty the directory before you tried to remove it, since whatever 'rf' binary is provided apparently doesn't understand "-rf" and treated it as a filename.
Click to expand...
Click to collapse
Seems it doesn't know -rf but works with -r. Let me see if this now fixes the issues.

Keep up the good work man I had this problem multiple times I think it bothered me more than not receiving sms or vvm.

The fix
That is it, you use -r not -rf. So the fix is as follows (I use Astro for getting the following information):
1) Use Astro and backup all your apps to your SD card.
2) The Astro Application Manager/Backup tool will list in red all the apps that it thinks are newer on the SD card than the phone thinks are installed.
3) For each of those apps select them and note the app installed name (first line, called "Name"). Usually com.xxx.xxx, etc.
4) Get a root shell to your phone (follow instructions elsewhere.)
5) cd /data/boot-cache
6) For all the names you generated in step 3 type
Code:
rm -r *<name>*
e.g. taking Google Sky Map as an example this would be
Code:
rm -r *com.google.android.stardroid*
7) Reboot your phone.
8) All apps should now appear in their latest, correct, version.

Google claims this problem is specific to the Hero and SenseUI. Does this cache folder exist on a normal Android build?

is there a chance someone can make an app that would automate this process?

does the issue come back after awhile?

goku14238 said:
does the issue come back after awhile?
Click to expand...
Click to collapse
Anytime you update an app you will see the issue for that app.

This works great. I used it to fix my Handcent which messed up after I upgraded today.
+1 on this. You guys are really killing this phone.

Related

Move All yourCaches to SD card at once.

I wrote a small script with help of stericson that will move all your caches to sd card. Right now, it will move caches for following apps;
1)Market
2)browser
3)street view
4)imeem music
5)tune wiki player
all these tutorials used from www.modmygphone.com, i just used all and wrote a script to make my job easier.
This script will make a folder called cache in your sd card, and 5 sub folder, for each apps.
Instructions:
copy the file to your sd card in home directory. make sure you have root.
go to terminal, and type in following commands
#mkdir /data/local/bin
#cp /sdcard/transfer.sh /data/local/bin
#chmod 0755 /data/local/bin/transfer.sh
#transfer.sh
it'll execute itself, if you get any error messages saying "bla bla bla" dir doesnt exist, that is because either you don't have that app installed or you have never used that app before and it doesnt have any cache to transfer.
Leave comments or suggestions. i will make maps work this weekend. i dnt have time right now.
http://rapidshare.com/files/184145725/transfer.sh
i am not responsible if it bricks your phone. I am pretty sure it wont though
thanks for this... btw can you add the steel cache also... will try this scrip as soon as i finish updating my pc.
robpet2 said:
thanks for this... btw can you add the steel cache also... will try this scrip as soon as i finish updating my pc.
Click to expand...
Click to collapse
yes will add more, but those are all for the weekend.
take your time bro...
I probably wont use it my self till after chrome is added.... but the noobs need this bad... lol
Worked. thank you.
Can you upload it somwhere else? I cannot access rapidshare at the moment.
Thanks
Hey Birba, copy and paste the below into notepad, save as transfer.sh
chmod 0777 /data/local/bin/transfer.sh
mkdir /sdcard/cache
rm -R /data/data/com.android.vending/cache
mkdir /sdcard/cache/marketCache
ln -s /sdcard/cache/marketCache /data/data/com.android.vending/cache
rm -R /data/data/com.android.browser/cache/webviewCache
mkdir /sdcard/cache/webviewCache
ln -s /sdcard/cache/webviewCache /data/data/com.android.browser/cache/webviewCache
rm -R /data/data/com.google.android.street/cache
mkdir /sdcard/cache/streetCache
ln -s /sdcard/cache/streetCache /data/data/com.google.android.street/cache
rm -R /data/data/com.imeem.gynoid/cache
mkdir /sdcard/cache/imeemCache
ln -s /sdcard/cache/imeemCache /data/data/com.imeem.gynoid/cache
rm -R /data/data/com.tunewiki.lyricplayer.android/cache/webviewCache
mkdir /sdcard/cache/tunewikiCache
ln -s /sdcard/cache/tunewikiCache /data/data/com.tunewiki.lyricplayer.android/cache/webviewCache
Oh and thank you for this necro, much appreciated for those of us who get hand cramps typing out all these commands on the G1 keyboard
Doesn't it seem like it would be a good idea to copy the cache over before you delete it
I'm a bit of linux noob.. but perhaps instead of deleting you could change it to mv and then you would not need to make the directory on the SD card either
so
rm -R /data/data/com.android.vending/cache
mkdir /sdcard/cache/marketCache
ln -s /sdcard/cache/marketCache /data/data/com.android.vending/cache
would become
mv /data/data/com.android.vending/cache /sdcard/cache/marketCache
ln -s /sdcard/cache/marketCache /data/data/com.android.vending/cache
Sd card myheim!!!
OK please help i have searched all over. I have 2 Questions & Requests:
1. How do I install a script file? I know it automaticlly changes the Registry of the android OS or the Internal/FileSystem whateva its called but how to i install it??? Please help & Be detailed.
2. This is the big one. If a script file does automaticlly change the Internal file system (Android Registry) without using the Abd Shell. Can u please make the upload the script files to "INSTALL & RUN APPS FROM THE SD CARD" its been very difficult using the "adb shell" on my desktop.
Ive tried everything. I even tried to use the "ASTRO" file browser to modify the correct files but evenwith root it wont allow you to modify or switch files.
PLease Help. My SD Card is already perfectly partioned and ready to go.
Thanks, that was an excellent post.
For steel, you can probably add this in the script file:
rm -r /data/data/com.kolbysoft.steel/cache/webviewCache
mkdir /sdcard/cache/steelCache
ln -s /sdcard/cache/steelCache /data/data/com.kolbysoft.steel/cache/webviewCache
-Gus
necromancerr said:
if you get any error messages saying "bla bla bla" dir doesnt exist, that is because either you don't have that app installed or you have never used that app before and it doesnt have any cache to transfer.
Click to expand...
Click to collapse
Would this error cause this to not work properly? In my case, I don't have imeem or tunewiki installed so I don't need these cache's moved. Would this cause a problem?
Also, how do you create a .sh file? I tried deleting these 2 commands myself but I couldn't find a .sh option in the save as drop down menu
Beast84 said:
I don't have imeem or tunewiki installed so I don't need these cache's moved. Would this cause a problem?
Click to expand...
Click to collapse
Nothing bad will happen because their caches won't be moved in the first place.
Beast84 said:
Also, how do you create a .sh file? I tried deleting these 2 commands myself but I couldn't find a .sh option in the save as drop down menu
Click to expand...
Click to collapse
Save as transfer.txt, then rename to transfer.sh
unknown.soul said:
Nothing bad will happen because their caches won't be moved in the first place.
Click to expand...
Click to collapse
Ok so I won't constantly have to dismiss errors on the phone due to this? Also does the script have to stay on the root of my SD or can I delete it after I perform the commands?
unknown.soul said:
Save as transfer.txt, then rename to transfer.sh
Click to expand...
Click to collapse
I tried that but it didn't change the file extension. The original I downloaded says sh file. The one I made still says text document
betawind said:
Hey Birba, copy and paste the below into notepad, save as transfer.sh
chmod 0777 /data/local/bin/transfer.sh
mkdir /sdcard/cache
rm -R /data/data/com.android.vending/cache
mkdir /sdcard/cache/marketCache
ln -s /sdcard/cache/marketCache /data/data/com.android.vending/cache
rm -R /data/data/com.android.browser/cache/webviewCache
mkdir /sdcard/cache/webviewCache
ln -s /sdcard/cache/webviewCache /data/data/com.android.browser/cache/webviewCache
rm -R /data/data/com.google.android.street/cache
mkdir /sdcard/cache/streetCache
ln -s /sdcard/cache/streetCache /data/data/com.google.android.street/cache
rm -R /data/data/com.imeem.gynoid/cache
mkdir /sdcard/cache/imeemCache
ln -s /sdcard/cache/imeemCache /data/data/com.imeem.gynoid/cache
rm -R /data/data/com.tunewiki.lyricplayer.android/cache/webviewCache
mkdir /sdcard/cache/tunewikiCache
ln -s /sdcard/cache/tunewikiCache /data/data/com.tunewiki.lyricplayer.android/cache/webviewCache
Oh and thank you for this necro, much appreciated for those of us who get hand cramps typing out all these commands on the G1 keyboard
Click to expand...
Click to collapse
This will not work because when u save the file it has to be in UNIX format. Android being based on linux needs this format to work. U either have to be in linux to save this file. If in windows u have to use a program called textpad. it is just an evalutation version. buy if you want.
necromancerr said:
This will not work because when u save the file it has to be in UNIX format.
Click to expand...
Click to collapse
Thanks for clearing that up, I actually haven't had the chance to test it out.
Beast84 said:
Ok so I won't constantly have to dismiss errors on the phone due to this? Also does the script have to stay on the root of my SD or can I delete it after I perform the commands?
I tried that but it didn't change the file extension. The original I downloaded says sh file. The one I made still says text document
Click to expand...
Click to collapse
U need to be in linux to save file in sh format. More than saving the file insh format they need to be in unix format. Use either linux or use textpad in windows. It'll work
Beast84 said:
Would this error cause this to not work properly? In my case, I don't have imeem or tunewiki installed so I don't need these cache's moved. Would this cause a problem?
Also, how do you create a .sh file? I tried deleting these 2 commands myself but I couldn't find a .sh option in the save as drop down menu
Click to expand...
Click to collapse
Don't worry abot that. The script will still work. If u ever get imeem, then u'l need to run the script again. Then it'll say that some files and folders already exists but u'll be fine
necromancerr said:
This will not work because when u save the file it has to be in UNIX format. Android being based on linux needs this format to work. U either have to be in linux to save this file. If in windows u have to use a program called textpad. Its a free program.
Click to expand...
Click to collapse
textpad FTW! It is an application that I use ALL the time.
BUT it is not free. It does has an unlimited evaluation, with a very non-intrusive registration reminder thingy. If you use Textpad as much as I do, please pay for it, and support the authors, so we can have more textpad goodness in the future
To save a file in unix format with textpad, go to file->save as, and then there is a "File format" field down at the bottom, where you can choose between PC, Unix and Mac.
JesusFreke said:
textpad FTW! It is an application that I use ALL the time.
BUT it is not free. It does has an unlimited evaluation, with a very non-intrusive registration reminder thingy. If you use Textpad as much as I do, please pay for it, and support the authors, so we can have more textpad goodness in the future
To save a file in unix format with textpad, go to file->save as, and then there is a "File format" field down at the bottom, where you can choose between PC, Unix and Mac.
Click to expand...
Click to collapse
thx for clarification. i dont use that program alot. so i didnt know that. thank you very much.
JesusFreke said:
textpad FTW! It is an application that I use ALL the time.
BUT it is not free. It does has an unlimited evaluation, with a very non-intrusive registration reminder thingy. If you use Textpad as much as I do, please pay for it, and support the authors, so we can have more textpad goodness in the future
To save a file in unix format with textpad, go to file->save as, and then there is a "File format" field down at the bottom, where you can choose between PC, Unix and Mac.
Click to expand...
Click to collapse
And once I change this to Unix, how do I save it as a .sh file? I still don't see the option anywhere. And renaming the file still doesn't change it
EDIT: I think I got it. I had to go into the preferences & manually add .sh as an extension. Is that how you did it JF?

Few EXt2 questions

Is it possible to veiw the files in the EXt2 partition from our G1 terminal? If so, can we also delete files? If so, someone explain how, thanks.
asuming is mounted on /system/sd
just
cd /system/sd
ls -la /system/sd
to list the files
is their a way to erase those files
There are commands for deleting files on Android. Look up the Linux Command prompt commands for performing those functions.
If you've rooted your phone and don't know the commands already, you haven't been paying attention to the instructions.
ls = directory listing
cp = copy
mv = move/rename
rm = remove
Those are the very basics. Remember that Unix-like operating systems are case-sensitive and file.txt is different from File.txt or file.TXT.
If you're using wildcards to delete everything, take a precaution and use the dot-slash. It could save you a lot of trouble by ensuring you're only deleting files in the current working directory. To remove all text files in a directory, for example, you'd type rm ./*.txt
god, i hate how rude people are. I grew up with DOS, so dir, and del come more naturally to me than linux commands. So just ease up on the ppl that don't know linux. I didn't know linux til i started to IRC and wanted to run an eggdrop bot. Not like everyone has irc'd or compiled, or whatever. Heck, it has been so long now, I could not write an irc script or egg addon, and I think i was the first to develop some scripts in IRC 20 years ago. So all I can say is chill.
Shaggy
??huh??
whats the beef all about?
you can google the command and linux and probably have a ton of sites that list and explain the usage and stuff like that for *nix commands unix is a very old OS linus torvalds just woke up 1 day at age 15 or sumthin and said im gonna make a unix kernal that runs on my intel based pc and then instead of selling it and making a fortune I'll give it away and still make a fortune.
LINUS is the greatest man of our time, when the other OS was charging BIG $ to run Apache web servers in the .com boom (even more so now) linux was FREE and gave better throughput on the same hardware
Now if you want a pretty box booklet and packaging as you have become accustomed they have them to, some just feel better if they pay for it, free must not be as good as the one that costs right?
why did I bother just rambling, please ignore the babbling lunatic in the corner he is harmless
bhang
beartard said:
If you've rooted your phone and don't know the commands already, you haven't been paying attention to the instructions.
ls = directory listing
cp = copy
mv = move/rename
rm = remove
Those are the very basics. Remember that Unix-like operating systems are case-sensitive and file.txt is different from File.txt or file.TXT.
If you're using wildcards to delete everything, take a precaution and use the dot-slash. It could save you a lot of trouble by ensuring you're only deleting files in the current working directory. To remove all text files in a directory, for example, you'd type rm ./*.txt
Click to expand...
Click to collapse
if you dontknow how to be polite to the noobz then dont say anything at all. let someone else answer their questions.
Hi Beartard,
Thanks for the info.
This site has such a wealth of information, that it can be overwhelming to many members.
Can you tell me how to copy my apps-private from my ext2 partition to my sd card partition so I can back them up?
Thanks
beartard said:
If you've rooted your phone and don't know the commands already, you haven't been paying attention to the instructions.
ls = directory listing
cp = copy
mv = move/rename
rm = remove
Those are the very basics. Remember that Unix-like operating systems are case-sensitive and file.txt is different from File.txt or file.TXT.
If you're using wildcards to delete everything, take a precaution and use the dot-slash. It could save you a lot of trouble by ensuring you're only deleting files in the current working directory. To remove all text files in a directory, for example, you'd type rm ./*.txt
Click to expand...
Click to collapse
uh you wan't to copy your "app-private" folder as a backup in to yoru sdcard correct? well try this
busybox cp -a /system/sd/app-private /sdcard/app-private
if it don't allows you to copy do this command to re mount the system as read-write
mount -oremount,rw /dev/block/mtdblock3 /system
Hi Nitro .
I tried it both ways and it says operation not permitted.
-------------------
Update:
But wait, I connected my phone to the computer and the app-private is copied to the sdcard.
Your procedure worked!
I erased the folder that was copied to test it again.
Then I used just this set of commands and it worked again:
busybox cp -a /system/sd/app-private /sdcard/app-private
So you still get the same error, but it works.
Thanks alot Nitro!!!
Nitro212 said:
uh you wan't to copy your "app-private" folder as a backup in to yoru sdcard correct? well try this
busybox cp -a /system/sd/app-private /sdcard/app-private
if it don't allows you to copy do this command to re mount the system as read-write
mount -oremount,rw /dev/block/mtdblock3 /system
Click to expand...
Click to collapse
u tried it as root? what error u got?
well glad it worked.
Hi,
The error says:
"cannot preserve ownership of ... cannot preserve permissions of ... operation not permitted"
for every file it tries to transfer.
But then when you look in your sdcard the app-private is there.
So it is a false error.
Thanks again.
Nitro212 said:
uh you wan't to copy your "app-private" folder as a backup in to yoru sdcard correct? well try this
busybox cp -a /system/sd/app-private /sdcard/app-private
if it don't allows you to copy do this command to re mount the system as read-write
mount -oremount,rw /dev/block/mtdblock3 /system
Click to expand...
Click to collapse
It's not working for me...
My error is this:
cp: cannot stat '/system/sd/app-private': No such file or directory
Hi,
Use terminal emulator jf 1.41 or better
type su enter
then the busybox commands
Connect your phone to your computer and look on your memory card.
app-private is there
Proxin said:
It's not working for me...
My error is this:
cp: cannot stat '/system/sd/app-private': No such file or directory
Click to expand...
Click to collapse
bestwebs said:
Hi,
Use terminal emulator jf 1.41 or better
type su enter
then the busybox commands
Connect your phone to your computer and look on your memory card.
app-private is there
Click to expand...
Click to collapse
hey guys need some help here i have the same problem, (as far as the error saying 'no such file or dir') and i tried your suggestion about typing su first then the busybox commands.
i have the most current terminal emulator, unfortunately i still continue to get the same error every time i try to run the busybox commands. it just simply say 'no such file or directory"
you guys have any suggestions for me to try ?
any help would be great.
the error i get is "cannot preserve permissions of" i think that error is not something harmful im n o *nix expert but is just saying it wont save the permision of that folder i think...
Code:
# mkdir /sdcard/bk
mkdir /sdcard/bk
# busybox cp -rf /data/app-private/ /sdcard/bk
busybox cp -rf /data/app-private/ /sdcard/bk
cp: cannot preserve permissions of '/sdcard/bk/app-private': Operation not permi
tted
# ls /sdcard/bk
ls /sdcard/bk
app-private
thats what i did.. worked for me.. moved the app-private in to a folder named bk inside the sdcard
Hi,
We are assuming that you have already moved your apps and caches to the memory in a ext2 partition, correct?
Otherwise this will not work.
I 1st followed all the instructions in this post:
http://forum.xda-developers.com/showthread.php?t=468959
All this has to be done 1st including the 2 step 13's
onikus said:
hey guys need some help here i have the same problem, (as far as the error saying 'no such file or dir') and i tried your suggestion about typing su first then the busybox commands.
i have the most current terminal emulator, unfortunately i still continue to get the same error every time i try to run the busybox commands. it just simply say 'no such file or directory"
you guys have any suggestions for me to try ?
any help would be great.
Click to expand...
Click to collapse
nitro all i can say is thank you very much, i was looking through a 15 yr old unix book looking up commands, and it's just been so damn long ago i couldn't put it together.
thanks a ton. i'm sure you saved me at least a few hours.
@bestwebs ya i have done everything else including moving things to the ext2 partition i was just stuck on a few comands here and there.
but again thanks to both of you, and i'm all setup up now.
Hi,
Nitro is a real blast!
Glad it's working.

GScript * Easily launch/save shell scripts from within Android UI * - Useful scripts

As some of you might have seen or even used, I have created an application that allows executing of shell scripts from within Android and it will even allow you to create a direct shortcut on your homescreen to a script ( for example to start Debian or reboot your phone ).
I know a lot of developers ( I also didnt at first ) don't look in the "applications and games" section, but i thought it was the best place to post the actual application.
I will keep updating that post with the actual application process/updates, but ive created this thread to see if people ( I think most of the actual linux experienced people are in this section ) would like to share their linux knowledge to other peoples uploading useful .sh files ( for backing up stuff etc etc ), so that less experienced can just load them in to my application, without risking all typos.
So if you have a nice script that is useful please upload it so we can all benefit from it.
The actual application can be found here:
http://forum.xda-developers.com/showthread.php?t=486486
Please dont ask question or place suggestions about the application in this thread, but use the one Ive created for the actual development and keep this thread for scripts only.
Regards,
Rob
I was thinking about starting a thread just like this one-- for everyone to post up their scripts. Don't know why I didn't. Anyway, I asked the question awhile back how to create a script for remounting the file system as read/write, which led to my discovery of GScript. In any case, here's what I was told to use:
mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
Click to expand...
Click to collapse
Be advised that I have no idea if this actually works or not. Perhaps someone could test and post the results?
tubaking182 said:
that takes to long, i find it easier when i am using the comp to just click my terminal(which is almost always up and running) and type reboot_phone(i have a script on the computer that contains the comand adb shell reboot) and also another for rebooting into recovery and one more for bootloader
i guess i'm lazy but if i can find a way to automate anything i do in life i go ahead and do it. i have a script for nearly everything i do to my phone.
on a more on-topic note, i was hoping someone would post the command to reboot and apply an update.zip, i know it is in the JF autoupdater, but i just want to be able to hit a shortcut on my home screen to apply themes as well.
Click to expand...
Click to collapse
Code:
su
echo "boot-recovery
--update_package=/sdcard/update.zip" > /cache/recovery/command
reboot recovery
Untested, you might have to play around with the /sdcard/update.zip to get it to load properly, I'm not sure exactly how you put the path in there. This will, for sure, reboot it into recovery mode, and tries to automatically apply an update.zip.
Edit:
--update_package=sdcard:update.zip
Should do it. I hope.
Here's a script I built to make a rom into the "lite" version needed by many of the themes. It's not much but it's my first one.
Code:
mount -o rw,remount -t yaffs2, /dev/block/mtdblock /system
rm -r /system/media/audio/ringtones
rm -r /system/media/audio/notifications
reboot
Gary13579 said:
Code:
su
echo "boot-recovery
--update_package=/sdcard/update.zip" > /cache/recovery/command
reboot recovery
Untested, you might have to play around with the /sdcard/update.zip to get it to load properly, I'm not sure exactly how you put the path in there. This will, for sure, reboot it into recovery mode, and tries to automatically apply an update.zip.
Edit:
--update_package=sdcard:update.zip
Should do it. I hope.
Click to expand...
Click to collapse
You don't need the "su" at the beginning. Gscript has a checkbox to indicate if SU is needed and will add it on it's own. Putting it in causes the script to hang.
Anyway to make it close the script window when the script completes? Right now I have it doing an app backup and echoing DONE. But I'd like to automate the process if possible.
Exit doesn't seem to work.
Gary13579 said:
Code:
su
echo "boot-recovery
--update_package=/sdcard/update.zip" > /cache/recovery/command
reboot recovery
Untested, you might have to play around with the /sdcard/update.zip to get it to load properly, I'm not sure exactly how you put the path in there. This will, for sure, reboot it into recovery mode, and tries to automatically apply an update.zip.
Edit:
--update_package=sdcard:update.zip
Should do it. I hope.
Click to expand...
Click to collapse
It does reboot into recovery mode but I get the error "Can't mount /sdcard/Update.zip Installation aborted."
I'm able to just apply the update by pressing Alt+S but would be nice if it was all automated.
wpbcubsfan said:
It does reboot into recovery mode but I get the error "Can't mount /sdcard/Update.zip Installation aborted."
I'm able to just apply the update by pressing Alt+S but would be nice if it was all automated.
Click to expand...
Click to collapse
Same result for me.
Got it!!!
ok!
used this as script to change theme
cp /sdcard/themes/aero/update.zip /sdcard/
echo "boot-recovery
--update_package=SDCARD:update.zip" > /cache/recovery/command
reboot recovery
Needed to use caps for SDCARD!!!
found it poking around the recovery.c file
better still no need to copy over update.zip in root Just in case of emergency.
Code:
echo "boot-recovery
--update_package=SDCARD:themes/aero/update.zip" > /cache/recovery/command
reboot recovery
beagz said:
ok!
used this as script to change theme
cp /sdcard/themes/aero/update.zip /sdcard/
echo "boot-recovery
--update_package=SDCARD:update.zip" > /cache/recovery/command
reboot recovery
Needed to use caps for SDCARD!!!
found it poking around the recovery.c file
better still no need to copy over update.zip in root Just in case of emergency.
Code:
echo "boot-recovery
--update_package=SDCARD:themes/aero/update.zip" > /cache/recovery/command
reboot recovery
Click to expand...
Click to collapse
Dude, you rock! Thanks!
Clear Caches
I use this script to clear almost all of the app caches
Code:
#Deletes all caches in one fell swoop :]
#Locations of the caches were taken from various sites, including xda and androidcommunity.com
#written by indiekid97
#Deletes browser cache
rm -R /data/data/com.android.browser/cache/webviewCache
#Deletes Maps cache
rm -R /data/data/com.google.android.apps.maps/files
#Deletes StreetView
rm -R /data/data/com.google.android.street/cache
#Deletes Market cache
rm -R /data/data/com.android.vending/cache
#Deletes Tunewiki cache
rm -R /data/data/com.tunewiki.lyricplayer.android/cache/webviewCache
#Deletes Myspace cache
rm -R /data/data/com.myspace.android/files
#Deletes GMail cache
rm -R /data/data/com.google.android.gm/cache/webviewCache
Copy from /system/app
I get get the phone to copy from data app and private however, when I try to copy apps from /system/app it does nothing.
Mod_edit
any ideas?
I also tried to cd in the script to navigate to the data and still it only runs the first two copy commands.
removed copyright procedureYou can not display procedures concerning the two app folders being transferred to Fat32 portion of card.
a1t said:
I get get the phone to copy from data app and private however, when I try to copy apps from /system/app it does nothing.
Mod_edit
any ideas?
I also tried to cd in the script to navigate to the data and still it only runs the first two copy commands.
Click to expand...
Click to collapse
Woops
Sorry dudes. If we can still talk about any possibilities, I'm down. if not, oh well. now on eggshells
looking for script to move a specific directory on /system to a location on my sdcard
if anyone is interested PM me.
What would the script be to disable USB mounting to the computer? It's a hassle for me to have to un-plug the USB cable when I want to unmount, it would be very beneficial to have a quick press of an icon on the Home screen to do this
*Edit: after tinkering around with it for a bit, I see that this cannot be done- I tried mounting the SD card to computer and then running a script, *any* script will not load because GScript requires /sdcard/gscript_tmp.sh to be accessable in order to run a script.
Mounting to computer and then running a script from GScript simply shows an error:
Code:
Error:
/sdcard/gscript_tmp.sh
SO, in order for it to work, GScript would probably have to be configured to search for the script elsewhere to load while the SD card is mounted.
Here is a small script to back up current system sounds to the SD card, probably most useful if you do this prior to using the Make Lite script:
Code:
cp -r /system/media/audio /sdcard/audio
If there are any errors please let me know.
Once they're backed up, you can merge the folder into /sdcard/media for proper use with Ringdroid.
I'm not sure whether to use cp -r or cp -a, so I will stick with -r for now and see if anyone has any other suggestion.
quick question....
where can i find out what the "flags" mean.
-a
-t
and so on.
Mikey1022 said:
quick question....
where can i find out what the "flags" mean.
-a
-t
and so on.
Click to expand...
Click to collapse
I found this link useful to your question, might want to scroll down a bit to see the most direct answer to what you were wondering:
http://www.freeos.com/articles/4414/
Hope that helps
a start
http://www.computerhope.com/unix/ucp.htm
a1t said:
http://www.computerhope.com/unix/ucp.htm
Click to expand...
Click to collapse
Proxin said:
I found this link useful to your question, might want to scroll down a bit to see the most direct answer to what you were wondering:
http://www.freeos.com/articles/4414/
Hope that helps
Click to expand...
Click to collapse
Thank you to both of you

Apps-to-SD in Recovery Terminal Tutorial(includes cache and dalvik-cache)

Alright, I've been posting this all over trying to help people figure out how to do this and figured it's time to make a dedicated thread. If at any point you get an error DON'T PROCEED. See if I referenced the error you're getting and, if so, do what I suggested. If not, post your error here and I'll try to get back to you ASAP.
NOTE: This can now also be done through my appstoSD app posted on this forum!!!! It will do everything for you.
This tutorial assumes you have:
A: A micro-sd card with 2 partitions, the first must be FAT32 and the second must be ext2.
B: Your phone must have one of the apps-to-sd ROM's installed.
C: Busybox installed into the /system/xbin directory. For steps on this please reference Darkrift's thread.
Before we start, let's make sure your phone is set up to handle this. Open up the terminal emulator app(available in the market) and type:
Code:
su
busybox df -h
If /system/sd doesn't appear, something is wrong. Either your sd card isn't partitioned correctly or your phone has a ROM that doesn't have apps to sd enabled. If /system/sd does show up then you're set and can start the tutorial
NOTE: Moving the cache is highly unstable and works for some people but not for most. I don't recommend trying unless you have a good idea of how to get your phone back to a usable state if it starts boot looping.
Now, for the first step you need to copy all the apps over to the sd card. To do this type(still in the terminal emulator)(The third and fourth lines are for cache to sd only):
Code:
busybox cp -a /data/app /system/sd/
busybox cp -a /data/app-private /system/sd/
busybox cp -a /data/dalvik-cache /system/sd/
busybox cp -a /data/data /system/sd/
exit
exit
Once the terminal emulator app closes, power off your phone. Then, turn it on in recovery mode by holding down the home button and then pressing the power button. Continue holding the home button until the "T-Mobile G1" icon goes away and a menu comes up. Then press Alt-x to go to recovery terminal. Press enter and a prompt should come up with a "#". Now type(If you only want your apps on your sd card and not the caches, skip steps 6-9)
Code:
mount data
rm -rf /data/app
ln -s /system/sd/app /data/app
rm -rf /data/app-private
ln -s /system/sd/app-private /data/app-private
rm -rf /data/data
ln -s /system/sd/data /data/data
rm -rf /data/dalvik-cache
ln -s /system/sd/dalvik-cache /data/dalvik-cache
reboot
And... you're all set! Your phone might take a while at the android screen since it has to populate the apps tray. If it lasts >5-10 minutes then something likely went wrong. Make sure you did all the steps correctly and if you did try the steps in the recovery terminal section of this tutorial again. If it still doesn't work, post here and we'll try to get it sorted out. That aside, enjoy having your apps on SD card and the permanent 72-73MB available!
EDIT: forgot the app-private directory. Thanks, LucidREM!!!
Maximus is the man.
[email protected] said:
Now, for the first step you need to copy all the apps over to the sd card. To do this type(still in the terminal emulator)(The second and third lines are for cache to sd only):
Code:
busybox cp -a /data/app /system/sd/
busybox cp -a /data/dalvik-cache /system/sd/
busybox cp -a /data/data /system/sd/
exit
exit
Once the terminal emulator app closes, power off your phone. Then, turn it on in recovery mode by holding down the home button and then pressing the power button. Continue holding the home button until the "T-Mobile G1" icon goes away and a menu comes up. Then press Alt-x to go to recovery terminal. Press enter and a prompt should come up with a "#". Now type(If you only want your apps on your sd card and not the caches, skip steps 4-7)
Code:
mount data
rm -rf /data/app
ln -s /system/sd/app /data/app
rm -rf /data/data
ln -s /system/sd/data /data/data
rm -rf /data/dalvik-cache
ln -s /system/sd/dalvik-cache /data/dalvik-cache
reboot
Click to expand...
Click to collapse
i see a missing step here .. what about /data/app-private
LucidREM said:
i see a missing step here .. what about /data/app-private
Click to expand...
Click to collapse
RIGHT! I keep forgetting that one cause that folder pisses me off and I move all the apps there to the normal app folder lol. Will fix in 5, 4, 3...
EDIT: 2,1,0
cp: cannot stat '/data/davlik-cache': no such file or directory
whats up?
NEVERMIND. i need to go back to spelling class.
I'm sure its been asked and answered but I'll ask again! I understand it can take quite a few minutes to boot but is this every time you reboot or just the first time?
Thanks
DynaMight said:
I'm sure its been asked and answered but I'll ask again! I understand it can take quite a few minutes to boot but is this every time you reboot or just the first time?
Thanks
Click to expand...
Click to collapse
just the first time. its moving all the apps and cache from phone to sd card during that first reboot.
won't that slow down the phone even more?
the first time takes much longer. Subsequent reboots are of normal duration, comparable to the standard build.
Smokuevo said:
won't that slow down the phone even more?
Click to expand...
Click to collapse
if you use a class six sdcard, the apps will load faster. i believe that class 6 flash media is faster than the phones flash.
stogchris81 said:
if you use a class six sdcard, the apps will load faster. i believe that class 6 flash media is faster than the phones flash.
Click to expand...
Click to collapse
Pushing (writing) a 2MB file through adp push seems a bit faster to the SDCARD compared to the internal memory.
-> rough average for SDCARD : 1200 KB/s
-> rough average for system storage : 1000 KB/s
Regarding pulling (reading), internal seems faster :
-> rough average for SDCARD : 1247 KB/s
-> rough average for system storage : 1250 KB/s
These tests are everything but serious.. This is using the famous SanDisk 8GB Mobile Ultra (class 6).
To conclude I'd say that speed is almost the same, sometimes a bit faster for SDCARD.
i have one question
i tried to read through the thread but it was waay to large and long
if u do install apps to the sd card
when u install a newer rom on it does that mean the apps are automatically installed once again? i would like to do this because haykuro's roms are released once a week and i dont like reinstalling apps over and over again...
bigballa said:
i have one question
i tried to read through the thread but it was waay to large and long
if u do install apps to the sd card
when u install a newer rom on it does that mean the apps are automatically installed once again? i would like to do this because haykuro's roms are released once a week and i dont like reinstalling apps over and over again...
Click to expand...
Click to collapse
Unfortunately the answer is "sorta". The apps will still be on your sd card in the same places you put them. BUT all the symlinks will be gone so it'll look like they all dissapeared. You'll have to repeat the recovery terminal part of the tutorial, but all the stuff before it will be unnecessary.
i keep getting /system/sd/app is not a directory but when i run mkdir /system/sd/app it says that the file already exists.
the one time i got adb to work i did the steps through it to get apps to sd but the i had to wipe my phone. do i have to do the steps in the first post or recreate the symlinks?
wizern23 said:
i keep getting /system/sd/app is not a directory but when i run mkdir /system/sd/app it says that the file already exists.
the one time i got adb to work i did the steps through it to get apps to sd but the i had to wipe my phone. do i have to do the steps in the first post or recreate the symlinks?
Click to expand...
Click to collapse
In terminal emulator do this:
Code:
su
cd /system/sd
ls -l[CODE]
And put what it says on the line with "app" in it here. If it says "app ->" and has something after the arrow(my guess would be /data/app) then you put the symlink the wrong way. Make sure you do ln -s /system/sd/app /data/app, not the other way around. Let me know what your results are
[email protected] said:
In terminal emulator do this:
Code:
su
cd /system/sd
ls -l[CODE]
And put what it says on the line with "app" in it here. If it says "app ->" and has something after the arrow(my guess would be /data/app) then you put the symlink the wrong way. Make sure you do ln -s /system/sd/app /data/app, not the other way around. Let me know what your results are[/QUOTE]
huh? can you repeat that because i didnt understand what you were saying
im at the first step anyway. and thats when it says /system/sd/app is not a directory. my other question is is do i have to use
rm -rf /data/app
rm -rf /data/dalvik-cache
rm -rf /data/app-private
to re-establish the symlinks or did the steps through adb i used get erased when i wiped it.
Click to expand...
Click to collapse
[email protected] said:
In terminal emulator do this:
Code:
su
cd /system/sd
ls -l[CODE]
And put what it says on the line with "app" in it here. If it says "app ->" and has something after the arrow(my guess would be /data/app) then you put the symlink the wrong way. Make sure you do ln -s /system/sd/app /data/app, not the other way around. Let me know what your results are[/QUOTE]
i had the same problem. it said /system/sd/app is not a directory even though it already existed. when i used your code above this was my result:
drwx----- root root 2009-04-12 20:11 lost+found
-rw-r--r-- system system 29303 2009-04-11 11:56 app
Click to expand...
Click to collapse
wizern23 said:
huh? can you repeat that because i didnt understand what you were saying
im at the first step anyway. and thats when it says /system/sd/app is not a directory. my other question is is do i have to use
rm -rf /data/app
rm -rf /data/dalvik-cache
rm -rf /data/app-private
to re-establish the symlinks or did the steps through adb i used get erased when i wiped it.
Click to expand...
Click to collapse
Umm I wouldn't proceed cause if /system/sd/app isn't a directory then you're gonna have lots of problems. I need to know what it says after you type
Code:
su
cd /system/sd/
ln -s
Specifically, there'll be a line of output that has the word "app" towards/at the end. I need to know what's in that line. If the line doesn't start with a 'd' then app isn't a directory and something happened and you need to remove /system/sd/app by typing this in the terminal emulator:
Code:
su
busybox rm -rf /system/sd/app
and then restart the process from the beginning.
it says that /system/sd/app is not a directory but when i do mkdir /system/sd/app it says the file already exists.
the line with app in it says
-rw-r--r-- system system 29303 2009-04-14 17:27 app.
okay removing that made it work.
[edit] Thank you so much. it finally worked. i now have 73mb free on the phone.
glad I could help. On a side note Apps to SD app is now live

[q] [android] how to DELETE AN ENTIRE FOLDER AT A TIME INSIDE THE /SYSTEM from ADB

Ok. I just wanted to enter and understand the ANDROID FILE SYSTEM. For sometime i was trying to do things like copy/paste/delete to the system folders.
Im aware of what im doing. I shouldn't delete the original contents of /system partition unless im experimenting with it.
OK. My problem is , I WANTED TO DELETE AN ENTIRE FOLDER AT A TIME INSIDE THE /SYSTEM PARTITION THROUGH ADB. Donot recommend root explorer because while experimenting it is useless when the device won't boot. Even though I can mount the /system through recovery and play with adb. But what all i want is deleting the entire folder (with its contents) at a time. Just because it takes lot time to delete each and every file inside it.
I tried the shell "rm" command but it works only for individual files. So, pls help. Much appreciated and thanks in advance.
rm -rf /foldername (e.g rm -rf /system/testfolder will remove 'testfolder' and everything inside)
-r = recursive -f = force
if rm -rf complains about the -rf part, run: busybox rm -rf /foldername
** NOTE: there is no warning to remove the entire folder, once you hit enter it's gone. **
manual page for RM: http://unixhelp.ed.ac.uk/CGI/man-cgi?rm (one of many copies of this page)
*-f may be optional, but I'm always sure in what I am deleting.
sirmx said:
rm -rf /foldername (e.g rm -rf /system/testfolder will remove 'testfolder' and everything inside)
-r = recursive -f = force
if rm -rf complains about the -rf part, run: busybox rm -rf /foldername
** NOTE: there is no warning to remove the entire folder, once you hit enter it's gone. **
manual page for RM: http://unixhelp.ed.ac.uk/CGI/man-cgi?rm (one of many copies of this page)
*-f may be optional, but I'm always sure in what I am deleting.
Click to expand...
Click to collapse
Thank you very much. Will try that when I get back to my pc ASAP.
EDIT: Worked perfectly as said. No complaining about -rf part also. Thanks again for saving my time really.
Sent from my HTC Wildfire using XDA App
bharatgaddameedi said:
Thank you very much. Will try that when I get back to my pc ASAP.
EDIT: Worked perfectly as said. No complaining about -rf part also. Thanks again for saving my time really.
Sent from my HTC Wildfire using XDA App
Click to expand...
Click to collapse
Dude, he put some time into this post hit the THANKS button!!
Turducken said:
Dude, he put some time into this post hit the THANKS button!!
Click to expand...
Click to collapse
OOPS.. just a mistake (accessed the thread from phone only).. Thank u too.
Ok. Another thing....
--- is it possible to delete all the files inside the folder without deleting the actual folder itself. Ok this is not much necessary..
--- is it possible to access sd-ext partition through adb. And is it possible to push and pull files into that for general storage / other things.
I have add busybox to cmd but it still say error device or resource busy, can't delete system folder even use Root Explorer mounted R/W. Only can wipe with TWRP. <-Bad English

Categories

Resources