Recently, I upgraded my with a bigger SD Card with a partition of 512Mo on it.

I installed to place apps on SD card ext4 partition.

Then I had to create by hand, the mount script to have my partition used by . (certainly due to write access on /system mountage)

What I wander is if there is a way to ensure that on reboot, linked apps create their dalvik-cache directly on SD. What is happening on startup is that I need to open , select all my apps, and relink everything.

Is it a feature included in the mount script?

Or is it simply the way works?

PS: what is anoying is that the dalvik-cache takes too much place and can prevent some application from starting correctly.


Unlikely to be possible in this context, as Dalvik cache has a fixed system-wide location (/data/dalvik-cache). So you cannot have "linked apps place their dalvik cache directly on SD". Either all or nothing. Take a look at the tag-wiki for alternative approaches which might allow to move the entire cache to your SDCard. But a selective move IMHO is impossible.

Remark: An exception to this general rule are odexed ROMs, where the .odex files sit in the same place as the app, at least for system apps. So there might be a way to do the same for "user apps" which I have missed.)

  • Thanks @Izzy, that answered my question, for my needs I finnaly added a dummy .dc2sd file on my /sd-ext so etc/init.d/10apps2sd script move all the dalvik-cache to sd and nuke the one on internal memory. – Yannick Oct 10 '13 at 22:43
  • Thanks for your feedback, Yannick! So just for me to understand: On each boot, that script moves the Dalvik cache for the "marked" apps to SD? Doesn't that mean that on the next boot, Android will re-create it in /data/dalvik-cache? If so, what does the move improve (except for "temporary relief")? To me this looks dangerous. Imagine a few apps with a larger .dex, and think of low internal storage space when you reboot the device (because you installed one more big app, thinking you had the space) – and now Android rebuilds the .dex on internal storage, running out of space. – Izzy Oct 11 '13 at 7:14
  • The script 10apps2sd from Evervolv Project coming in my ROM mount /sd-ext/dalvik-cache as the /data/dalvik-cache so all .dex goes on sd-card. For the risk of big apps, I'll keep that in mind, I can install them on SD or make the symlinks with link2sd. So if the sd-card is not available those won't prevent system to load as system should have space. – Yannick Oct 11 '13 at 11:43
  • By the way, my HTC-Desire came with a 148Mo internal storage you might understand the need moving apps and data on external memory. – Yannick Oct 11 '13 at 11:44
  • One last thing as a feed back, don't let link2sd try to link dalvik-cache that is already present on sd-card. It will make a loop symlink on itself. :( – Yannick Oct 11 '13 at 11:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.