Just wondered if anyone could help clear this up for me. I currently have 3 systems via BMM. System 1,3, & 4, all built the same way. 500mb, 1000mb, 500mb with system/data/cache partitions respectively. However system system 1 is reporting insufficient space to install/update any apps now. Is there a glitch with android disk space reporting? I've followed every tip I've found on the "insufficient space' error to no avail.
Sent from my MB865 using XDA Premium HD app
I've had this issue numerous times...gets to point where I need to wipe from 1-4. IMHO and my experiences I've found that system 2, keep blank and just ACTIVATE it. Then proceed to 3-4 setting up both those systems, 500 system, 1000 data and 300 cache. And I'm able to have system one (stock for me) 2 (blank) 3 and 4 now 1,3, and 4 all have the same amount of apps I get and seems much but no errors since using the system I've set. Hope this helps a little bit. Maybe cache was set too high try 300 for each. Would only max out 3 systems though with 2 being blank. You should be fine if you do this.
Sent from my MB865 using XDA Premium 4 mobile app
I'm thinking it is just some sort of glitch with the android system. I started uninstalling apps, had up to 700MB free on data partition and was still receiving the error. Gave up and started getting creative, moved all the low usage apps to the SD card and the rest integrated into the ROM (/system) via Titanium.
It would help if I knew a little more about how BMM utilized space. I mean are all the systems held in /data partition of System 1 (which would include /system(3) /data(3) /cache(3) /system(4) /data(4) /cache(4) etc etc? In which case System 1 is the only with dedicated /system and /cache partitions?
Post # 348 & onwards in the said thread, have detailed the same discussion as your query, read the same for insights. Bottomline apparently seems, live with a max of 2 addon rom's leaving 2 slots besides slot 2 free to avoid low internal memory issue. When I first joined Atrix 2 forum I was majorly advised against installing programs to ext sd card and to top it I have a class 10 32gb but till date i run the same card and practically most of my programs are installed to ext sd card. I avoid installing the grey x marked apps to sd as indicated by apps2sd.
You must have a larger /data partition as mine is only 4.5GB and I only have 2 additional systems. I did change all of the cache partitions to 300MB though. Fortunately for me I don't tend to stay in system 1, I use system 3 as more of a daily driver.
EDIT: Interesting I found an additional 200MB but deleting several 'cache.img' files found in /data/media/0 is several recursive folder structures. I rebooted and only one of them repopulated themselves. Oddly enough 2 of them were 300MB and 1 of them was 500MB. However as noted, I only regained around 200MB of space according to android system.
unsivil_audio said:
You must have a larger /data partition as mine is only 4.5GB and I only have 2 additional systems. I did change all of the cache partitions to 350MB though. Fortunately for me I don't tend to stay in system 1, I use system 3 as more of a daily driver.
Click to expand...
Click to collapse
The hardware of all A2's are the same, just that stock JB allots the webtop space (or something on those lines). Reason why I asked you to head over to that thread was to learn more about the duplication of virtual folders & the subsequent discussion I had which would provide some inputs for your query, as mine was the same as well.
We'll I've done it now, System 1 is toast. Tried moving all my apps back to internal storage (thinking I'd freed up enough addition space), and completed successfully, however shortly there after started hot booting. Rebooted into recovery cleared cache and dalvik cache, and now its stuck at 'Starting apps....'. Not sure how to get back my System 1 without tanking my other 2 installs (since 'wipe data/factory reset' formats /data where they are held).
Related
Are there any plans to implement a Button into the App-Manager, to move the Data-Part of an app to the /ext2 Partition ?
Especially on low memory devices (like the G1) this will give us the chance to install a lot of apps without runnung to "low space on device".
I have written a very small bash-script to manually do this job, but it would be more comfortable with a Button.
move.sh
Code:
#!/system/bin/sh
#
#data_to_move=com.alk.copilot
#data_to_move=com.camelgames.blowup
#data_to_move=com.drodin.tuxrider
#data_to_move=com.gameloft.android.AMEU.GloftAsphalt5.asphalt5
#data_to_move=com.navigon.navigator
#data_to_move=com.polarbit.ironsightlite
#data_to_move=com.polarbit.ragingthunder
#data_to_move=com.polarbit.rthunder2
#data_to_move=com.polarbit.waveblazerlite
#data_to_move=com.estrongs.android.pop
su
mount -o remount,rw /data
mkdir /sd-ext/data
cd /data/data
echo About to Move ${data_to_move}
cp -r -p ${data_to_move} /sd-ext/data
rm -r -f ${data_to_move}
ln -s /sd-ext/data/${data_to_move} ${data_to_move}
unmove.sh
Code:
#!/system/bin/sh
#
#data_to_move=com.alk.copilot
#data_to_move=com.camelgames.blowup
#data_to_move=com.drodin.tuxrider
#data_to_move=com.gameloft.android.AMEU.GloftAsphalt5.asphalt5
#data_to_move=com.navigon.navigator
#data_to_move=com.polarbit.ironsightlite
#data_to_move=com.polarbit.ragingthunder
#data_to_move=com.polarbit.rthunder2
#data_to_move=com.polarbit.waveblazerlite
#data_to_move=com.estrongs.android.pop
su
mount -o remount,rw /data
mkdir /sd-ext/data
cd /data/data
echo About to unMove ${data_to_move}
rm ${data_to_move}
mkdir ${data_to_move}
cp -r -p /sd-ext/data/${data_to_move} ${data_to_move}
Apps that need lots of space should use the fat32 partition gracefully, using this hack would considerably slow down your system(even class6). Why double the reads and writes to the slow mmc?
Because not all apps using the fat32-Partition.
Navigon for example uses 14 MB of internal storage.
If you install such apps on a G1, you can quickly run out of space.
Low on cache space will considerably slow down the overall system performance.
I would not suggest to move the data of any installed apps, but from the big ones.
Apps like Navigation and 3D-Games are writing not frequently their data and if you own a G1 you are already swapping when using an Eclaid based ROM. So this wouldn't make a big difference in the livetime of your sdcard.
Perhaps someone could implement a partial move (e.g. only libraries) to avoid massive writes to the card ... and/or setting a threshold value, so apps with small data could not be moved.
For me, moving the apps in the Script above has given me additional 35 MB internal space and everything is still runnung "fast".
/data/data
TheGenesis said:
Because not all apps using the fat32-Partition.
Navigon for example uses 14 MB of internal storage.
If you install such apps on a G1, you can quickly run out of space.
Low on cache space will considerably slow down the overall system performance.
I would not suggest to move the data of any installed apps, but from the big ones.
Apps like Navigation and 3D-Games are writing not frequently their data and if you own a G1 you are already swapping when using an Eclaid based ROM. So this wouldn't make a big difference in the livetime of your sdcard.
Perhaps someone could implement a partial move (e.g. only libraries) to avoid massive writes to the card ... and/or setting a threshold value, so apps with small data could not be moved.
For me, moving the apps in the Script above has given me additional 35 MB internal space and everything is still runnung "fast".
Click to expand...
Click to collapse
there is already a script in existance to move things like that:
# lucid -d -sd
would move app data to the sdcard and symlink .. this (however) does not move individual pieces .. i would be interested to know the speed difference on these apps that you moved .. also .. this will create extra difficulty when attempting any nandroid backup/restore .. i have seen people putting up comments because their phone crashed due to the excessive number of symlinks across the phone .. if you are not careful with them you could lose all your data
The Space allocated by the "big apps" is mainly used by their ./lib dir. Because of this, it would be enough to move and symlink only those dirs.
With Games the "rest" goes to settings and scores.
On a G1 there is absolutely no difference in speed when moving data to sd.
Perhaps its because the G1 is not the top performer at all
I have played those games in the list with data in internal and on sd-ext and there is no difference in speed ... loading time is also the same.
I'm satisfied with the results, but these scripts didn't remove the data when apps where uninstalled or re-installed and thats the reason of my request.
Take a look on your storage and see how much space (libraries) should be on the sdcard.
Code:
du -sk /data/data/* | sort -rn | head
btw ... did you ever enabled JIT on a G1 and played ExZeus or Armageddon Squadron ?
Its amazing what is possible on this "outdated" Hardware!
P.S. Nandroid Backup runs perfectly with this symlinks (no recursive/double Backups)
Update:
Nandroid Backup only saves app and app-private ... could you edit this to save everything excluding "crap-dirs" ?
If nandbackup uses standard tar calls, you can use the following command:
Code:
tar pcvf /sdcard/nandroid/sd-ext.tar . -C /sd-ext --exclude dalvik-cache --exclude lost+found
... it would save everything the user place on the partition including userinit.sh
Restoring such a tarball works perfectly with nandbackup.
Thx in advance
Thom
Int. mem for SWAP ?
well, after the moving some heavy apps data
I have 54mb free Int. mem (out of 90)
is that possible to use 24-32mb of this (fast?)memory
for SWAP ? instead of linux swap
and does it make any sense?
...just tried to enable /swapfile.swp via Swapper2
though it says
-creating swap - ok
-changing permission - ok
-formatting swap - ok
but
- enabling swap(file) - FAIL
sorry if it's just another stupid question
G1, stock cm5.0.8 test4, 32mb linux swap
TheGenesis said:
Update:
Nandroid Backup only saves app and app-private ... could you edit this to save everything excluding "crap-dirs" ?
If nandbackup uses standard tar calls, you can use the following command:
Code:
tar pcvf /sdcard/nandroid/sd-ext.tar . -C /sd-ext --exclude dalvik-cache --exclude lost+found
... it would save everything the user place on the partition including userinit.sh
Restoring such a tarball works perfectly with nandbackup.
Thx in advance
Thom
Click to expand...
Click to collapse
Have you tried BART? http://forum.xda-developers.com/showthread.php?t=562292
It's included in the recovery, and lets you backup/not_backup whatever you want.
zelipukin said:
well, after the moving some heavy apps data
I have 54mb free Int. mem (out of 90)
is that possible to use 24-32mb of this (fast?)memory
for SWAP ? instead of linux swap
and does it make any sense?
...just tried to enable /swapfile.swp via Swapper2
though it says
-creating swap - ok
-changing permission - ok
-formatting swap - ok
but
- enabling swap(file) - FAIL
sorry if it's just another stupid question
G1, stock cm5.0.8 test4, 32mb linux swap
Click to expand...
Click to collapse
It's not a stupid question ... I have had the same Idea yesterday ...
I have googled about life spawn of the internal flash memory, but I haven't found any satisfactory answer yet.
Anywhere here who know how fast the internal flash is ?
What about write cycles and wear levelling ?
If it has no integrated wear levelling, swapping will kill the phone in a few days.
I think your enable swap has failed due to wrong permissions ... try to enable with a defered call in your userinit.
Update: I have checked my filesystem ... /cache has actually 29 MB free ... is it correct, that /cache is only used by OTA updates ? Probably we can create a priorized swap there in addition to ext.
Keep up the good work dude...this sounds great
TheGenesis said:
Navigon for example uses 14 MB of internal storage.
If you install such apps on a G1, you can quickly run out of space.
Low on cache space will considerably slow down the overall system performance.
I would not suggest to move the data of any installed apps, but from the big ones.
Apps like Navigation and 3D-Games are writing not frequently their data and if you own a G1 you are already swapping when using an Eclaid based ROM. So this wouldn't make a big difference in the livetime of your sdcard.
Perhaps someone could implement a partial move (e.g. only libraries) to avoid massive writes to the card ... and/or setting a threshold value, so apps with small data could not be moved.
For me, moving the apps in the Script above has given me additional 35 MB internal space and everything is still runnung "fast".
Click to expand...
Click to collapse
If navigon is using that much internal storage it's a very poorly written application. Low cache doesn't slow the system down, just apps that require such huge amounts of it.
I'm already swapping when using Eclair? Wrong, using swap on the sdcard is horrible, I'd never recommend it to anyone and I personally don't use it. I have 114 apps installed and my cache is 9% used, it seems to me like your apps aren't clearing their cache correctly, or they're just poorly written. The argument that 'you are already swapping so this wouldn't make a big difference in the livetime of your sdcard' is untrue, you are effectively doubling the amount of read/writes to the mmc, if not more, so the lifetime could potentially be cut in half, of course depending on use.
I'd say nice try, but this really just working around crap apps.
I use a 16 GB class 6 SD-Card with static wear-levelling.
Assuming that a standard-flash-nand-cell lasts about 10.000 write cycles, and my swap-write-turnover is currently about 1,6 GB per day, my SD-Card will last about 273 years (minus regular writes).
So I don't care about livetime.
Besides Navigon, there are many apps, that store their huge libraries to /data .... Games in most cases ... If you aren't using "bad written apps" its fine for YOU ... everyone else has to do some tweaks when installing some of them to the limited internal storage.
I have 278 apps installed and the only limit for me, is currently the free space on my sdcard.
If you haven't enabled swap since you have flashed your first Eclair ROM, you have probably never felt what is "speed" or you never need more than 1 app running simultaniously .... or you are using a different phone instead of a G1
You say "swapping to sd is horrible" ... I think you have used the wrong parameters ... when I diable swapping my system is lagging ... even when I work with one app the same time.
Did you enabled compcache while swapping ? Did you use a swapfile on FAT32 ? Is your swappinness levor 50 or above 60 ? Are you using al class 4 or slower sd-card ? Are you running heavy memory consuming apps without killing them from time to time ?
All these can turn a fast swapping system into an unusable phone.
You cannot enable swap and use the system like before.
Update:
I have copied 18 MB from cache to data and it tooks round about 18 seconds.
Same file from sdcard (FAT32) to sdcard tooks 6 seconds ...
I will use the sdcard
I should have listened to internal voice telling me not to argue with a fool cause people might not know the difference..
Something strange
I did some stupid (owing to absence of linux knowledge)
experiments regarding to swap_2_/
I believe if it possible it should be done through userinit/config
or smth during boot to enable r/w. give necc permissions etc.
I just used Swapper and RootManager
If I create .swp (it creates but does not work) in any place but /cache
it (just existence of this file) does system unstable, slow and unresponsive
in /cache or any existing or newly created folders inside /cache/ it's OK
before reboot when those new folders/files disappear
=
After a wile something happened with my phone (not a first or last time)
many apps caused FC, settings were lost etc
tried "fix uid missmatches" - dots filled out numerous screens
and after ~20min I decided to reboot
tried nandroid - same endless ....................................................
after the reboot I found no FCs but still missing settings for some apps
(sim_linked_data apps like CoPilot were OK) so I Titaniumed non-working apps
data (5-6 apps) and evrthng seems fine
=
BUT when I look at internal memory available
I find 73Mb (out of ~90) FREE
there was 53Mb free before the accident
Is that normal? And whats the limit?
I have my laps and brain scratched to find some application of this
=
just my experience
-compcache always gives me horrible slow phone - not using
-linux swap - best results compare to no_swap - allways use
Some apps are storing many data to /data and sometimes to /cache.
I think your restores have cleared some of them.
Try CacheMate instead of such manouvers
I have checked the write throughput using dd:
Internal Storage: 3,5 MB/s
Class 6 SD Card: 7 MB/s
... annoying ... USB to SD-Card is 3,5 MB/s and SD-Card via Card-Reader (PC) is about 9 MB/s.
Hey man, i had the same problem and decided to go a head and write a small tool that does exactly this, this is a UI tool that shows all the folders in /data/data (excluding system folders) and let you move your apps to your sd, you should have an APP2SD ROM installed with root (of-course) and sd card partitioned to EXT and FAT32.
Contact me if you want to check it out, i never found the time to publish it ([email protected])
hi,
I have tried that and it works, but...it works until reboot...
After reboot I don't see directory /sd-ext/data....
I don't know why it always been deleted....
I was trying out Link2sd for the first time, and well, I was using MIUI 2.3.7 (http://forum.xda-developers.com/showthread.php?t=1680586). So here's what I did:
Partitioned my sdcard into 3 primary partitions, (a FAT32, a swap, and an ext3).
Installed Link2sd on a fresh install of the ROM.
Then what happened was that link2sd started to FC, and then same happened for all the user apps. Well, another user reported the same thing on the MIUI thread a day later.
But then, when I reinstalled the ROM, and started installing applications, they were taking very less space in the internal memory. Before partitioning the SD card, usually, I'll have to move many apps to sdcard (not using any *2sd), and still will have only about 30-40 MB remaining. But now, even after installing more applications than usual, and moving none of them to sd, I still have about 100MB free in the internal memory. It shows around 100 MB is used, but if I add up the individual sizes of all the applications, it comes to much more than that.
So should I infer that the ROM is automatically using some *2sd script, and moving my apps to sd? If so, how can I control that?
Also, if the answer to the previous question is 'yes', then, most of the user apps, (especially games), take some time to launch after clicking their icons. Could it be because of the fact that those apps are getting launched from the sd? Has some other MIUI users (or any ROM user having *2sd) experienced the same?
Hope my question is clear enough. If not, please let me know.
bumping this thread coz i haven't got any replies!!
Hi everyone,
When I try to install new apps or try to update an existing app, I'll receive the error message that I don't have enough storage on my device. In my storage settings I can clearly see, that I have more than 250MB left (of 2,34GB). At the moment I can't even install something that is below 1 MB.
For a long time I was running standard Android 4.1 on this HTC one S and lived with this error... Last week I tried to get to the cause of that issue, because it annoys me every day a little more. I rooted my device and flashed Cyanogenmod 12.1, hoping that this could fix my issue. But it didn't. After installing some apps I'm again facing that annoying issue.
In my storage options I do have the possibility to move apps to "SD". Even though the HTC one S doesn't have an SD slot, I guess this is moving the apps to another partition of the flash. Unfortunately they are not copied completely to the other partition. In some cases only a few MB or sometimes only a few KB are moved to that "SD", according to my storage settings.
I already wiped my cache, but unfortunately that didn' t change anything. Is someone of you running into the same issues or even has a solution for me? If you need more informations or tests, just let me know.
Thank you guys in advance!
I have the same problem and it is just absolutely out of control. I can't understand why this garbage is allowed to happen. I have very few apps, with the biggest being GApps' updated versions. But the phone's storage only seems to be 2GB - which is unusable.
It seems like modern phones use a "dynamic /data" arrangement, where /sdcard is really a virtual path to /data/media (so the sdcard contents actually exist in the /data partition, hence can't be mounted as USB storage or FAT). I'm constantly running into the "insufficient storage" problem with >200MB free - which is hardly enough to even work with anyway.
The problem is made significantly worse by dalvik-cache storing a second copy of the app - so that instead of a 20MB app only taking 20 MB of storage, it really takes about 40MB (or more, depending on extra uncompressed data). Like keeping a copy of the installer along side the actual program, for every program you use on your computer.
I have no need for any "/sdcard" storage, as almost all my data is cloud-based (Dropbox photos, Tidal, Slacker, Spotify music, etc), so I hope to find some way to repartition the internal storage to split it up into 8GB /data with the rest as /sdcard (possibly as low as 4GB), and minimize the /cache partition which is generally unused anyway. It's a damn shame that this isn't given more priority among the people trying to squeeze more /sdcard space (to use with what apps?!). :/
In this thread I want to share my thoughts and experiences on how to optimize storage and memory for a phone with low internal memory and with access to an SD card, for example like the LG G4S (model H735) with only 8GB internal memory and 1.5GB RAM.
I'm happy to hear more suggestions to optimize!
First of all, you need to root your phone. Find out how to do this for your individual model.
Once you're rooted, you can optimize your storage and memory:
Get a good SD card with fast read and write speeds! This is crucial as you're going to be running lots of apps from it. Get a 32GB (or if your phone supports more, then more!).
You should partition your SD card so that you can make a second partition with the ext4 file system used by Android. Only then will you be able to move almost all your apps to SD! See notes below on how to partition your SD card.
You can now use the excellent Link2SD app to do all of the cleaning tasks:
Moving & linking apps & data to SD
Uninstall system apps
By default, you will only be able to move the "user" apps (the ones which were not installed as part of the system, e.g. the ones you installed yourself). But we can get around this with many apps! This is described below (in 4.).
You may have noticed that when you switch between apps, e.g. between your game and your messaging app, every time you switch, the app reloads (e.g. the game takes ages to start up again). This is because your RAM (main memory) usage is not optimized. You can also do something which is likely fix this, which I will describe below (in 5.).
1. A word about data usage of an app
You may have wondered why your memory usage is still so high when you moved your app to an SD card with the classic Android "Move to SD" functionality (which you can access via the Android app settings).
Well, the classic Android "Move to SD" only moves the app. But often the bulk of the data is actually not in the app itself, but in the data and OBB files of the app! In games, this can be up to several gigabytes. And this stuff remains on your internal storage! So we will need to move this as well, and then "link" to the moved data, so the Android OS "believes" that the data is still on internal storage. Imagine this similar to doing a (soft)link to a file on your computer.
Also, doing it this way ("linking") is much better than the classic Android move-apps. For example, you can avoid problems with widgets which may not run any more once they have been moved to SD with Android move-apps.
There are a few apps which can help you move&link your apps and data. I have tried a few, and in my opinion Link2SD is the best, as it
already detects if your app uses OBB and data files
you can easily display the apps which use most storage (also in terms of data files!)
and you can also uninstall system apps more reliably than with other root apps!
You will need to get the pro version in order to do everything with it, but this is $2 well worth spending, you won't need any other apps for managing the moving. It's much easier than e.g. FolderMount to easily move all the relevant data of an app to SD.
2. The partitions on your phone
Most likely, your phone will be using different partitions on the internal storage for different purposes. For example, there may be a partition which is exclusively to be used for the "system" (the Android OS and system applications).
You can use an app like Disk Info to show the partitions on your internal storage (and SD card) and how much space is still free on them.
This may vary between phones, but in most cases you should find a "data" partition or similar, which is used for
Applications installed by you
Updates of system apps (!!!)
Data, Cache, OBB files etc. used by your apps
The size of this data partition is pretty much what you can get out of your internal storage: if you move everything out of there, this is the maximum free space you can get (again, it may vary from phone to phone). You cannot easily get access to the system and cache partition to use as storage space, and you shouldn't try to mess with that anyway.
So what you can try to do, is shove as much as possible out of the data partition onto your SD card. The free space on data can then be used as a "buffer" when you download and install applications, before you move&link them onto the SD card.
Note also that your data partition is used for updates which may have been automatically downloaded. This may take up a significant chunk of your data partition! So you may want to either:
Move the whole system app to SD card (see below described for Link2SD).
Or, "merge" the updates into the main app, so that it then resides on the system partition again.
To merge the update with the main app, long-tap (tap and hold) on the app in Link2SD and select Integrate app into system. However keep an eye on the free disk space on the system partition, you don't want it to get too close to using full capacity! So only merge updates when you're sure there is enough free space on /system.
3. Partition your SD card
It is important that you create a second partition on your SD card, formatted with the ext4 file system used by Android. Only then will you be able to move all apps completely onto SD.
On Windows, you can use Mini Tool Partition Wizard to partition your SD card and format the second partition as ext4. I won't go into detailed instructions here, there's other documentation for this on-line.
Only a few notes:
It is important that you format the ext4 partition as "primary" also!!!
You can also "resize" the first partition (the FAT32 which may already be on it), without losing your data. However if something goes wrong, you may lose the data anyway, so it's advisable to backup your data on the SD card before.
You may want to keep a FAT32 partition (also formatted as primary), because on windows systems you cannot easily read ext4, so you may want to use the FAT partition to store your pictures etc., which you can then also read from a Windows computer.
4. Use Link2SD to move your apps
Open Link2SD and you will see a list of your apps. On the top bar you can select to display only apps of certain types, e.g. "user" and "system" apps. And you can also sort them according to different criteria, e.g. "Name" or "Size". I often use "Size (total)" in the bottom of the sorting criteria list. This shows the apps which use the most data overall first.
First, we will move the "user" apps to SD.
Display all the "user" apps and click on the first one you want to move & link to SD.
You will see a detailed list of your app and data usage.
You will see buttons to Link to SD card or Remove link. Below this, you see a field titled Android App2SD in which you can Move to SD Card --- this is the classic Android way to move apps: don't use this! Use Link to SD Card instead
After selecting Link to SD card , you can tick the boxes for everything you would like to move (app/cache/internal data...), and then click OK. Link2SD will move all your stuff to the ext4 partition of your SD card and then also link to it.
The apps which also use OBB files and extra data/cache will display extra boxes in Link2SD. Try a game app for example to see this, large games are likely to use this. You can click Link to SD for these extra files also, and it'll be all moved to your SD! Warning: I've had problems particularly with moving OBB files, sometimes also with data files -- the app was not launching properly after I've moved the OBBs. This is not the fault of Link2SD though, I've had the same problems with other apps like for example FolderMount.
If you want to undo the linking, just use Link2SD and select Remove Link. All your data will be moved back to internal storage, and the link will be removed. All back to how it was before. Easy!
Now you may also want to move system apps to SD to create even more space. While system apps natively reside on the /system partition (see 2. above), they also may store data and cache on the /data partition. Or, you may also want to create more space in the /system partition by moving system apps to SD.
The problem is, even though you are rooted, you cannot move the system apps. And for many of the system apps, you shouldn't do this either. However, it is safe to do this for apps which are installed as "system" but not really an integral part of the OS, such as
Chrome
Google maps
Google docs
Google drive
YouTube
and more.
To move them, you can use Link2SD to convert them from "system" app to "user" app.
Open Link2SD and long-tap (tap and hold) on the app to open the options menu. If you have a Convert to user app option, that's that!
If you don't have the conversion option, you can try something else:
Uninstall the app first by long-tapping on the app in Link2SD, and selecting Uninstall. But first make sure you will be able to download this app from Google Play!
You will need to reboot the phone.
Re-install the app from Google Play.
Now, you can use Link2SD to link the app to SD as we did for the user apps before.
Important: Never to this for core system apps, and I would also not touch Google Play or any of its services.
Note: You may also consider to just merge the updates of a system app so that it resides in the /system partition again. See description above (2.) for more details.
5. Optimizing your RAM
What I found particularly annoying on my LG G4S (H735) is that whenever I switched between my game (large files) and another app (e.g. messaging app), the game would load up from scratch again, which would take a few minutes. The reason for this is that the default settings on the phone were set to keep a too big part of the memory "free", so other apps were "killed" as soon as I was using my game. When I then switched back to home screen, all the other apps had to be re-launched, and my game instead "killed" again.
You can decrease the threshold of reserved free memory by editing the build props. There's a risk to get an unstable system if you tweak this too much, but if you try carefully, it may be ok. And you can also reset it to defaults if you're not happy with the results.
You will need a build prop editor, for example the Build Prop Editor app. Open it, and click on the "edit" pencil below to edit the following values:
ro.sys.fw.mOomMinFree1=...
ro.sys.fw.mOomMinFree2=...
ro.sys.fw.mOomMinFree3=...
ro.sys.fw.mOomMinFree4=...
ro.sys.fw.mOomMinFree5=...
ro.sys.fw.mOomMinFree6=...
It worked like a treat on my phone (LG G4S with 1.5GB RAM) and was also reported to work nicely with the LG G3, using the following values:
ro.sys.fw.mOomMinFree1=49152 (unchanged)
ro.sys.fw.mOomMinFree2=61440 (unchanged)
ro.sys.fw.mOomMinFree3=65000 (was set to 73728 originally)
ro.sys.fw.mOomMinFree4=70000 (was set to 204800 originally)
ro.sys.fw.mOomMinFree5=80000 (was set to 262144 originally)
ro.sys.fw.mOomMinFree6=100000 (was set to 327680 originally)
Please share your experiences if you have some tipps to further optimize low-memory phones! Thanks
See also
http://forums.androidcentral.com/lg...ry-using-link2sd-w-pros-cons-vs-data2ext.html
http://www.link2sd.info/faq
jen.magnolis said:
In this thread I want to share my thoughts and experiences on how to optimize storage and memory for a phone with low internal memory and with access to an SD card, for example like the LG G4S (model H735) with only 8GB internal memory and 1.5GB RAM.
I'm happy to hear more suggestions to optimize!
First of all, you need to root your phone. Find out how to do this for your individual model.
Once you're rooted, you can optimize your storage and memory:
Get a good SD card with fast read and write speeds! This is crucial as you're going to be running lots of apps from it. Get a 32GB (or if your phone supports more, then more!).
You should partition your SD card so that you can make a second partition with the ext4 file system used by Android. Only then will you be able to move almost all your apps to SD! See notes below on how to partition your SD card.
You can now use the excellent Link2SD app to do all of the cleaning tasks:
Moving & linking apps & data to SD
Uninstall system apps
By default, you will only be able to move the "user" apps (the ones which were not installed as part of the system, e.g. the ones you installed yourself). But we can get around this with many apps! This is described below (in 4.).
You may have noticed that when you switch between apps, e.g. between your game and your messaging app, every time you switch, the app reloads (e.g. the game takes ages to start up again). This is because your RAM (main memory) usage is not optimized. You can also do something which is likely fix this, which I will describe below (in 5.).
1. A word about data usage of an app
You may have wondered why your memory usage is still so high when you moved your app to an SD card with the classic Android "Move to SD" functionality (which you can access via the Android app settings).
Well, the classic Android "Move to SD" only moves the app. But often the bulk of the data is actually not in the app itself, but in the data and OBB files of the app! In games, this can be up to several gigabytes. And this stuff remains on your internal storage! So we will need to move this as well, and then "link" to the moved data, so the Android OS "believes" that the data is still on internal storage. Imagine this similar to doing a (soft)link to a file on your computer.
Also, doing it this way ("linking") is much better than the classic Android move-apps. For example, you can avoid problems with widgets which may not run any more once they have been moved to SD with Android move-apps.
There are a few apps which can help you move&link your apps and data. I have tried a few, and in my opinion Link2SD is the best, as it
already detects if your app uses OBB and data files
you can easily display the apps which use most storage (also in terms of data files!)
and you can also uninstall system apps more reliably than with other root apps!
You will need to get the pro version in order to do everything with it, but this is $2 well worth spending, you won't need any other apps for managing the moving. It's much easier than e.g. FolderMount to easily move all the relevant data of an app to SD.
2. The partitions on your phone
Most likely, your phone will be using different partitions on the internal storage for different purposes. For example, there may be a partition which is exclusively to be used for the "system" (the Android OS and system applications).
You can use an app like Disk Info to show the partitions on your internal storage (and SD card) and how much space is still free on them.
This may vary between phones, but in most cases you should find a "data" partition or similar, which is used for
Applications installed by you
Updates of system apps (!!!)
Data, Cache, OBB files etc. used by your apps
The size of this data partition is pretty much what you can get out of your internal storage: if you move everything out of there, this is the maximum free space you can get (again, it may vary from phone to phone). You cannot easily get access to the system and cache partition to use as storage space, and you shouldn't try to mess with that anyway.
So what you can try to do, is shove as much as possible out of the data partition onto your SD card. The free space on data can then be used as a "buffer" when you download and install applications, before you move&link them onto the SD card.
Note also that your data partition is used for updates which may have been automatically downloaded. This may take up a significant chunk of your data partition! So you may want to either:
Move the whole system app to SD card (see below described for Link2SD).
Or, "merge" the updates into the main app, so that it then resides on the system partition again.
To merge the update with the main app, long-tap (tap and hold) on the app in Link2SD and select Integrate app into system. However keep an eye on the free disk space on the system partition, you don't want it to get too close to using full capacity! So only merge updates when you're sure there is enough free space on /system.
3. Partition your SD card
It is important that you create a second partition on your SD card, formatted with the ext4 file system used by Android. Only then will you be able to move all apps completely onto SD.
On Windows, you can use Mini Tool Partition Wizard to partition your SD card and format the second partition as ext4. I won't go into detailed instructions here, there's other documentation for this on-line.
Only a few notes:
It is important that you format the ext4 partition as "primary" also!!!
You can also "resize" the first partition (the FAT32 which may already be on it), without losing your data. However if something goes wrong, you may lose the data anyway, so it's advisable to backup your data on the SD card before.
You may want to keep a FAT32 partition (also formatted as primary), because on windows systems you cannot easily read ext4, so you may want to use the FAT partition to store your pictures etc., which you can then also read from a Windows computer.
4. Use Link2SD to move your apps
Open Link2SD and you will see a list of your apps. On the top bar you can select to display only apps of certain types, e.g. "user" and "system" apps. And you can also sort them according to different criteria, e.g. "Name" or "Size". I often use "Size (total)" in the bottom of the sorting criteria list. This shows the apps which use the most data overall first.
First, we will move the "user" apps to SD.
Display all the "user" apps and click on the first one you want to move & link to SD.
You will see a detailed list of your app and data usage.
You will see buttons to Link to SD card or Remove link. Below this, you see a field titled Android App2SD in which you can Move to SD Card --- this is the classic Android way to move apps: don't use this! Use Link to SD Card instead
After selecting Link to SD card , you can tick the boxes for everything you would like to move (app/cache/internal data...), and then click OK. Link2SD will move all your stuff to the ext4 partition of your SD card and then also link to it.
The apps which also use OBB files and extra data/cache will display extra boxes in Link2SD. Try a game app for example to see this, large games are likely to use this. You can click Link to SD for these extra files also, and it'll be all moved to your SD! Warning: I've had problems particularly with moving OBB files, sometimes also with data files -- the app was not launching properly after I've moved the OBBs. This is not the fault of Link2SD though, I've had the same problems with other apps like for example FolderMount.
If you want to undo the linking, just use Link2SD and select Remove Link. All your data will be moved back to internal storage, and the link will be removed. All back to how it was before. Easy!
Now you may also want to move system apps to SD to create even more space. While system apps natively reside on the /system partition (see 2. above), they also may store data and cache on the /data partition. Or, you may also want to create more space in the /system partition by moving system apps to SD.
The problem is, even though you are rooted, you cannot move the system apps. And for many of the system apps, you shouldn't do this either. However, it is safe to do this for apps which are installed as "system" but not really an integral part of the OS, such as
Chrome
Google maps
Google docs
Google drive
YouTube
and more.
To move them, you can use Link2SD to convert them from "system" app to "user" app.
Open Link2SD and long-tap (tap and hold) on the app to open the options menu. If you have a Convert to user app option, that's that!
If you don't have the conversion option, you can try something else:
Uninstall the app first by long-tapping on the app in Link2SD, and selecting Uninstall. But first make sure you will be able to download this app from Google Play!
You will need to reboot the phone.
Re-install the app from Google Play.
Now, you can use Link2SD to link the app to SD as we did for the user apps before.
Important: Never to this for core system apps, and I would also not touch Google Play or any of its services.
Note: You may also consider to just merge the updates of a system app so that it resides in the /system partition again. See description above (2.) for more details.
5. Optimizing your RAM
What I found particularly annoying on my LG G4S (H735) is that whenever I switched between my game (large files) and another app (e.g. messaging app), the game would load up from scratch again, which would take a few minutes. The reason for this is that the default settings on the phone were set to keep a too big part of the memory "free", so other apps were "killed" as soon as I was using my game. When I then switched back to home screen, all the other apps had to be re-launched, and my game instead "killed" again.
You can decrease the threshold of reserved free memory by editing the build props. There's a risk to get an unstable system if you tweak this too much, but if you try carefully, it may be ok. And you can also reset it to defaults if you're not happy with the results.
You will need a build prop editor, for example the Build Prop Editor app. Open it, and click on the "edit" pencil below to edit the following values:
ro.sys.fw.mOomMinFree1=...
ro.sys.fw.mOomMinFree2=...
ro.sys.fw.mOomMinFree3=...
ro.sys.fw.mOomMinFree4=...
ro.sys.fw.mOomMinFree5=...
ro.sys.fw.mOomMinFree6=...
It worked like a treat on my phone (LG G4S with 1.5GB RAM) and was also reported to work nicely with the LG G3, using the following values:
ro.sys.fw.mOomMinFree1=49152 (unchanged)
ro.sys.fw.mOomMinFree2=61440 (unchanged)
ro.sys.fw.mOomMinFree3=65000 (was set to 73728 originally)
ro.sys.fw.mOomMinFree4=70000 (was set to 204800 originally)
ro.sys.fw.mOomMinFree5=80000 (was set to 262144 originally)
ro.sys.fw.mOomMinFree6=100000 (was set to 327680 originally)
Please share your experiences if you have some tipps to further optimize low-memory phones! Thanks
See also
http://forums.androidcentral.com/lg...ry-using-link2sd-w-pros-cons-vs-data2ext.html
http://www.link2sd.info/faq
Click to expand...
Click to collapse
So did the linking worked! Because I tried foldermount and link2SD but none of them worked. Which I create a link it simply tries to redownload all the data. Please help!
Hi, can you please be a bit more precise about what you were trying to do? Did you do step 3, then followed by 4, which didn't work?
Uninstall foldermount or make sure it is not linking anything. I had problems with foldermount, it may mess things up in your case.
It is also important you created the right file system in your SD card partition (step 3).
A bit complicated for me but gonna try to do it, thanks man
Sent from my Lenovo A5000 using XDA-Developers mobile app
Hi man
I have a Lenovo p70
And I have 32 gb Kingston class 4
I re-partion my memory with apps2sd all in one
And I link the most apps to SD card but I have a problems
When restart my phone most of the apps disappear and I need to restart my phone with soft restart
What the problem and how I can solve it ??
---------- Post added at 01:22 PM ---------- Previous post was at 01:18 PM ----------
And I have a question for you
Step 5 optimizing ram I don't optimizing it
If it nessesary to work plz tell me
I'm so sorry for bad language
My shield has 11.95GB of space, not including the system Partition of 4.05GB. Using ES File Explorer, I have determined that I have 6.36GB of files on the tablet. However the system reports that I have used 11.94GB, so cannot download any apps or files. What is using up that remaining 5.59GB and is there any way to recover it?
try to check out with ES Explorer what's using the space or any other "sdcard" analyzer. Hope it helps. I used to use System Tuner Pro, from Developer 3c. Maybe the freeversion includes it.
ninjagospace said:
My shield has 11.95GB of space, not including the system Partition of 4.05GB. Using ES File Explorer, I have determined that I have 6.36GB of files on the tablet. However the system reports that I have used 11.94GB, so cannot download any apps or files. What is using up that remaining 5.59GB and is there any way to recover it?
Click to expand...
Click to collapse
I had this issue factory reset this will free up the missing gb[emoji106]
Had the same issue on multiple Android devices, it's just Android being Android.
Meaning crap :|
What I do is format the internal storage again (or factory reset but that seems like more of a PITA to me).
Before you format thought select and copy everything from the root directory of your *internal* storage to your *external storage* sd card (or onto your PC).
After you format select all the files you copied and copy back and bingo, storage recovered.
There might be a better way to do this, I'm not an expert.
Have you tried analysing your storage with an app like DiskUsage?:
https://play.google.com/store/apps/details?id=com.google.android.diskusage
Sent from my SHIELD Tablet using XDA Free mobile app
Kids, calm down, here's a pro tip:
Since 2.3> Most OEMs started having one partition for Data (App storage) and Internal Storage (<insert your files here>, i.e what pops up when connected to a PC). So what you are seeing are two things sharing one partition. System partition is separate and is usually filled up since it isn't supposed to be touched by the average joe, hence why most OEMs tend to fill it with whatever.
So what 12GB of storage you have free is filled up by downloaded apps and used user space, which is why you see the "internal storage" getting smaller and smaller for each app install. Before all this, Data partition used to be a separate partition being about 1-3 GB. Now this caused a lot of problems when it was quickly filled up, hence why Android/Google(?) decided to merge these two which solved this quite bothersome issue. Moving apps was of course possible around this time but usually only a small portion of the app data was moved into the "internal storage"
tldr: Data and "Internal storage" used to be two separate partitions, and now they're unified and people are confused even if it's been a standard for a few years now.