[Q] Ext2 required for SD card apps (AuraxTSense rom)? - Desire Q&A, Help & Troubleshooting

Hi,
I'm confused about the right way to run the Desire with apps on the SD card. I'm running AuraxTSense with a FAT 32 formatted SD card.
I was able to ADB and run pm setInstallLocation 2, and I have the option tomove apps to the SD card, In addition, Titanium Backup and Apps2Sd reports that most of my apps are successfully located on SD card. Also, on the SD card, I see an "ASEC" directory that seems to contain most of my apps; I thought that this was an indication that the apps were located there.
However, it doesn't seem like moving apps to the SD card has worked properly. Whenever I install an app, it looks like it goes on the SD card, but I lose the size of the app from my internal memory. Also, when I uninstall, the corresponding amount of space frees up in my internal memory. I've verified this with the DiskUsage app.
Has anyone else noticed anything like this? Should I have created an Ext2 partition for apps to successfully install just to the SD card?

Hey there,
It seems as if you are just using Froyo's built-in apps on SD card function.
This just takes some of the files from the app and places them in .android_secure on the SD card, but large parts of the application may still remain in internal memory.
You can see just how much is left in your internal memory by scrolling to an app in Settings > Applications > Manage Applications. The "total" space taken in this screen is the space taken on your internal memory.
I'm afraid this is the best Froyo can do. If you have moved all apps to SD card you can and you're still running out of space, you may need to install a custom ROM with Apps2SD.
Hope this helps

aha.
Thanks, that cleared things up for me. I was puzzled when I did this
- checked cardiotrainer in 'Manage Applications', saw 2.5 mb total
- moved it to the phone, checked 'Manage Applications', saw 7.3 mb total
- moved it to SD card, saw 2.5 mb again
I didn't realize that the "total" was just the total in internal memory, and that only a portion of the app was getting moved.
thanks very much for the clarification.

craigcharlie said:
I didn't realize that the "total" was just the total in internal memory, and that only a portion of the app was getting moved.
Click to expand...
Click to collapse
The "whole" of the app itself gets moved to SD card.
What does not get moved is:
1. The Dalvik cache entries
2. Any data stored in /data/data
Note that no version of "legacy" A2SD (i.e. those using an EXT partition on SD card) moves /data/data to SD card due to stability concerns.
Personally, I use Froyo A2SD, but compress the Dalvik cache using fusecompress.
Regards,
Dave

That's more great info, thank you.
After doing some research, I noticed that the AuraxTSense ROM supported Apps2Sd and Dalvik2Sd, both of which require an ext2 partition.
I decided to take the plunge and format my SD card to add an ext2 partition.
I used the following steps
- backed up everything to sdcard with titanium backup
- backed up all sdcard data to my pc
- used ROM manager to partition the card (512mb ext, 64 mb swap)
I've since rebooted and now my storage is reported at 122 mb, instead of 18
Simply put, this rocks. I've just copied all my data back to the SD card (including the ASEC folder, the apps I'd 'moved' to the card before relied on these files) and my apps seem to be working fine.
Now that I have all this space, I can actually move the more intensive apps back to the phone now, since this should increase performance.
thanks to all who answered, I hope this thread helps some people who were as frustrated as I was by the lack of space on this awesome phone!

foxmeister said:
The "whole" of the app itself gets moved to SD card.
What does not get moved is:
1. The Dalvik cache entries
2. Any data stored in /data/data
Note that no version of "legacy" A2SD (i.e. those using an EXT partition on SD card) moves /data/data to SD card due to stability concerns.
Personally, I use Froyo A2SD, but compress the Dalvik cache using fusecompress.
Regards,
Dave
Click to expand...
Click to collapse
@foxmeister
Pls how do you do the fuse compress, need a guide.
Sent from my HTC Desire using XDA App

@scorror
Look at this thread here.
I suggest you read the entire thread, but post #29 contains the update zip relevant to the kernel on my device.
Regards,
Dave

Just another update to say that my phone is working great.
It's like a completely different phone. I thought that 2 or 3 FCs a day were normal. I haven't had one since I moved to this method.
I'd like to highlight that I unset pm setInstallLocation.
To be honest, I think that that caused many of my problems. I had several apps whose widgets kept disappearing after lock/reboot. after unsetting setInstallLOcation and reinstalling the offending apps, the widgets are no longer disappearing.
The phone seems faster as well. I read a comment some where that AuraxTSense might seem a bit slower if you didn't have an ext2 partition, and I have to say that in my experience this is definitely the case.

Related

[Q] A2SD+ Confusion

I'm pretty confused at the moment about the differences between stock froyo a2sd, A2SD+ and 'old A2SD+'. so far from what i'm seeing, using A2SD+ seems to be the best idea, but i'm not sure why this is better, or how to install it as there seem to be tons of different ways.
1. Which one should i use
2. How do you partition your SD card
3. what is this all about ext 2,3,4?
4. Can i set up the partitions using the clockwork mod recovery or rom manager? and how.
Just Sorry if this is repeated else where but i've found it pretty hard to find what i'm looking for (yes even using the search function)
I'd also like to know the answer to this, especially q3
i partitioned my sd card using Rom Manager but i didnt get an option for Ext 2/3/4 when i installed LeeDroid 1.6.
Seems like the new Froyo Roms say Ext 4 is the way to go.
I too would like to know this.
Also, do I need to format into partitions before / during / after flashing a ROM?
I can't partition with ROM Manager at all. It reboots into clockwork recovery mod, and it says
Finding update package Finding update package update package... E:failed to seek in /cache/update.zip (Invalid argument) I:verify_file returned 1 E:signature verification failed Installation aborted.
edit: fixed by nandroid restoring back to 2.1 and trying again
1. A2SD+ is probs the best to use
2. create ext2/3/4 within ROM manager
3. the extension is a portion of your sd card to store your apps i dont know the difference between the 3 but essentially you create the ext2/3/4 so your apps can be forced to the sd card, the froyo apps2sd is designed for apps that are coded to go on the sd card, the Dev of the app has to make it able to run on an sd card. that's why on some apps, you will see the option to move to sd card is shaded out, that is because the Dev has not coded that particular app to run on the sd card
4. see #2
hope this helps
DesireableHTC said:
1. A2SD+ is probs the best to use
2. create ext2/3/4 within ROM manager
3. the extension is a portion of your sd card to store your apps i dont know the difference between the 3 but essentially you create the ext2/3/4 so your apps can be forced to the sd card, the froyo apps2sd is designed for apps that are coded to go on the sd card, the Dev of the app has to make it able to run on an sd card. that's why on some apps, you will see the option to move to sd card is shaded out, that is because the Dev has not coded that particular app to run on the sd card
4. see #2
hope this helps
Click to expand...
Click to collapse
If i create the partitions in Rom Manager, does this create ext 2/3 and 4? what partitions size / swap etc settings should i use? I have a 4gb card so what ever is best really for that?
DesireableHTC said:
1. A2SD+ is probs the best to use
2. create ext2/3/4 within ROM manager
3. the extension is a portion of your sd card to store your apps i dont know the difference between the 3 but essentially you create the ext2/3/4 so your apps can be forced to the sd card, the froyo apps2sd is designed for apps that are coded to go on the sd card, the Dev of the app has to make it able to run on an sd card. that's why on some apps, you will see the option to move to sd card is shaded out, that is because the Dev has not coded that particular app to run on the sd card
4. see #2
hope this helps
Click to expand...
Click to collapse
In ROM Manager if you Select "Partition SD card" in Utilities, you pick the size etc but you dont get to pick Ext 2, 3 or 4, does this matter?
coriron said:
I'm pretty confused at the moment about the differences between stock froyo a2sd, A2SD+ and 'old A2SD+'. so far from what i'm seeing, using A2SD+ seems to be the best idea, but i'm not sure why this is better, or how to install it as there seem to be tons of different ways.
1. Which one should i use
2. How do you partition your SD card
3. what is this all about ext 2,3,4?
4. Can i set up the partitions using the clockwork mod recovery or rom manager? and how.
Just Sorry if this is repeated else where but i've found it pretty hard to find what i'm looking for (yes even using the search function)
Click to expand...
Click to collapse
Ok, so here's the deal, in a very longwinded way that should hopefully explain everything and answer ALL questions.
You have an SD card in your phone and, a bit like normal PC Hard Drives, you can "partition" them (split them into two or more sections of different filesystems). Normally, your SD card is just one big FAT32 partition, which is fine for storing your pics, messages, emails, etc.
Now, other then your Phone's SD card, your phone will have its own internal flash memory (or "NAND") storage. Tradditionally with Android, you could only install applications to this NAND storage, you cannot install them onto your SD card. So if you have an empty 32GB SD card, but only 5Mb of internal phone storage, you still wont be able to install many apps, if any at all.
This was done to protect the apps from things like piracy - it's not easy to access the location where apps are installed on your phone's internal storage (normally impossible without root), so you can't for example buy an app, copy it, refund it, then install it again.
Still, this is no good for those of us who like to install lots and lots of apps, legitimately, as we run out of internal storage very quickly.
So Google came up with a way to install apps to the SD card. A folder is created called something like .android_secure and this stores (I believe) encrypted versions of applications, but there's a few catches:
1) Apps aren't automatically stored here, you have to manually "move" them
2) Not all apps are capable of being moved, in fact most apps aren't, the developer needs to update their app and allow it. Some apps aren't and wont be updated and some developers may not want to allow it for whatever reason.
3) Not all app data is moved, most of it is but some data is left on your phone so many people still run out of internal storage quickly.
4) You can force ALL apps to be moved to this area by default, but it breaks incompatible ones - such as Widgets, which are unable to load due to the SD card not being "prepared".
So that's Froyo's version. Before Froyo existed, some very clever people came up with a thing called "Apps2SD". Remember I said that your SD card normally is one big FAT32 partition? Well, Apps2SD works by having your SD card patitioned into TWO filesystems. A normal FAT32 partition for your usual stuff and a secondary "EXT" partition. EXT is just a filesystem, like FAT32 or NTFS, but it's the filesystem used by Android internally. The SD card is normally FAT32 because it's a "universal" filesystem, that just about any machine will be able to read, whereas EXT filesystems are generally Linux only, but I digress.
EXT has several different versions. The most common one you'll see is ext3. The main difference between ext2 and ext3 is "journaling", which is just a fancy way of saying that should an operation (such as copying, writing or reading) be interrupted unexpectedly (say, by you turning your phone off), then no data should be lost or corrupted. You know how when you turn your phone on, it says "preparing SD card"? It takes a few minutes, but what it's actually doing is checking that the FAT32 partition hasn't been damaged, because FAT does NOT have journaling. If you used a computer back in the Windows 98 days, you may remember that lovely blue "Scandisk" screen that had to run every time you didn't shut your computer down correctly - that's the same thing. But then Windows 2000/XP came along with NTFS, which also has journaling, meaning you had less chance of loosing data. But I digress once more.
So you have your SD card partitioned into EXT and FAT32. Generally it doesn't matter if it's ext3 or ext4, but you don't get any real advantage with ext4 over ext3 in this instance. Apps2SD then runs a special script on your phone which "symbolically links" the folder from your phone's internal storage where your apps are normally stored, to the ext partition on your SD card. A symbolic link is a bit like a shortcut for folders, except it's transparent to the OS: In other words, Android doesn't know that when it's installing it's apps to the internal phone storage, it's actually being stored on the SD card. This effectively boosts your internal phone memory from the previous 5mb that you had in my example above, up to whatever size you made the ext partition on your SD card (often 512Mb or 1Gb, but it depends on how many apps you install).
Plus, because it's "journaled", it doesn't need to be "prepared", meaning it's ready to go as soon as the phone starts - so your widgets and apps work immediately (unlike "forced" Froyo Apps2SD, where widgets disappear).
The catch with Apps2SD is that whatever space the ext partition takes up is taken away from the SD card. So if you have a 4Gb card (with something like 3.5Gb of actual storage) and you make a 512Mb ext partition, your SD card will "shrink" to 3Gb. The space isn't actually lost, it's just being used by the ext partition. If you reformat your card, you'll get it back.
Finally, there's a difference between "Apps2SD" and "Apps2SD+". Remember I said that your apps are stored on a special folder inside your Phone's NAND storage? Well, that was a bit of a lie. It's actually stored in TWO places. There's a second area which is called the Davlik Cache. You don't really need to worry about what this is for (Hint: IT's to do with the Java runetime your phone uses to run apps), all you need to know is that apps use it to store data, which also eats up internal phone memory. Apps2SD+ moves davlik cache to the ext partition on your SD card as well, freeing up even more space. Some people believe that this may come at the cost of performance, as the internal NAND memory should be faster than your SD card (Which is why you also get people arguing over which "class" SD card is better for Apps2SD - the logic being that a faster SD card means less impact from this move), but the truth of the matter is that your applications will be running from your Phone's RAM anyway, so performance isn't really impacted at all. Since most apps are only a few hundred Kb's in size, or a couple of MB at the most, it's a non-issue.
Finally, any recent version of Apps2SD/Apps2SD+ should work with an SD card that is or isn't formatted with an ext partition. It'll check for this partition when your phone first boots and if it's not there, just use internal phone storage.
Having an ext partition WITHOUT Apps2SD+ shouldn't cause any issues, either, so you can format your SD card whenever you're ready.
So in summary:
Apps2SD "fakes" your phone's internal memory and puts it all on a hidden section of your SD card.
Apps2SD+ pushes even more content to the SD card, freeing up even more space on the phone itself.
"Froyo" Apps2SD has various limitations that "old" apps2SD does not, but is much easier to handle as it doesn't involve any kind of "partitioning".
@neoKushan Thank you very much. I understand the theory behind it a lot better now. Didn't actually realize EXT was a kind of file system so it makes a lot more sense now. So seemingly Apps2SD/+ is a lot better than the froyo (in certain situations). What is the best method to partition your sd card and install Apps2SD+? I think i've seen that a lot of the ROMS now will install the Apps2SD+ for you if you have partitioned your SD card, so i'm guessing thats the only step i need to take.
As far as I have seen, all of the recoveries out there have a way to partition the SD card. So AmunRA's or ClockworkMOD's (ROM Manager).
My personal preference is ROM Manager as it's very easy to do from the GUI.
Word of Warning, though: Partitioning your SD WILL DELETE ALL DATA ON IT!
Do what I did: Copy the contents of your SD card to your PC, partition the SD card, then copy the contents back.
thanks, that is superb! thanks for taking the time to type it up
this should be posted in the faqs section as it will might stop a lot of these recurring threads
one other question, some ROMs ask you to wipe your Ext partition, where do you do this ?
If i reboot to ClockworkMod Recovery there is a Wipe cache Partition, is this it?
thanks
neoKushan said:
Ok, so here's the deal, in a very longwinded way that should hopefully explain everything and answer ALL questions.
You have an SD card in your phone and, a bit like normal PC Hard Drives, you can "partition" them (split them into two or more sections of different filesystems). Normally, your SD card is just one big FAT32 partition, which is fine for storing your pics, messages, emails, etc.
Now, other then your Phone's SD card, your phone will have its own internal flash memory (or "NAND") storage. Tradditionally with Android, you could only install applications to this NAND storage, you cannot install them onto your SD card. So if you have an empty 32GB SD card, but only 5Mb of internal phone storage, you still wont be able to install many apps, if any at all.
This was done to protect the apps from things like piracy - it's not easy to access the location where apps are installed on your phone's internal storage (normally impossible without root), so you can't for example buy an app, copy it, refund it, then install it again.
Still, this is no good for those of us who like to install lots and lots of apps, legitimately, as we run out of internal storage very quickly.
So Google came up with a way to install apps to the SD card. A folder is created called something like .android_secure and this stores (I believe) encrypted versions of applications, but there's a few catches:
1) Apps aren't automatically stored here, you have to manually "move" them
2) Not all apps are capable of being moved, in fact most apps aren't, the developer needs to update their app and allow it. Some apps aren't and wont be updated and some developers may not want to allow it for whatever reason.
3) Not all app data is moved, most of it is but some data is left on your phone so many people still run out of internal storage quickly.
4) You can force ALL apps to be moved to this area by default, but it breaks incompatible ones - such as Widgets, which are unable to load due to the SD card not being "prepared".
So that's Froyo's version. Before Froyo existed, some very clever people came up with a thing called "Apps2SD". Remember I said that your SD card normally is one big FAT32 partition? Well, Apps2SD works by having your SD card patitioned into TWO filesystems. A normal FAT32 partition for your usual stuff and a secondary "EXT" partition. EXT is just a filesystem, like FAT32 or NTFS, but it's the filesystem used by Android internally. The SD card is normally FAT32 because it's a "universal" filesystem, that just about any machine will be able to read, whereas EXT filesystems are generally Linux only, but I digress.
EXT has several different versions. The most common one you'll see is ext3. The main difference between ext2 and ext3 is "journaling", which is just a fancy way of saying that should an operation (such as copying, writing or reading) be interrupted unexpectedly (say, by you turning your phone off), then no data should be lost or corrupted. You know how when you turn your phone on, it says "preparing SD card"? It takes a few minutes, but what it's actually doing is checking that the FAT32 partition hasn't been damaged, because FAT does NOT have journaling. If you used a computer back in the Windows 98 days, you may remember that lovely blue "Scandisk" screen that had to run every time you didn't shut your computer down correctly - that's the same thing. But then Windows 2000/XP came along with NTFS, which also has journaling, meaning you had less chance of loosing data. But I digress once more.
So you have your SD card partitioned into EXT and FAT32. Generally it doesn't matter if it's ext3 or ext4, but you don't get any real advantage with ext4 over ext3 in this instance. Apps2SD then runs a special script on your phone which "symbolically links" the folder from your phone's internal storage where your apps are normally stored, to the ext partition on your SD card. A symbolic link is a bit like a shortcut for folders, except it's transparent to the OS: In other words, Android doesn't know that when it's installing it's apps to the internal phone storage, it's actually being stored on the SD card. This effectively boosts your internal phone memory from the previous 5mb that you had in my example above, up to whatever size you made the ext partition on your SD card (often 512Mb or 1Gb, but it depends on how many apps you install).
Plus, because it's "journaled", it doesn't need to be "prepared", meaning it's ready to go as soon as the phone starts - so your widgets and apps work immediately (unlike "forced" Froyo Apps2SD, where widgets disappear).
The catch with Apps2SD is that whatever space the ext partition takes up is taken away from the SD card. So if you have a 4Gb card (with something like 3.5Gb of actual storage) and you make a 512Mb ext partition, your SD card will "shrink" to 3Gb. The space isn't actually lost, it's just being used by the ext partition. If you reformat your card, you'll get it back.
Finally, there's a difference between "Apps2SD" and "Apps2SD+". Remember I said that your apps are stored on a special folder inside your Phone's NAND storage? Well, that was a bit of a lie. It's actually stored in TWO places. There's a second area which is called the Davlik Cache. You don't really need to worry about what this is for (Hint: IT's to do with the Java runetime your phone uses to run apps), all you need to know is that apps use it to store data, which also eats up internal phone memory. Apps2SD+ moves davlik cache to the ext partition on your SD card as well, freeing up even more space. Some people believe that this may come at the cost of performance, as the internal NAND memory should be faster than your SD card (Which is why you also get people arguing over which "class" SD card is better for Apps2SD - the logic being that a faster SD card means less impact from this move), but the truth of the matter is that your applications will be running from your Phone's RAM anyway, so performance isn't really impacted at all. Since most apps are only a few hundred Kb's in size, or a couple of MB at the most, it's a non-issue.
Finally, any recent version of Apps2SD/Apps2SD+ should work with an SD card that is or isn't formatted with an ext partition. It'll check for this partition when your phone first boots and if it's not there, just use internal phone storage.
Having an ext partition WITHOUT Apps2SD+ shouldn't cause any issues, either, so you can format your SD card whenever you're ready.
So in summary:
Apps2SD "fakes" your phone's internal memory and puts it all on a hidden section of your SD card.
Apps2SD+ pushes even more content to the SD card, freeing up even more space on the phone itself.
"Froyo" Apps2SD has various limitations that "old" apps2SD does not, but is much easier to handle as it doesn't involve any kind of "partitioning".
Click to expand...
Click to collapse
@neoKusha
Top post! Thanks very much.
So if you're using A2SD+, do the "move to phone" and "move to SD card" buttons actually do anything or are they just left there from legacy A2SD? And what does the "Auto" setting of ModInstallLocation actually do? How does it decide whether to install to internal or external?
chipyy said:
So if you're using A2SD+, do the "move to phone" and "move to SD card" buttons actually do anything or are they just left there from legacy A2SD? And what does the "Auto" setting of ModInstallLocation actually do? How does it decide whether to install to internal or external?
Click to expand...
Click to collapse
Move to SD would still work, all it would do is move from the ext partition on the SD card to the FAT32 partition (in the .android_secure folder).
neoKushan said:
Move to SD would still work, all it would do is move from the ext partition on the SD card to the FAT32 partition (in the .android_secure folder).
Click to expand...
Click to collapse
Doh, so essentially they mean the opposite?!
What about the ModInstallLocation app, if you leave that set on Auto, how does it decide where to install things?
Rom Manager asks me to set the partition sizes, then reboots into clockworkmod recovery. No partitioning appears to have been done to the phone though. What am I supposed to do? Or is this a bug?
+1 THX very much to neoKusha! couldn't be explained on a better way!
just one question: ROMmanager makes an ext3 partition, isn't it?
THX again
Dg
chipyy said:
Doh, so essentially they mean the opposite?!
What about the ModInstallLocation app, if you leave that set on Auto, how does it decide where to install things?
Click to expand...
Click to collapse
Think about it like this. When using "old" Apps2SD (or Apps2SD+), you're installing your apps to a hidden part of the SD card, a part so hidden that even Android itself doesn't realise it's there, it just thinks it's your phone's internal storage. So when it says "move to SD", it doesn't realise that it's already ON the SD.
As for the ModInstallLocation, I don't use it so I can't comment, but no matter what it picks, it'll always end up on the SD card if you're using Apps2SD, all that changes is which partition it'll end up on. "Internal" storage will be the EXT partition and "SD" will be the .android_secure folder.
However, if you're using Apps2SD, you're better off installing to "internal" storage (As in, the EXT partition) as it's more compatible than Froyo's SD card storage.
irishdroid said:
Rom Manager asks me to set the partition sizes, then reboots into clockworkmod recovery. No partitioning appears to have been done to the phone though. What am I supposed to do? Or is this a bug?
Click to expand...
Click to collapse
I'm not sure, perhaps it's already partitioned. Have you tried doing it from within Clockwork recovery itself?
Dave_G7 said:
+1 THX very much to neoKusha! couldn't be explained on a better way!
just one question: ROMmanager makes an ext3 partition, isn't it?
THX again
Dg
Click to expand...
Click to collapse
I believe so.
from another post I have this sizes:
0mb swap
512 mb ext
neoKushan said:
Ok, so here's the deal, in a very longwinded way that should hopefully explain everything and answer ALL questions.
You have an SD card in your phone and, a bit like normal PC Hard Drives, you can "partition" them (split them into two or more sections of different filesystems). Normally, your SD card is just one big FAT32 partition, which is fine for storing your pics, messages, emails, etc.
Now, other then your Phone's SD card, your phone will have its own internal flash memory (or "NAND") storage. Tradditionally with Android, you could only install applications to this NAND storage, you cannot install them onto your SD card. So if you have an empty 32GB SD card, but only 5Mb of internal phone storage, you still wont be able to install many apps, if any at all.
This was done to protect the apps from things like piracy - it's not easy to access the location where apps are installed on your phone's internal storage (normally impossible without root), so you can't for example buy an app, copy it, refund it, then install it again.
Still, this is no good for those of us who like to install lots and lots of apps, legitimately, as we run out of internal storage very quickly.
So Google came up with a way to install apps to the SD card. A folder is created called something like .android_secure and this stores (I believe) encrypted versions of applications, but there's a few catches:
1) Apps aren't automatically stored here, you have to manually "move" them
2) Not all apps are capable of being moved, in fact most apps aren't, the developer needs to update their app and allow it. Some apps aren't and wont be updated and some developers may not want to allow it for whatever reason.
3) Not all app data is moved, most of it is but some data is left on your phone so many people still run out of internal storage quickly.
4) You can force ALL apps to be moved to this area by default, but it breaks incompatible ones - such as Widgets, which are unable to load due to the SD card not being "prepared".
So that's Froyo's version. Before Froyo existed, some very clever people came up with a thing called "Apps2SD". Remember I said that your SD card normally is one big FAT32 partition? Well, Apps2SD works by having your SD card patitioned into TWO filesystems. A normal FAT32 partition for your usual stuff and a secondary "EXT" partition. EXT is just a filesystem, like FAT32 or NTFS, but it's the filesystem used by Android internally. The SD card is normally FAT32 because it's a "universal" filesystem, that just about any machine will be able to read, whereas EXT filesystems are generally Linux only, but I digress.
EXT has several different versions. The most common one you'll see is ext3. The main difference between ext2 and ext3 is "journaling", which is just a fancy way of saying that should an operation (such as copying, writing or reading) be interrupted unexpectedly (say, by you turning your phone off), then no data should be lost or corrupted. You know how when you turn your phone on, it says "preparing SD card"? It takes a few minutes, but what it's actually doing is checking that the FAT32 partition hasn't been damaged, because FAT does NOT have journaling. If you used a computer back in the Windows 98 days, you may remember that lovely blue "Scandisk" screen that had to run every time you didn't shut your computer down correctly - that's the same thing. But then Windows 2000/XP came along with NTFS, which also has journaling, meaning you had less chance of loosing data. But I digress once more.
So you have your SD card partitioned into EXT and FAT32. Generally it doesn't matter if it's ext3 or ext4, but you don't get any real advantage with ext4 over ext3 in this instance. Apps2SD then runs a special script on your phone which "symbolically links" the folder from your phone's internal storage where your apps are normally stored, to the ext partition on your SD card. A symbolic link is a bit like a shortcut for folders, except it's transparent to the OS: In other words, Android doesn't know that when it's installing it's apps to the internal phone storage, it's actually being stored on the SD card. This effectively boosts your internal phone memory from the previous 5mb that you had in my example above, up to whatever size you made the ext partition on your SD card (often 512Mb or 1Gb, but it depends on how many apps you install).
Plus, because it's "journaled", it doesn't need to be "prepared", meaning it's ready to go as soon as the phone starts - so your widgets and apps work immediately (unlike "forced" Froyo Apps2SD, where widgets disappear).
The catch with Apps2SD is that whatever space the ext partition takes up is taken away from the SD card. So if you have a 4Gb card (with something like 3.5Gb of actual storage) and you make a 512Mb ext partition, your SD card will "shrink" to 3Gb. The space isn't actually lost, it's just being used by the ext partition. If you reformat your card, you'll get it back.
Finally, there's a difference between "Apps2SD" and "Apps2SD+". Remember I said that your apps are stored on a special folder inside your Phone's NAND storage? Well, that was a bit of a lie. It's actually stored in TWO places. There's a second area which is called the Davlik Cache. You don't really need to worry about what this is for (Hint: IT's to do with the Java runetime your phone uses to run apps), all you need to know is that apps use it to store data, which also eats up internal phone memory. Apps2SD+ moves davlik cache to the ext partition on your SD card as well, freeing up even more space. Some people believe that this may come at the cost of performance, as the internal NAND memory should be faster than your SD card (Which is why you also get people arguing over which "class" SD card is better for Apps2SD - the logic being that a faster SD card means less impact from this move), but the truth of the matter is that your applications will be running from your Phone's RAM anyway, so performance isn't really impacted at all. Since most apps are only a few hundred Kb's in size, or a couple of MB at the most, it's a non-issue.
Finally, any recent version of Apps2SD/Apps2SD+ should work with an SD card that is or isn't formatted with an ext partition. It'll check for this partition when your phone first boots and if it's not there, just use internal phone storage.
Having an ext partition WITHOUT Apps2SD+ shouldn't cause any issues, either, so you can format your SD card whenever you're ready.
So in summary:
Apps2SD "fakes" your phone's internal memory and puts it all on a hidden section of your SD card.
Apps2SD+ pushes even more content to the SD card, freeing up even more space on the phone itself.
"Froyo" Apps2SD has various limitations that "old" apps2SD does not, but is much easier to handle as it doesn't involve any kind of "partitioning".
Click to expand...
Click to collapse
One last question... When I let ROM Manager create a Ext partition it also ask for the swap setting? What to choose here, I have chosen the default now.

[Q] How do I move apps to SD card?

I'm running cyanogen 6.1 and go to applications and then click on one and click move to SD card but only like 1/4 or less sometimes of applications get moved to the SD card. Is that all that you can move or is there a way to move more?
I just used ROMmanager to partition my sd card thinking that would fix the problem but it didnt
froyo's built in move apps to sd card doesn't move every part of the app. Some stuff still resides and gets stored in your internal memory. This is why people still use apps2ext in froyo on the slide. There is a pretty good tutorial on how to set this up manually if you don't have a cm6.1 that someone built it in to (or you can download one of the cm6.1 based roms with it built in). It will help alot. Just moving the dalvik-cache to the ext partition will free up a bunch of internal memory.

[Q] APPS2SD+

hi,
I have just installed my first custom ROM - PyramidMod007_v10... thanks to all the great resources on these forums that helped me get away from the Official Gingerbread.
I have a question about the APPS2SD feature... I don't really understand how it works. I created a 512mb ext3 partition on my SD Card and installed the new ROM.
My question is... Do the apps automatically get installed to the Ext partition now... therefore do I not need to move to SD Card? It seems when i do move to SD card as an experiment - sometime the APPS2SD storage goes up and sometimes the Internal Storage goes up??
I'm confused - owing mainly to the fact that I have no idea how this all works!
This is the data from Quick System Info:
SD Storage - 6.92GB Free: 6.19GB
A2SD - Total: 504MB Free: 213MB
Internal - Total 148MB Free 122MB
System Storage - Total 250MB Free: 13.12MB
System Cache - Total 220MB Free: 202MB
Thanks
Its a script that runs at start up (/system/etc/init.d/)
The a2sd script symbolically links /data/app (where your apps are installed) to /sd-ext/app. This means any app in /data/app is "moved" by the script to /sd-ext/app.
However an app is more than the apk in data/app. It also has /data/data/ and in there are libs, preferences and data for each app. Also there is /data/dalvik-cache. This is usally also symlinked (to /sd-ext/dalvik-cache/)
Using "move to SD" uses googles own implementation. Historically, this literally moved the apk to /sdcard/.android_secure/ however now in Gingerbread it also moves the libs (if an app has libs).
"move to SD" moves more in GB than in Froyo but still not more than a2sd+ (if dalvik is moved) however, you will find as it moves the libs, if you combine both, even more space is spared but to me this is far too reliant on the SD card
app2sd
Hello XDA!!
i am just giving the some information here for my fellow android mates!!
here's all u need to know about Ext2,Ext3,Ext4 app2sd
Ok, so here's the deal, in a very longwinded way that should hopefully explain everything and answer ALL questions.
You have an SD card in your phone and, a bit like normal PC Hard Drives, you can "partition" them (split them into two or more sections of different filesystems). Normally, your SD card is just one big FAT32 partition, which is fine for storing your pics, messages, emails, etc.
Now, other then your Phone's SD card, your phone will have its own internal flash memory (or "NAND") storage. Tradditionally with Android, you could only install applications to this NAND storage, you cannot install them onto your SD card. So if you have an empty 32GB SD card, but only 5Mb of internal phone storage, you still wont be able to install many apps, if any at all.
This was done to protect the apps from things like piracy - it's not easy to access the location where apps are installed on your phone's internal storage (normally impossible without root), so you can't for example buy an app, copy it, refund it, then install it again.
Still, this is no good for those of us who like to install lots and lots of apps, legitimately, as we run out of internal storage very quickly.
So Google came up with a way to install apps to the SD card. A folder is created called something like .android_secure and this stores (I believe) encrypted versions of applications, but there's a few catches:
1) Apps aren't automatically stored here, you have to manually "move" them
2) Not all apps are capable of being moved, in fact most apps aren't, the developer needs to update their app and allow it. Some apps aren't and wont be updated and some developers may not want to allow it for whatever reason.
3) Not all app data is moved, most of it is but some data is left on your phone so many people still run out of internal storage quickly.
4) You can force ALL apps to be moved to this area by default, but it breaks incompatible ones - such as Widgets, which are unable to load due to the SD card not being "prepared".
So that's Froyo's version. Before Froyo existed, some very clever people came up with a thing called "Apps2SD". Remember I said that your SD card normally is one big FAT32 partition? Well, Apps2SD works by having your SD card patitioned into TWO filesystems. A normal FAT32 partition for your usual stuff and a secondary "EXT" partition. EXT is just a filesystem, like FAT32 or NTFS, but it's the filesystem used by Android internally. The SD card is normally FAT32 because it's a "universal" filesystem, that just about any machine will be able to read, whereas EXT filesystems are generally Linux only, but I digress.
EXT has several different versions. The most common one you'll see is ext3. The main difference between ext2 and ext3 is "journaling", which is just a fancy way of saying that should an operation (such as copying, writing or reading) be interrupted unexpectedly (say, by you turning your phone off), then no data should be lost or corrupted. You know how when you turn your phone on, it says "preparing SD card"? It takes a few minutes, but what it's actually doing is checking that the FAT32 partition hasn't been damaged, because FAT does NOT have journaling. If you used a computer back in the Windows 98 days, you may remember that lovely blue "Scandisk" screen that had to run every time you didn't shut your computer down correctly - that's the same thing. But then Windows 2000/XP came along with NTFS, which also has journaling, meaning you had less chance of loosing data. But I digress once more.
So you have your SD card partitioned into EXT and FAT32. Generally it doesn't matter if it's ext3 or ext4, but you don't get any real advantage with ext4 over ext3 in this instance. Apps2SD then runs a special script on your phone which "symbolically links" the folder from your phone's internal storage where your apps are normally stored, to the ext partition on your SD card. A symbolic link is a bit like a shortcut for folders, except it's transparent to the OS: In other words, Android doesn't know that when it's installing it's apps to the internal phone storage, it's actually being stored on the SD card. This effectively boosts your internal phone memory from the previous 5mb that you had in my example above, up to whatever size you made the ext partition on your SD card (often 512Mb or 1Gb, but it depends on how many apps you install).
Plus, because it's "journaled", it doesn't need to be "prepared", meaning it's ready to go as soon as the phone starts - so your widgets and apps work immediately (unlike "forced" Froyo Apps2SD, where widgets disappear).
The catch with Apps2SD is that whatever space the ext partition takes up is taken away from the SD card. So if you have a 4Gb card (with something like 3.5Gb of actual storage) and you make a 512Mb ext partition, your SD card will "shrink" to 3Gb. The space isn't actually lost, it's just being used by the ext partition. If you reformat your card, you'll get it back.
Finally, there's a difference between "Apps2SD" and "Apps2SD+". Remember I said that your apps are stored on a special folder inside your Phone's NAND storage? Well, that was a bit of a lie. It's actually stored in TWO places. There's a second area which is called the Davlik Cache. You don't really need to worry about what this is for (Hint: IT's to do with the Java runetime your phone uses to run apps), all you need to know is that apps use it to store data, which also eats up internal phone memory. Apps2SD+ moves davlik cache to the ext partition on your SD card as well, freeing up even more space. Some people believe that this may come at the cost of performance, as the internal NAND memory should be faster than your SD card (Which is why you also get people arguing over which "class" SD card is better for Apps2SD - the logic being that a faster SD card means less impact from this move), but the truth of the matter is that your applications will be running from your Phone's RAM anyway, so performance isn't really impacted at all. Since most apps are only a few hundred Kb's in size, or a couple of MB at the most, it's a non-issue.
Finally, any recent version of Apps2SD/Apps2SD+ should work with an SD card that is or isn't formatted with an ext partition. It'll check for this partition when your phone first boots and if it's not there, just use internal phone storage.
Having an ext partition WITHOUT Apps2SD+ shouldn't cause any issues, either, so you can format your SD card whenever you're ready.
So in summary:
Apps2SD "fakes" your phone's internal memory and puts it all on a hidden section of your SD card.
Apps2SD+ pushes even more content to the SD card, freeing up even more space on the phone itself.
"Froyo" Apps2SD has various limitations that "old" apps2SD does not, but is much easier to handle as it doesn't involve any kind of "partitioning"
Hello AlAxe
Thanks for great discription of How A2SD works. I have a question:
AlAxe said:
Hello XDA!!
i am just giving the some information here for my fellow android mates!!
here's all u need to know about Ext2,Ext3,Ext4 app2sd
....
.....
So in summary:
Apps2SD "fakes" your phone's internal memory and puts it all on a hidden section of your SD card.
Apps2SD+ pushes even more content to the SD card, freeing up even more space on the phone itself.
"Froyo" Apps2SD has various limitations that "old" apps2SD does not, but is much easier to handle as it doesn't involve any kind of "partitioning"
Click to expand...
Click to collapse
Is this www.beginnerstech.co.uk/apps2sd-for-rooted-androids APP2SD+ you mention above? or there are another link you have?
Also, between above app and this one [Script] App2sd which one do you prefer? thanks again...
Regards
That script you posted is very old, a lot of custom Roms have their own scripts built in so you don't have to worry about this any more
If you really want to use that one, read the differences in that post to find out which you prefer. Depends on how many apps you have and how fast your sdcard is.
Personally I think there are better / easier methods, some use apps or flashable zips to make installation much easier and don't require a full wipe. Search for mount2sd, or cronmod int2ext for instance. Whichever one you choose, it doesn't matter too much in the end, whatever 'name' they give it, they all do similar things in slightly different ways, but ultimately the objective is so you can install more apps.
Oh and if you're partitioning for Desire, use 4EXT recovery or gparted, not clockworkmod recovery

[Q] Internal Memory question

So, I got my device s-off and rooted, was pretty excited when I had those stuff done.
But now,
Internal memory is still an issue, I read on xda like, removing the bundled or stock software comes with the phone won't make the internal memory get increased because those files are stored somewhere else that won't effect the total usable internal memory. Plus removing stock apps will stop using OTA updates.
So is there a trick that I can increase the internal memory of my phone? I already use the default save location setted to sd card, and moving apps to sd but it always leaves some files at internal memory.
I read somewhere like, I can make phone use my sd card's some part as internal memory, I saw a rom offering that but except that is there any program offering this without flashing rom?
And I have some knowledge about Linux, so I was wondering do I have a chance to use symlink command (symbolic link) to link my internal memory to sd card ?
Best way is to use a ROM with Darktremor Apps2SD preinstalled. I don't know whether it will work if you install it now.
The best alternative, in my opinion, is to format a partition of your SD card to ext3 with this guide and then use Link2SD.The partition can be as big as you want, but I believe that 500 MB should be enough.
It will earn you some space but not as much as the Darktremor Apps2SD will.
Thanks for the answer, I used the guide and Link2SD, but i am a bit confused here, I also use apps 2 sd program,
So for using less possible internal memory of my phone,
Should I install apps to phone memory and then link to sd card with link2sd
or
Install app in sd card (or move it with link2sd to sd card) then link?
Right now one of apps shown as Linked -> SD card. So is this the best scenario?
Because when I choose move to SD in Apps 2 SD, Link2SD says move to SD also, so it kinda like they conflict
To tell you the truth I'm not completely sure for what is better, but what I did was to first link all of them (application, dalvik & library if possible) and then move them to sd card with App2SD. I think there was a slight difference to the free space but nothing noticeable. Sorry, but I'm no expert, so everything I did was by trial and error!

Link2SD Partially working?

Well, the last time I installed Link2SD, it all went well - I partitioned, and got it set up working. Then I disabled it because I didn't really need it. Now after a few CM7 updates, I've found that I want to use Link2SD again.
So I partitioned my SD card again - 7GB FAT32 for normal storage, 456MB EXT4 for Link2SD.
I set up Link2SD and it created the mount script, I rebooted and found that if I looked at my internal memory size, it's still 150MB. Last time I used Link2SD the partition of my SD card was added onto my internal storage. I can still link apps to the SD partition, but my internal memory still comes up as 150MB, which makes me unable to install any more apps because it thinks it's full.
What have I done wrong? I'm using the latest CM7 build with a class 4 8GB SD card.
Link2SD doesn't adding your external storage to internal, it's just transfer everything you want to external storage. Your phone will say that you have 150 internal memory which is true but the catch is your free space there - if you set your link2SD options like they should be free space shouldn't change almost at all.
My guess is that you had data2SD with you previous ROM you used, that one do just that what you mentioned - add external space to internal (teoreticaly).
kobredabre said:
Link2SD doesn't adding your external storage to internal, it's just transfer everything you want to external storage. Your phone will say that you have 150 internal memory which is true but the catch is your free space there - if you set your link2SD options like they should be free space shouldn't change almost at all.
My guess is that you had data2SD with you previous ROM you used, that one do just that what you mentioned - add external space to internal (teoreticaly).
Click to expand...
Click to collapse
I see, looks like I got the two confused then. Thanks for clearing that up for me
I cant really see the point of Link2SD then, since the phone thinks its installed on the internal memory when its installed on the SD partition. Android thinks the internal memory is full and doesn't allow you to install any more apps...
Sent from my Wildfire S using XDA
dudeman1996 said:
I see, looks like I got the two confused then. Thanks for clearing that up for me
I cant really see the point of Link2SD then, since the phone thinks its installed on the internal memory when its installed on the SD partition. Android thinks the internal memory is full and doesn't allow you to install any more apps...
Sent from my Wildfire S using XDA
Click to expand...
Click to collapse
Hmm it shouldn't be like that at all, something is wrong with you link2SD setup there...
Try this, open link2SD, hit Multi-select and choose Select all. Then hit Actions and choose Create link. That should transfer all apps that could be transferable to external storage (application files, dalvik-cache files and library files) and check your free internal space then (changes maybe not be visible immediatly, do one reebot just for case)
And i guess that you, before that, choosed right file type of your internal storage in link2SD (ext4 in this case). You can see external partition in link2sd's storage info, right?
kobredabre said:
Hmm it shouldn't be like that at all, something is wrong with you link2SD setup there...
Try this, open link2SD, hit Multi-select and choose Select all. Then hit Actions and choose Create link. That should transfer all apps that could be transferable to external storage (application files, dalvik-cache files and library files) and check your free internal space then (changes maybe not be visible immediatly, do one reebot just for case)
And i guess that you, before that, choosed right file type of your internal storage in link2SD (ext4 in this case). You can see external partition in link2sd's storage info, right?
Click to expand...
Click to collapse
Yeah EXT4 is fine, it all shows up. Thanks for you help, I'm just gonna go with Data2SD

Categories

Resources