Android - SD card partitioning? why? how?

I'm on a rooted Samsung Spica running the stock Samsung 2.1 Eclair version.

Since my internal memory was limited to around 160 MB, I was hunting around for a simple enough solution and preferably freeware. I have an 8 GB card and IMO, allotting 1 GB would be more than adequate for all the games / apps that I'd want to keep for posterity but couldn't afford to occupy space within the limited internal memory that I had.

Enter Link2SD - it's freeware and works with Android 1.6 and above.

You will also need a partitioning tool - I used the excellent freeware Easeus Partition Manager (EPM) to ensure no data was erased during the repartitioning / resizing.

  1. First, download and install EPM.
  2. Pop your storage card into your card reader.
  3. Start EPM
  4. Your card should be visible amongst the other drives/partitions in your PC.
  5. Select the partition on your card - it should cover the entire length by default. Right-click & choose RESIZE/MOVE and then REDUCE the Partition Size (this is what shows in Windows) until the Unallocated Space size is of a suitable size. (The Unallocated space will be allocated as the partition on which your apps will be stored.) Click OK.

An aside - even though Link2SD supports the usage of the second partition (in which your apps will reside) created in the FAT / FAT32 format, Windows only recognizes the first PRIMARY partition which is why this newly created partition won't show within Windows inspite of it being FAT / FAT32. We shall be using either ext2 / ext3 or ext4 as the file system in any case.

Onward...

  1. Right-click this new Unallocated Space and choose CREATE. Click YES on the warning that describes what I've said above.
  2. Now, in the Partition Label, type in a label like "AndroidApps" or whatever suits you.
  3. This is CRITICAL - the CREATE AS should be PRIMARY
  4. Choose File System as EXT3 and click OK.
  5. Click APPLY in the main window's TOP LEFT corner (big blue check mark icon). EPM will carry out the operations. Congrats! You've just re-partitioned your card and without any data loss too. (Hopefully!)

Assuming you've installed Link2SD in your phone and the SD card has been re-inserted. 11. Reboot your phone.

  1. Start Link2SD and it should detect your partition.

  2. A list of apps is now displayed. Click the app you want to move to the card and then click CREATE LINK.

That's it.


To a Windows user "mass storage" means the FAT32 bit remainder of the SD card after partitioning. The ext partition won't be visible to Windows normally.

The ext partition will be used by some some the "store my apps on the SD card" implementations. Some use FAT32, some use ext2/ext3/ext4. For the latter it is an extension of your internal storage (with some caveats)

Personally, I don't use a partition: I have the custom Oxygen (good for CM7 too I think) HBOOT from alphrev.nl. Of course, this may not be everyone's cup of tea so you can partition it using ROM Manager or one of the custom recoveries (AnomRa, ClockWorkMod etc). Or use a linux live cd to partition it manually rather than from your phone