When a system app is updated seems to store the old version on the systems folder and the new version on the SD card. Is there a way to merge the new version onto the system? Once merged there is only the system version like it was when the ROM first was installed. I thought I did this once before but don't remember how or what I used to do it.
you would need to remove the app from the system partition and then install the newer one in its place, if it wasnt this way when your phone got corrupt by a bad update and you had to do a factory reset then you would be stuck with the same corrupt apk. so unless you absolutely need dont bother, and if you do the easiest way would probably be through root explore or similar file manager.
Titanium pro does it but not worth the $5 or $6. Used to do it for free just not remember the apps name.
Sent from my HTC Magic using XDA App
you can always copy the apk over using terminal
put it at the root of your sdcard and type
Code:
su
mount /system -o remount,rw
cp /sdcard/updatedapp.apk /system/app/appyouwanttoreplace.apk
mount /system -o remount,ro
Careful though, you don't want to accidentally brick
Make sure the app works and if it's an important app you might want to do it from recovery because it may be running
in recovery you type the following in console (Amon_RA Recovery):
Code:
mount sdcard
mount system
cp /sdcard/updatedapp.apk /system/app/appyouwanttoreplace.apk
Make sure the app update works though, or else you'll get force closes
also may be a good idea to backup the original app with something like:
Code:
cp /system/app/blah.apk /sdcard/blah.apk.backup
Then if anything and you need to restore do this from recovery console:
Code:
cp /sdcard/blah.apk.backup /system/app/blah.apk
yes i really love console
Related
is there a guide anywhere on this or could someone give me a rough guide?
Do I need to format the partitions I made on my SD to run Hero, when flashing to another ROM that uses APPS2SD like Soulife's Rogers? I'm getting untold weird problems with this ROM - syncing etc.
Also, looks like APP2SD might not be working - 45MB free space is this right?
(For the record, all I did was a 'wipe' and then flash - which didn't seem to get rid of most apps)
Thanks!
You need to wipe your ext partition before switching roms.
That will get rid of the apps that stayed.
Hmm.. I digg my double post even though I only clicked once. Thx xda
can you wipe with the 'repair ext filesystems' option in cyanogens bootloader?
didn't seem to work for me. :?
with adb:
adb remount
adb shell
rm -r /system/sd/*
reboot recovery
then flash the update
thanks!
when I do
rm -r /system/sd/*
I get:
cannot remove '/system/sd/*': No such file or directory
So I guess there's nothing there anyway? ... looks like it when I 'ls' the directory anyway... confused as to why my apps keep on showing up after flashing ???
what a minute I adb'd in when it was in bootloader mode would that effect what I see?
I have a rooted (rage) N1 that I loaded the G2 Launcher2.apk on to. Doing this caused the N1 to fail the update when it tried to apply FRG83D.
Stupidly, I decided that deleting the /system/app/launcher2.apk file was the right idea. And then rebooted.
Now the phone hangs on the boot animation. Attempting to apply with NO launcher2.apk results in the same error.
I have ADB installed, and I can adb shell into the phone and su. I have the old, original N1 launcher backed up on my SD card, but I can't figure out how to:
1) Mount the sdcard while ADB shell'd in from just the boot animation screen so that I can browse the card
2) Move the launcher2.apk backup file into the /system/app directory without getting a "Cross-device link" error when I use mv.
Can someone provide me with the exact commands to get the /sdcard/launcher2 backup/launcher2.apk file on to /system/app while ADB'd in only from the boot animation?
Thanks so much, I'm digging through the forums in the mean time, but it's tricky to track down exactly what to do.
I appear to have fixed everything. I wasn't able to access the SD card through ADB, but I *was* able to mount it using the:
Code:
echo /dev/block/mmcblk0 > /sys/devices/platform/usb_mass_storage/lun0/file
method.
From there, I copied my backup to my desktop, and I found I was able to ADB push to just the /data/local/tmp directory. Don't know if I could've gone anywhere else, but that worked.
From there, I was about to:
Code:
mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system
to mount/make writable the /system/app directory,
and then:
Code:
cat /data/local/tmp/launcher2.apk > /system/app/launcher2.apk
So there's that. All to restore the Launcher to a version that would allow for a somewhat pointless update. Woo!
How can I access the /data/ partition?
I was using the touchpad, installed some apps like teamviewer/unified remote/xbmc from the market, and all was going well and then for no reason the tablet froze, CM9 just stopped responding. So I rebooted it (holding the home button and power button was the only way to get it to do anything) but it's stuck at the Cyanogenmod boot animation. It's been on that animation for 5-10 minutes, so I rebooted again, went into clockworkmod and reflashed the latest nightly and gapps. I then rebooted, android booted up, said it was upgrading/optimizing 77 something apps, then it said it was starting the apps, and then it froze at that point, wouldn't proceed. I then reboot and am stuck at the boot animation again. My best guess is that one of the apps I installed is hosing it. I plugged the usb cable in and normally during the boot animation of my phone I can adb logcat but I can't seem to adb detect this device during boot animation. Windows see's it as a MTP device but no filesystem comes up in my computer. So adb logcat and adb shell so I can get into /data/app to wipe out the last few apps I installed won't work, but on my phone I can also adb shell in from CWM. So I rebooted into CWM but when I connect the cable to the laptop it still doesn't see it as an Android ADB device. No adb shell. Not like my phone at all.
So back to my original question, short of wiping /data from CWM, is there anyway for me to get at /data/app to delete some files? I'm curious what's causing this.
You can do an and pull from clockwork mod or have you tried mounting it on the computer from the clockwork mod options?
I've mounted before in clockwork but only sdcard, so that i can put a zip on it to flash. Can you also usb mount the /data partition?
Sent from my SGH-I777 using XDA
If you can reboot into WebOS, I know a way you can mount it and grab what you need.
Boot into WebOS, and connect your tablet to your PC. Then start up Novaterm (C:\Program Files\Palm, Inc\terminal\novaterm.bat). Connect to your tablet.
From there, you'll be at a root prompt. This is good. Type the following commands:
- mount /dev/mapper/store-media /media/card
- mount /dev/mapper/store-cm--data /media/hdd
- cd /media/hdd
- mkdir /media/card/cmdata (this will make a backup folder for you)
From there, you can use basic linux commands to copy files from your data partition to your media card. The ones you should need (forgive me listing the extra commands, even if you know them):
- ls (LS) will give you a directory listing
- cp -r <Folder> /media/card/cmdata (this will backup whatever folder you wanna backup to the cmdata on your card)
- rm -r <folder> (this will remove whatever folder you wanna remove)
- rm <filename> (this will remove whatever file you wanna remove)
I just tested this method, and it allows you to back up whatever you want, as long as you can get into your /data partition. You can do whatever you need to do. Just be careful you don't remove something you don't have to.
Hope this helps you, mate. If so, hit Thanks, if not, drop me a PM and we'll discuss other options.
glitchsys said:
I've mounted before in clockwork but only sdcard, so that i can put a zip on it to flash. Can you also usb mount the /data partition?
Click to expand...
Click to collapse
Yes, you can, but you can only read it from a Linux PC. A Windows system will not be able to access the partition, because it is an ext3 filesystem.
You can also use the "USB mode" used to install CM, but it will run into the same problem. Without Linux, you will not be able to access files.
I would clear the cache, that usually seems to solve these kind of issues. (Of course it could also mess it up further...)
I installed Ginger Yoshi 1.5 on my Android Dev Phone 1 by following these instructions:
http://forum.xda-developers.com/showthread.php?t=1178665
I found that most things are working, but I cannot install CoPilot GPS (28MB)
Error 498 in Google Play seems to mean the /cache partition is too small. My cache partition is 27MB.
I tried redirecting /cache to larger place with Cache Fixer 1.1
The "Data" option doesn't succeed in expanding the cache.
The "Tmpfs" option successfully makes the cache bigger, but it makes Play force close when I try to install the app.
I Tried using CacheDownload2SD 1.7.1, but it doesn't do anything
I got a message saying my su binary should be updated. I don't know if that is related or not.
I tried updating the SuperUser su binary from 2.3.2-efgh to 3.1.1
su Binary Updater says "Make sure new su works... fail!"
When I try again, su Binary Updater says "Copying su to /system... fail!"
When I try yet again, su Binary Updater again says "Copying su to /system... fail!"
I used Root Checker to verify root access. The phone is properly rooted. I don't know if this issue is related
I've considered downloading an apk and manually installing it. That should work, but then Google Play wouldn't let me know when an update became available. Any ideas on how to solve the problem? Does anyone know why Cache Fixer and CacheDownload2SD dont' work? Can anyone see why the su binary won't update? I've spent all day clearing caches, rebooting, and attempting installs. Why does Google Play need to download to such a tiny partition?
@IMSargon if your /cache partition is too small then you need to use custom MTD.
HTCDreamOn said:
@IMSargon if your /cache partition is too small then you need to use custom MTD.
Click to expand...
Click to collapse
Thanks for that. I certainly have some more reading before I fully understand the topic. When I upgraded to Ginger Yoshi 1.5, I changed from DangerSPL to hboot-1.33.0013d which gives practically the same partition sizes, except /cache is 27MB instead of 30MB, which is why I didn't have this problem before.
So you're saying I can flash to this custom bootloader to increase my cache size (decreasing /system and/or /data accordingly), install the GPS app, then flash back for normal operation? It sounds like a risky proposition. Is there no way to permanently or temporarily redirect the location to which Play downloads APKs? Such solutions appear to exist (Cache Fixer, etc), but they don't seem to work for me (why?).
No, if you change partition sizes you will be wiping those partitions. Maybe a better option is to do it just once but bind mount to sdcard, see the link htcdreamon gave for more info on this
Sent from my Nexus 4 using xda premium
demkantor said:
No, if you change partition sizes you will be wiping those partitions.
Click to expand...
Click to collapse
This is a relief to hear. It sounded like they would just redefine the partition boundaries with the data in place and hope for the best. I was wondering how that worked. After re-reading, the instruction do call for wiping the partitions and re-flashing the ROM.
demkantor said:
Maybe a better option is to do it just once but bind mount to sdcard, see the link htcdreamon gave for more info on this
Click to expand...
Click to collapse
That would work, and it's something I'll seriously consider once I have a chance to read all the documentation. It seems to me, though, that I should be able to unmount and remount elsewhere the /cache partition on a live system from the command line. Any reason I should not attempt that?
If you want to resolve your problem then follow these steps
- Clean your Device Cache
- Erase Market Data
- Scan your Device for Viruses
- Restore Smartphone to Factory Settings
I also have tutorial like article where you will find all the solution steps to fix the error here is the link:
optimum-systems.com/2013/04/error-498-in-android.html
I hope you will resolve your problem
I tried making a folder under /sdcard, removing /cache, and replacing it with a symlink to the folder in /sdcard. That didn't work for a number of reasons. Firstly, mkdir was missing, which was a pain. I just made the directories with File Manager on the phone - I'll fix that later. Then it wouldn't let me change the ownership of the target directory on the sdcard, even though I was root. When I tried downloading my app, Play force closed.
My next idea was to put the folder in /sd-ext, which is my next largest partition. This is an ext4 partition on the sdcard. I created a folder there. Then I deleted /cache/download and created a symlink to my folder in /sd-ext. I didn't have any problems changing permissions this time. For whatever reason, Play did not force close, and successfully installed the app.
I'll write what I did here, but I'll pretend mkdir worked.
Code:
rm /cache/download
mkdir /sd-ext/download
chown system:cache download
ln -s /sd-ext/download /cache/download
chown -h system:cache /cache/download
I'd expect this setup to survive a reboot, so maybe you want to delete the symlink and remake the original folder to set things back to normal. If not, only apps that use /cache/download are effected, so you might as well leave it. Just clean that folder out every so often.
There have been quite a bit of people with issues with Systemless root, there are some apps that are not recognizing root, i had this issue with my Oneplus One on COS 13.1 and now the same thing works with our OnePlus 3 on OxygenOS
I had come across this on another forum, i don't recall where so i don't want to take the credit for this, i just want to provide the fix for people who have this phone and having issues
Download Terminal from app store and type
Code:
su
mount -o remount,rw /system
touch /system/bin/su
mount -o remount,ro /system
reboot
Thank you ! Before I try this , can you tell me what this method is doing ? All I can tell is that it is mounting something as read only instead of read write
I belive it creates a dummy file bc some apps require it to show as a system file
SDMU said:
Thank you ! Before I try this , can you tell me what this method is doing ? All I can tell is that it is mounting something as read only instead of read write
Click to expand...
Click to collapse
Code:
1. su
2. mount -o remount,rw /system
3. touch /system/bin/su
4. mount -o remount,ro /system
5. reboot
1. To get root privileges
2. Remounts /system partition in writable mode
3. Creates an empty file called su to /system/bin/ folder
4. Remounts /system partition to read only mode.
5. reboot
Edit. As stated above, some apps still check root access by looking su file in /system/bin folder
Squabl said:
1. To get root privileges
2. Remounts /system partition in writable mode
3. Creates an empty file called su to /system/bin/ folder
4. Remounts /system partition to read only mode.
5. reboot
Edit. As stated above, some apps still check root access by looking su file in /system/bin folder
Click to expand...
Click to collapse
This defeats the purpose of a system less su, I.e., not modifying the system partition. Step 3 modifies the system partition.
The reason apps are not seeing the su in system less state is because they have been written incorrectly. Chainfire already said these apps should be re written
candiesdoodle said:
This defeats the purpose of a system less su, I.e., not modifying the system partition. Step 3 modifies the system partition.
The reason apps are not seeing the su in system less state is because they have been written incorrectly. Chainfire already said these apps should be re written
Click to expand...
Click to collapse
Yes, it "disables" systemless root and afterwards it is just a root and banking apps and ota updates etc will fail. I don't need systemless root so I have modified my system partition to get some poorly coded apps to function. This method is not recommended if you need systemless root and it's a good thing that you pointed that out!