Transfer Apps & App Data To sd-ext And Back In CyanogenMod 7 [Android]
Do you own a Nexus One, an HTC Desire or any other Android device with ridiculously low internal memory? Constantly find your device out of memory while installing a new app even though you’ve transferred every last one to the SD card via Apps2SD? If your memory-deprived device supports CyanogenMod 7, then in S2E lies the end of your memory woes. The Apps2SD or Move to SD card feature partially transfers apps to the SD card, leaving their data in the internal memory. This CM7-only freeware can transfer user apps and their data, private apps, dalvik cache and/or download cache to an ext partition on your SD card and back in just a few taps and a system reboot.
Not only does S2E save you the trouble of installing data2ext scripts manually, it (unlike said scripts) allows you to choose what to transfer to the ext, when to transfer it and also lets you transfer it back.
You will, however, have to partition your SD card yourself using GParted or any other partitioning tool that allows formatting to the ext (extended) file system. Data2ext scripters recommend keeping the partition at or below 2 GB. A 512 MB ext2/ext3/ext4 partition proves to be sufficient for most users.
Note: Remember to back up the contents of your SD card before trying to partition it and create a nandroid backup of your device before using S2E. It’s better to be safe than sorry.
Once you’re done partitioning your SD card and creating a nandroid backup, launch S2E and check whatever you wish to move to the ext partition. If your partition hasn’t already been formatted to the ext4 file system, hit Menu, tap Settings and check Mount as ext4. This step is optional but recommended. The ext4 file system is, after all, the latest and fastest member of the extended file system family. You may also want to check Set read buffer for higher SD card read speeds. Leaving the Buffer size at a default value of 2 MB is recommended.
Once that is done, reboot your device to implement the selected changes.
When you reboot, S2E installs a script that transfers selected components to the /sd-ext system partition which is essentially a virtual path to the ext partition on the SD card. Any new apps you install after the reboot will remain in the internal memory until you reuse S2E.
You can check the state of your internal, ext and cache memory from Menu > Information. The app will ask you to install an additional app for that from the Market. If you do not wish to do so, simply hit Menu again, tap Settings and uncheck Extended partitions info. Select Information from the app menu again and it should display a pop-up containing info on DATA, SD-EXT and CACHE memory as shown in the screenshot on the right.
Although the developer warns of a decrease in performance if application data is moved, said performance decay is, for most apps, unnoticeable. In fact, if you have a class 10 SD card in your device, it may very well improve performance.
You can grab the app for free from the Android Market via the provided link or QR code.
Fantastic app, just updated all my apps and after S2E still had lots of internal memory left. HTC Desire. 5*****
BTW, I tried several times, but the only way I could get this to work was to make the 2nd partition also Primary. When I did extended/logical, my SD card would not mount. I used GParted to do this.
Oh this was very helpful sir! Thank you.
I’m currently using CyanogenMod 7.1 on Desire GSM and popped in an 8GB Class 4 card and S2E. Apps run about 80% as fast as when they weren’t on Ext but now I have 114MB free memory. I’m sure I can maintain it if all the new apps get moved to the Ext as well. So theoretically I should be able to get up to at least 100MB of essential (no Ext/SD) apps on there.
Thanks again!