Related
In short:
Is there a thread somewhere stating the pro's and con's of running Android from different types of "media" (SD, NAND, EXT2)?
If there is, please provide a link, I can't seem to find anything that isn't an unanswered question or small comments.
If there isn't, let this be a starting point for those looking for the answer to this question.
Longer:
I've seen this question pop up once and again but it might be that the topic is totally exhausted and people have stopped commenting on it. I can't seem to find an answer though; What are the pro's and con's of using NAND, EXT2, FAT32 or any combination of it?
I see a couple of installation alternatives and some I have been able to conclude myself but others not.
* Running from SD-card using HaRET
This option is the slowest in terms of Android performance. It has the added value of easily getting back to Windows Mobile by rebooting the phone, gaining easy access to the SD card and manipulation options.
* Running the system AND data on NAND
This option has in my view the fastest Android experience. Access to files on the SD card is a bit more cumbersome (there is the SD card split widget APK available but I have yet to see it working) and access to files for manipulation I can't comment on (haven't gotten to that yet).
* Running the system from NAND and data on EXT2
The performance seems almost as fast as the system+data on NAND. I have no idea about the added value of running anything from an EXT2-partition in the SD card but I'm guessing it will be slower. I have no idea if file access for manipulation is easier or not compared to the other options.
* Running the system AND data from EXT2
I have not tried this yet and cannot comment on it. Something tells me it will be slower than NAND because of SD card overhead.
* Running the system from EXT2 and data on NAND
I have not tried this yet and cannot comment on it.
Now, I've missed out on several of the installation options but I'll edit this post as soon as I get to investigating it further.
Any comments/experience/knowledge in this is greatly appreciated, as it can make things clearer as to what options to choose.
Well these are very good question and wanted to start a thread on this matter as well. I also could not find a strait answer anywhere.
I also want to know if there is an advantage using ext2 over fat32.
So, people out there having knowledge about this matter please share it.
Ext2 and Fat32 are both types of filesystem used on various different types of media, including SD card, Hard drives etc.
EXT2 is (one) of the native linux filesystems, and is fully supported in kernel, and is usually faster and more stable in that OS
FAT32 is the 32bit version of the old MSdos filesystem, used up to Windows 98, and still supported by windows machines, but slower and less stable than the native NTFS filesystem used by XP and above.
Nand is actually the type of flash ROM used by our devices, and not a filesystem as such, and running Android in Nand refers to where the information is stored, rather than the filesystem used to store it.
It's equally valid to say that we run WM in Nand also.
I think that in the case of Android EXT2 should be faster and more stable than fat32 since it's designed for Linux, and works better in that OS.
Zenity ik would like to thank you very much as this answers mij questions.
And i think this would many others aswell.
Don't forget - if you format your MicroSD to just EXT2 then you will make it very awkward to transfer files to/from the card on a Microsoft Windows based system.
This may, or may not be a problem for you.
Ultimately, the current ideal situation (IMHO) is to run your OS from NAND, and to store your data (music / movies / documents) on a FAT32 format MicroSD - as this enables you to swap the MicroSD card without turning off the device, and provides best cross-platform usability of the MicroSD for the purposes of transferring data to/from it.
Thank you all!
Thank you all for commenting! I will add your comments to the Android-wiki I'm building as this question could come back repeatedly from newcomers (and old ones who forgot )!
boli99 said:
Don't forget - if you format your MicroSD to just EXT2 then you will make it very awkward to transfer files to/from the card on a Microsoft Windows based system.
This may, or may not be a problem for you.
Ultimately, the current ideal situation (IMHO) is to run your OS from NAND, and to store your data (music / movies / documents) on a FAT32 format MicroSD - as this enables you to swap the MicroSD card without turning off the device, and provides best cross-platform usability of the MicroSD for the purposes of transferring data to/from it.
Click to expand...
Click to collapse
There is a program for allowing the mounting of EXT2 file systems on windows, however they are not signed. This is more problematic in Windows that are 64bit. The program is called 'ext2fsd' and you can get it from source forge. EXT2 is a better file system, and does not have the 4GB file size limit, and does not fragment (although on a SD card, this should not be an issue). EXT2 also has file permissions that Linux understands. Fat32 has no Access control file permissions.
I have just recently got polymod's eclair running with both system and data on ext2 partitions.
my question is...
I am just wondering what the boot order is...
and where(if possible) can it be changed?
system.img in the andboot folder VS system on partition.
I know it can be set in the installer. but lets say I had installed system on ext2 partition. and then later placed a system.img in the andboot folder.
can I swap between the two?
OK...
I figured it out myself,
You can use the installer to select boot options (Not just options to install)
so I have a system and data on partitons. (currently using)
and I also have a second build installed to .img files in the andboot folder. (for failsafe backup)
if I want to swap from one into the other
I enter installer and change the settings for the system and data to
their respective locations and then just QUIT.
I also still have a donut build in the android folder. as well as still running winmo.
quad boot system on my phone...LOL
Now thats a neat use of the installer, I think this find deserves it's own thread in fact, I'm certain others will find it useful
Tanks !
binlabin said:
* Running the system from NAND and data on EXT2
The performance seems almost as fast as the system+data on NAND. I have no idea about the added value of running anything from an EXT2-partition in the SD card but I'm guessing it will be slower. I have no idea if file access for manipulation is easier or not compared to the other options.
Click to expand...
Click to collapse
I've done some tries with this doing the partitioning from within android and then formatting the FAT32 partition from Windows 7 but the FAT32 partition doesn't work very well afterward. Really slow and sometimes crashes the explorer. Propably something to do with my SD-card. May try doing the partitioning and formatting from Linux to see if it works better.
Seems to me the main advantage of this option is to increase the size of available data storage which i suspect can become a limitation sooner or later in a pure NAND install.
EDIT: Now I've done it and gone NAND-System + EXT2-Data... Partitioned the SD-card from Ubuntu with gparted. Resized the FAT32 partition and created 3 primary EXT2 partitions. only the second (partition 3) should be used though with the setup I am using. It's charging right now so I haven't tried it out much yet but I will later on. However I noticed that I now have 171Mb free phone storage instead of 30-something that I had before (same apps installed).
EDIT2: Ran gparted again and shrinked the unused partition (partition 2) and expanded the data partition (partition 3) so I now have 369Mb free "Internal phone storage". Haven't noticed any speed differences between this and when I had data on NAND.
nand
By then one question:
If im install android in the NAND is more fast ready? But this process erase WM6?
Because now android work good in my HTC TYNT II but the camera and bluetooth not work and have one or two performance problems and for this dont like delete WM6 of my phone, and for this im use Android from my SD.
But look the NAND option because have a problems with the time live of my battery only lasts 5hours with android and SD.
Thanks for your help and cooperation
excellent thread which answers some questions that I had. Thanks to everyone who contributed. The only question remaining though and I have posted this elsewhere without getting an answer:
I partitioned a 2 gb sdcard with ~1.6gb Fat32 and the rest as a single Ext2. I selected system on nand and data on ext2 in the installer. After installation, it does show alot more memory for data as compared to data on nand, BUT I also have a data.img in andboot which is in the Fat32 partition, with a size around 250mb. The question is, is the data in that file or on ext2? If I backup data from installer, it creates a databackup.img in andboot with the same size as data.img. Seems to me the ext2 partition is just taking up space and not being used. Can anyone more knowledgeable shed some light on this? Thanks.
Not quite sure what is going on there, seems very counter-intuitive, I would have assumed that system on Nand, data on EXT2 would have installed the data partition to EXT2 on SD. This would seem not to be the case in this instance.
There are a few experiments you could try, if you are brave enough, since you may cause problems by trying any of these suggestions, which could mean a reinstall, I leave it to your judgement how to proceed
Ok firstly I assume you have a card reader, since you managed to partition and format the SD card in the first place. Remove the SD card, insert in card reader, delete the andboot folder, or the contents of the folder, ( may be wise to have a spare SD with either a winmo or android install handy at this point, just in case things go horribly wrong ).
Now with the cleaned SD, put it in the phone and boot, it should boot fine, IF the data is truly on the EXT2 partition.
That at least will answer one question, namely, where the heck is my data?
If this works fine, then I'd just put it down to some inner weirdness of android on non-native devices, if it fails then I'm wondering if your EXT2 partition may have problems, forcing the phone to dump it on the first available good partition, namely the FAT32 one.
Oh and if it does fail, you will have to reinstall, since your data will be toast.
Finally, good luck, I await with interest
As I recall, the install has the FAT32/Ext2 options incorrectly swapped. It has been this way for a while.
zenity said:
Not quite sure what is going on there, seems very counter-intuitive, I would have assumed that system on Nand, data on EXT2 would have installed the data partition to EXT2 on SD. This would seem not to be the case in this instance.
There are a few experiments you could try, if you are brave enough, since you may cause problems by trying any of these suggestions, which could mean a reinstall, I leave it to your judgement how to proceed
Ok firstly I assume you have a card reader, since you managed to partition and format the SD card in the first place. Remove the SD card, insert in card reader, delete the andboot folder, or the contents of the folder, ( may be wise to have a spare SD with either a winmo or android install handy at this point, just in case things go horribly wrong ).
Now with the cleaned SD, put it in the phone and boot, it should boot fine, IF the data is truly on the EXT2 partition.
That at least will answer one question, namely, where the heck is my data?
If this works fine, then I'd just put it down to some inner weirdness of android on non-native devices, if it fails then I'm wondering if your EXT2 partition may have problems, forcing the phone to dump it on the first available good partition, namely the FAT32 one.
Oh and if it does fail, you will have to reinstall, since your data will be toast.
Finally, good luck, I await with interest
Click to expand...
Click to collapse
Great idea, I'll try this on the weekend. I wont delete data though, I'll just rename andboot and backup data for good measure, because I want to be able to go back to the data by renaming it back if it doesn't work. I was also thinking if there is any way to get to the ext2 partition and read it... I'm on xp so I cant do it on my pc, and on the phone, I've looked around in astro n other file managers but cant see anything. But if the case is as golfnz34me points out, then I should just backup the data, and change the option to Fat32 in install and restore data. That should do the trick.
golfnz34me said:
As I recall, the install has the FAT32/Ext2 options incorrectly swapped. It has been this way for a while.
Click to expand...
Click to collapse
Thanks, will check this out. If its true, then great, more speed for my /data! I wonder how I missed this, been going through these forums regularly...
Ok I checked it out, and golfnz34me is correct it seems.
But now I found a new problem. I backed up data, and in the installer, set the data to SDCard, and tried to restore data. It gives various errors like
Code:
cannot determine filesystem size
failed
failed to format
...some other lines...
losetup: /dev/block/loop2: no such device or address
I created the partition with Paragon partition manager, and after getting this error I rechecked in PPM. I reformated the partition, but still get the error. In PPM the partition drive letter isnt assigned. Or, the partition isnt the active partition. Can one of those be the problem? The volume name is Ext2. Im not very experienced in partitioning etc, apart from normal ntfs partition for new hds in windows, so I didnt play with any options. I dont have a linux system either. Any got any ideas? Any help would be appreciated alot!
Not sure about using partition managers other than gparted, afaik most people are using the Gparted live cd if they don't have a linux install handy.
The errors all point to some sort of problem with the EXT2 partition, or it's formatting.
Also EXT2 partitions do not have drive letters, nor do they have to be active partitions.
Apps and data on SD card.
I cant seem to figure out how to make all the apps and other stuff install to the SD card. Do I have to partition the card into two partitions? or is there a way to install the system to Nand and make all the apps and data go to the SD card? Ive tried setting it to System on nand and data on SD partition but it says no partitions to install to or something.
Hey guys
Im on holiday now so cannot really check myself the differences, but just wanted some quick info on the A2SD, with the official froyo i was hoping everybody will start using it, but somehow people still using the old method, whys that?
thanks
Froyo A2SD is completely reliant on app developers. If the devs doesn't allow it in their app then it can't be moved to the SD card. This is really only a problem because Froyo is still new.
Old A2SD you can dump everything on the SD
However, I'd be interested in seeing if there is a way to force an app onto the nand using A2SD+. Would work better for things like widgets, home replacements etc, as they'd run quicker for people with slow sd cards.
Probably because the FroYo one sucks !
Why ? Well, mostly because devs have to rewrite their apps so they can use FroYo's app2sd function...
With the "old-fashioned" a2sd, there is no need to do anything, just sit and enjoy the free space
APP2SD allows you to move certain apps to your SD card and run them from there BUT as these are placed on the normal root of the SD when you mount the SD, via USB for example, you loose access to these apps until you remount SD. This means you cant install widgets to the SD and such like.
APP2SD+ on the other hand uses an ext3 partition (or ext4 on newer versions) which then installs all apps & widgets to that partition and when the SD is mounted you dont lose any apps or widgets as is located in a seperate partition.
Hope that helps.
Sent from my HTC Desire using XDA App
Sent from my HTC Desire using XDA App
wow! thats quick thanks for you input guys think you explained everything i wanted to know really
Id want to use the offical a2sd as i think using ext3 partitioned sd card have already slightly damaged the card cuz it keeps giving me errors everytime i connect it to a pc
mrwookie6379 said:
APP2SD allows you to move certain apps to your SD card and run them from there BUT as these are placed on the normal root of the SD when you mount the SD, via USB for example, you loose access to these apps until you remount SD. This means you cant install widgets to the SD and such like.
APP2SD+ on the other hand uses an ext3 partition (or ext4 on newer versions) which then installs all apps & widgets to that partition and when the SD is mounted you dont lose any apps or widgets as is located in a seperate partition.
Hope that helps.
Click to expand...
Click to collapse
So let me understand the names:
APPS2SD = Froyo Original (comes with official Froyo release)
APPS2SD+ = Hacked version which has been out since FRF50 leak?
EDIT: But if APPS2SD+ is so much better (keeps apps on ext3 partition), why to people keep using the original APPS2SD on their ROMs?
Check this explaination. Quoted from neoKushan from yesterdays thread.
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
That's a great summary, thanks for that!
But... how can I create an ext3 partition on a new SD card? I don't want to use ROM Manager because that has a maximum of 512Mb for ext3, I want to make 1gb or more.
Also, what size should I make swap partition?
Vice83 said:
That's a great summary, thanks for that!
But... how can I create an ext3 partition on a new SD card? I don't want to use ROM Manager because that has a maximum of 512Mb for ext3, I want to make 1gb or more.
Also, what size should I make swap partition?
Click to expand...
Click to collapse
You can do that thru recovery-windows.bat by going thru recovery mode by volume down + power, go to recovery then when the red exclamation point appears just run the recovery-windows.bat by double clicking on it. You can get these files from r5-desire-root-alt from the rooting process files (search the forums for this if you don't have it). But be cautious cause when you partition your sd card, all your files will be wiped so make sure to backup everything you need. Cheers!
Edit:
Actually this summary about the ap2sd and ap2sd+ and froyo ap2sd should be stickyed for everyone, so it would not be ask over and over again.
Couple of extra ways to partition:
1) Flash AmonRA's Recovery to your phone (I used Unrevoked to do it)
2) Use GParted on a Linux LiveCD (e.g Slax) to partition your card exactly how you want it
Vice83 said:
That's a great summary, thanks for that!
But... how can I create an ext3 partition on a new SD card? I don't want to use ROM Manager because that has a maximum of 512Mb for ext3, I want to make 1gb or more.
Also, what size should I make swap partition?
Click to expand...
Click to collapse
ROM Manager is probably the easiest way to do it, but I was stuck with EXACTLY the same problem when I rooted. I chose to flash AMON Ra recovery (don't have the link, but you can google it up), and then used that to create a 1024MB ext partition. Then used AMON Ra again to convert the ext partition to ext3. Hope that helps.
However, one question I have regarding neoKushan's explanation is that if I did create a 1024MB ext3 partition, then the same capacity should be visible in the phone's internal memory. However, after I rooted and restored my apps, I could only see about 100+ MB of free internal memory. Can anyone help me with this please? Am using the Opendesire Official Froyo 1.0c ROM that has A2SD built in
deepdevil said:
ROM Manager is probably the easiest way to do it, but I was stuck with EXACTLY the same problem when I rooted. I chose to flash AMON Ra recovery (don't have the link, but you can google it up), and then used that to create a 1024MB ext partition. Then used AMON Ra again to convert the ext partition to ext3. Hope that helps.
However, one question I have regarding neoKushan's explanation is that if I did create a 1024MB ext3 partition, then the same capacity should be visible in the phone's internal memory. However, after I rooted and restored my apps, I could only see about 100+ MB of free internal memory. Can anyone help me with this please? Am using the Opendesire Official Froyo 1.0c ROM that has A2SD built in
Click to expand...
Click to collapse
I'm not sure about what exact capacity for the internal memory after partitioning to ext3 but when I was on Opendesire before for the eclair 2.1 after I'm done flashing the rom and setting up the whole ap2sd+ my internal memory was 410mb. I used:
swap=0
ext=1024
fat32 is for the rest of the card
Then after upgrading to froyo rooted ROM, I'm only getting 140mb tops. I dunno... I'm too lazy now to get into it right now... maybe soon I'll play around with it again so I can get back my 410mb internal space with the ap2sd+
Stewge said:
Froyo A2SD is completely reliant on app developers. If the devs doesn't allow it in their app then it can't be moved to the SD card. This is really only a problem because Froyo is still new.
Click to expand...
Click to collapse
Not 100% true, because you can change the default install location to SD card (via ADB if stock, and an app if rooted) and then you can have the vast majority of your apps on SD card even if they've not been updated for Froyo.
Regards,
Dave
I always thought the main negative with A2SD+ was that the cache was moved to the sdcard, which of course would wear out the sdcard (slightly) quicker.
Vice83 said:
So let me understand the names:
APPS2SD = Froyo Original (comes with official Froyo release)
APPS2SD+ = Hacked version which has been out since FRF50 leak?
EDIT: But if APPS2SD+ is so much better (keeps apps on ext3 partition), why to people keep using the original APPS2SD on their ROMs?
Click to expand...
Click to collapse
Not exactly!
Prior to Froyo, there were principally two versions of Apps2SD:
1. APPS2SD (or A2SD )
2. APPS2SD+ (or A2SD+)
The first would move your apps to the EXT partition, and the second would move your apps and the Dalvik cache to the EXT partition (see here for an explanation of the Dalvik cache).
Now we have Froyo, we have "native", or "Froyo" apps2sd as well, which does much the same as (1) above except that there is no EXT partition and the apps are on the FAT32 partition of your SD card.
Regards,
Dave
sparksalot said:
I always thought the main negative with A2SD+ was that the cache was moved to the sdcard, which of course would wear out the sdcard (slightly) quicker.
Click to expand...
Click to collapse
Dalvik cache is only actually updated when a new app is installed or and old app is updated, so whilst it will incur more writes to SD card, it probably isn't anywhere near as much as the apps write themselves to the FAT32 partition.
Regards,
Dave
Great summary, but can I format my 8 GB SD card as EXT3 and just forget about the FAT partition? I'm using Ubuntu on my laptop and my EXT4 /home partition is just fine for storing images, movies etc. I really don't get this ado about having an EXT and a FAT partition. Or am I wrong here?
quick question, if i move to another bigger sd card, can i copy my card and transfer it to the new one without losing the EXT, and the apps on it? would i need to make a image of the card? thanx for any advice.
make a backup of them first on your pc and copy them to the newly partitioned sdcard....ext to ext and fat to fat
So there is 3 versions?
1. Froyo A2sd = fat32 only = apps installed to sd
2. A2sd = fat32 + ext = apps installed to sd in ext partition
3. A2sd+ = fat32 + ext = apps installed and Dalvik cache moved to sd in ext partition
Is there any more variants? lol
Sent from my HTC Desire using XDA App
I keep getting a message about storage space running low.
I have installed Apps2SD so all my apps that can be moved have been moved.
My contacts folder seems large at 18Mb
QuickOffice is 5Mb but I never use it.
Am I missiing something here?
Is there a way to free up memory easily?
If you have an a2sd+ script (most custom roms have), the apk files of your apps will be moved to the ext2/3/4 partition on the sd card, but there still remains the dalvik cache on the /data partition which uses up memory. There are scripts to move this dalvik cache to the sd card as well, but they require you have a class 4 or faster card. The best thing to do is search the thread of your rom, since it's probably been asked about it there.
If you're using google's a2sd (because you're not using a custom rom with such a script), not all apps can be moved to the sd card, since the developer has to specifically state the app can be moved, and for some reason, a lot of people don't do that. You can download a program called SDMove or App2sd from the market which will tell you which apps can be moved (and give you an option to move them), but there isn't very much you can do about getting more space. That is, if you don't want to get a new rom or install a a2sd+ script.
Cheers for the feedback.
Iam not sure if LeeDroid has the APPS2SD in the rom, I have Rom Manager and I THINK i now have ext2 and swap file but yet to confirm that with the new sd card as I am unable to copy the files from the old to the new, (thats another story)
So are you saying that APPS2SD on the ROM is better than APPS2SD from the market? I liked the market one so much I actually paid for to pro version.
Some of the apps will not move which is annoying, esp if what you say is that its all down to the lazy developers.
Can I reduce the phone book size? Text Messages etc to alleviate this issue?
I have no qualms in installing a new ROM if that will give me more space.
As many Desire users, I had the same issue.
Oxygen ROM is the best thing that had happened to Desire.
First do S-OFF, put Bravo Oxygen HBOOT patch (see alpharev.nl for more info), and then flash Oxygen ROM. And you will never have to worry about space again. I don't even move my apps to SD anymore, since there is no need.
Porcupine00 said:
As many Desire users, I had the same issue.
Oxygen ROM is the best thing that had happened to Desire.
First do S-OFF, put Bravo Oxygen HBOOT patch (see alpharev.nl for more info), and then flash Oxygen ROM. And you will never have to worry about space again. I don't even move my apps to SD anymore, since there is no need.
Click to expand...
Click to collapse
I said that around in other posts and other members were moaning at me because "not everyone can do that". Anyway, yes flashing a hboot will give you more data to work with (depending on which template you get).
Using A2SD(+) is a workaround if you don't want to S-Off you Desire. However, A2SD(+) still uses /data partition unless you get a Data2SD script or at least a script to move the Dalvik cache. I think a lot of people fail to realise this.
Flashing Hboots? Sounds like Gary Glitters footwear!
What is S-OFF?
So is A2SD (+), different from A2SD?
Does this require a degree in Linux like so many of the other things?
If your contacts app is too large ...
http://androidforums.com/htc-desire/127440-internal-memory-again.html
for me, data2sd was the only solution to consider when it comes to internal memory issues
uktotty said:
Flashing Hboots? Sounds like Gary Glitters footwear!
What is S-OFF?
So is A2SD (+), different from A2SD?
Does this require a degree in Linux like so many of the other things?
Click to expand...
Click to collapse
Firstly, HBOOT is the partition table in your phone. By default it has 147 MB for the /data partition (that's where your apps go) and 250 MB for the /system (where your ROM is installed).
Secondly, HTC implemented a security flag in our phones that protect this HBOOT from being changed and denies writing to /system when using the phone.
Now, this security flag can be disabled (S-OFF = security off), which will allow you to change the layout of your partition table. What @Porcupine00 was saying is a lot of people do the procedure to S-OFF their devices, flash the Oxygen HBOOT (which gives 300+ MB of /data storage), because Oxygen ROM is very small (about 90 MB) and doesn't need that much space in /system, so this space is made available in /data. However, messing with partitions is quite dangerous and you should read all the guides carefully before trying, because it can really brick your device. Must I add is voids you warranty?!
Now, to clear up the confusion about a2sd. There is the a2sd system implemented by Google and available in FroYo and higher which can only move the apps meant to be moved. There is the app on the market which is called App 2 SD which shows the apps installed on your phone that can use this system. And there are a2sd+ scripts which move all apps to the ext partition on your sd card.
Data2SD is another kind of script for moving apps to ext partition, along with their other data, but it requires a fast sd card (I think a class-6 or higher is recommended, whereas my stock Desire sd card is a class-2).
I advice you read through the Desire Android Development forum and find out about all these methods and make sure you know what you are doing before flashing.
Good luck!
thank you sir, very informative and non patronising
I still need to work out how to get the date from my old 4gb to my new 16Gb card as everyhing I have tried has failed, then I can get some larger partitions and the ext's
What is the problem you are having? When I rooted my phone, I swapped my 4-GB with an 8-GB one and the only thing I did is just copy all the contents from the former to the latter. I had no issues with apps, media files whatsoever.
However, I only had a FAT partition back then, so if you are talking about moving the apk's on the ext partition, you'll need to use a Linux operating system (because Windows doesn't read ext, and also doesn't mount anything else than the first partition on an external drive, which happenes to be the FAT one in our case). There are live cd's from several linux distributions that are available for free download, which you can use to copy the content from your ext partition to your pc, then back to the new card.
The problem is as follows.
Titanium back up all apps and data to 4gb card
Copy contents to windows desktop, folder properties 3.6gb
Change card to 16gb in phone, connect etc
Copy contents of 3.6gb file to new card
800mb on new card.
It seems to be copying FOLDERS but not the contents of those folders.
I am using standard USB mount
I have tried Droid Explorer
I also have ABD installed and stuff but it confuses me!
I have also got various versions of linux and a VM but not tried any of that as 20 years of windows experience probably wont help me
Only thing missing is a card reader currently so doing all of this via usb cable with card in phone
Maybe it has something to do with your Windows system? Could you try on another computer? Also, have you tried reformatting the new card before copying the files?
good point, dont have any other pcs to try here and works laptop is pgp encrypted.
I have used partionmanager to format the car, partition the card etc and it shows healthy partitions.
Just cant seem to copy and paste the files!
OK so I copy 3.6 gb from android to desktop, do the reverse and droid explorer says
"Copying 439Mb"
Can you try to open up your card using Windows Explorer and look at what size it shows? I'm thinking it's not actually the '439 MB' that's wrong, but the '3.6 GB'. I remember my Sense nandroid backup had about 400 MB as well, and also, how could you possibly fit 3.6 GB of apps in a Desire's 147-MB /data partition?
After you copy, try looking at some random files and cross-check the size it says on the phone (use Astro or some other fille manager), then chech the size on the card shown on your PC, and the size of the copied file. Maybe there is no copying error at all, but just a size-showing one, so maybe you've nothing to worry about
Sorry not the data partion the MicroSD Card
I am moving from a 4gb card which will hold around 4gb to a 16gb card which will allow me ext, swap parttions etc
Sorry, my bad, I meant 'Titanium Backup' and not 'nandroid backup'. I was saying the Titanium backup alone is fine if it's about 400 MB. So you can't copy your files like music, wallpapers and stuff? I wonder where the problem is
Trying something now, which is bot into recovery mode and mount the USB, copy to the new card via that method, no error messages yet
Guys
Thanks for the feedback
We have a result!!
Copy files from old CD Card to PC (3.6Gb)
Change cards in phone
reboot into recovery and mount usb
Copy files back (3.6Gb)
Woo Hoo
Phone runs quicker now, will see what we can do about internal memory after new rom
Hi,
Tonight I installed some updates for apps on my phone running Leedroid 2.2d A2SD+. Some of them stubbornly decided to stay on the SD card so I went to move them (I haven't managed to get pm setInstallLocation 1 to work, though I have yet to try it from ADB and that was the way I got setInstallLocation 2 to work before I rooted). I moved several at once and suddenly had the applications manager restart itself and found one of my games that was being moved (Cordy) was no longer working and couldn't be moved either to or from the phone (said move failed). So I tried restarting the phone incase that would fix it.
The phone wouldn't get past the HTC logo so I thought it might be a corrupt A2SD partition, but since it was ext3 that I could probably just get fsck on the computer to replay the journal. Upon putting the card in the computer (using an SD adapter) and booting into Ubuntu 10.10 I tried running disk utility with 'check filesystem' and it reported an error and that the filesystem was not clean and changed the partition to unknown. The same thing happend for the FAT32 partition and I couldn't mount that either. I tried running fsck from a terminal and it said something along the lines of 'Bad superblock or possible short write' and was unable to check the partitions and exited immediately (sorry I have since rebooted and assumed the same error would occur next time so didn't write it down specifically).
I restarted into Windows 7 to see if it could fix the FAT32 partition so I could get my Nandroid backup I made yesterday and it worked fine and said the partition was fine! Usefully Nandroid makes an md5 checksum of the backup so I was able to confirm at least that was intact and make a copy (I didn't really have anything else not backed up on the card as I only rooted a week ago).
I then rebooted back into Ubuntu and it now reports the FAT32 partition as clean, and actually makes some attempt at repairing the EXT3 partition but reports huge quantities of nasty errors like multiply allocated blocks and allocated blocks marked as free and an error with the journal when I run from terminal using 'fsck -t ext3 /dev/sdb2'. I don't really have any experience with fsck as I mostly use windows but there were a lot of errors that sounded pretty unresolvable (from memories of my couple of lectures on ext at university).
Yesterday I flashed an UOT theme using (ClockworkMod 2.5.0.7 as installed by Unrevoked3) install from zip for battery percentage and some icon changes, I chose Leedroid 2.3d from the file list. I had also installed DSPManager using the flashable zip on the Leedroid site.
My card was partitioned using GParted with FAT32 first followed by a 512MB EXT3 partition as recommended on the Leedroid site. I was sure to create the EXT3 partition second as I noticed adding it first at the end made it the first partition in the table. The card had been made a goldcard (though this might be gone as I erased the card with disk utilities Format drive button which may have deleted the MBR, I'm not really sure).
I'm guessing somehow Android tried to do multiple writes at once but I was under the impression these kinds of issues were solved by putting the partitions in the correct order, besides, shouldn't Andorid work correctly with its built-in support for ext anyway like any other version of linux? If this is a known, common problem with A2SD+ why doesn't every ROM have a big warning about this like Data2SD ROMS generally have about SD wear and being able to persist system settings?
PS: I realise there are some other threads on this but they are fairly old and seem to all involve connecting the phone to the computer or after a reboot.
I'm bored because the UOT Kitchen is down so since I flashed CM7 only a couple of days ago, and pretty much like it, I thought I'd also now take the plunge and flash the CM7 r2 HBOOT but I have a couple of questions first:
1) I've read the instructions on Alpharev site but still confused by the partition table. Do I somehow have to change the various system/data/cache size before flashing the HBOOT, or am I right in thinking that when I flash the HBOOT this will automatically resize them as part of the flash process?
2) What's the benefit of flashing this particular HBOOT? Is it because it'll increase system partition due to the number of apps? (noticed much less available space since swapping from LeeDroid)
and (yes I know I said only "a couple" of questions but...)
3) % chance of bricking my phone???
1. It will automatically resize the partition tables.
2. More space on data partition for apps.
3. None if you do it properly and check the MD5 of the image file you've downloaded.
Sent from my HTC Desire using XDA App
I'm confused by the two methods shown on Alpharev. Method 1 says to donwload the image file and Fastboot flash the file and Method 2 says to add the renamed PB99IMG.zip to SD card and flash. With method 1 do I do I have to do any of the process on PC or all on the phone? With method 2 do I just boot into recovery and flash the .zip like I would flash a new ROM (i.e. "Install zip from SD Card">"Choose zip from SD Card") or do I have to go into Fastboot the same as in Method 1?
As you can tell, I'm confused, but this is something I want to get right, for obvious reasons. The instructions on the Alpharev are basic but need to be a bit better explained for noobs like me, I think.
Which of the 2 methods are the easiest/safest and could some one be kind enough to give a more precise walkthrough please?
xybadog said:
I'm confused by the two methods shown on Alpharev. Method 1 says to donwload the image file and Fastboot flash the file and Method 2 says to add the renamed PB99IMG.zip to SD card and flash. With method 1 do I do I have to do any of the process on PC or all on the phone? With method 2 do I just boot into recovery and flash the .zip like I would flash a new ROM (i.e. "Install zip from SD Card">"Choose zip from SD Card") or do I have to go into Fastboot the same as in Method 1?
As you can tell, I'm confused, but this is something I want to get right, for obvious reasons. The instructions on the Alpharev are basic but need to be a bit better explained for noobs like me, I think.
Which of the 2 methods are the easiest/safest and could some one be kind enough to give a more precise walkthrough please?
Click to expand...
Click to collapse
I think fastboot is the best way to do it.... Not one of your choices - Edit - sorry it is i'm just blind!!! you have more control because you run the commands
As the previous dude said CHECK MD5SUMS!! if they match you should be fine
You flash the hboot depending on your needs.... I use reflex s CM7 with CM7 r2 hboot and I have a huge internal memory
The fastboot method says I have to rename the image file for the HBOOT I downloaded. The file I downloaded was bravo_spl_cm7r2.img so what do I have to rename it to?
Jeez I'm confused @!*$!&
EDIT: Ignore me, I just figured it out
xybadog said:
The fastboot method says I have to rename the image file for the HBOOT I downloaded. The file I downloaded was bravo_spl_cm7r2.img so what do I have to rename it to?
Jeez I'm confused @!*$!&
EDIT: Ignore me, I just figured it out
Click to expand...
Click to collapse
For others, please write your solution here.
Swyped from Oxygen with Transparent XDA App
@matdroid - No solution, just me misreading the instructions on Alpharev :/
I'm in the fastboot.exe cmd screen (made sure that the HBOOT .img file is in the same folder as fastboot.exe) and when I enter "fastboot flash hboot bravo_alphaspl-cm7r2.img" I get the error "cannot load bravo_alphaspl-cm7r2.img". When I enter Fastboot on the phone do I then have to select "BootLoader"? before I can flash the HBOOT?
Any ideas?
EDIT: Done it I used the info here.
Do I just "Power Down" now that flashing the HBOOT is complete or "Reboot Bootloader" or what? (Hope I get an answer quick coz don't want to leave the phone attached to the laptop in fastboot mode all night lol.
OK, so just installed the CM7 HBOOT but while my internal memory is excellent (currently 154MB free) the system storage size repartitioned to 145MB as expected but is showing only 15MB free. Is this worryingly low? What could be hogging this space?
xybadog said:
OK, so just installed the CM7 HBOOT but while my internal memory is excellent (currently 154MB free) the system storage size repartitioned to 145MB as expected but is showing only 15MB free. Is this worryingly low? What could be hogging this space?
Click to expand...
Click to collapse
The less space on /system/ partition the better, apps will use only /data/.
Actually i have like 400kb free space on /system.
double post sorry
///delete please
xybadog said:
OK, so just installed the CM7 HBOOT but while my internal memory is excellent (currently 154MB free) the system storage size repartitioned to 145MB as expected but is showing only 15MB free. Is this worryingly low? What could be hogging this space?
Click to expand...
Click to collapse
Unless you've got a lot of apps installed it shouldn't be that low (did you do a fresh instal after flashing the hboot? if not then..) .. do a nand backup of your rom, then do a full wipe (/mounts & storage/ format boot, system, data, cache; /advanced/ wipe dalvic cache) and install CM7 again.. you should have the full 145mb.. and if you don't (for some reason) you can always restore your backup ^_^
If you install MIUI-XJ it actually see's your sd-ext as internal memory.. so I have 2GB recognised as internal memory
I have quite a few user apps installed (about 60).Did full wipes after flashing the hboot then restored my nandroid backup.
xybadog said:
I have quite a few user apps installed (about 60).Did full wipes after flashing the hboot then restored my nandroid backup.
Click to expand...
Click to collapse
Yeah then the 15mb free space sounds about right lol.. you could try A2SD if you need more space, for that you need an EXT parition on your SD.. just read this, I can't explain what it is and how to use it better than that lol
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
Already got A2SD with Ext3 partition. I've noticed though that the A2SD partition doesn't show up on Titanium Backup or System info like it does with other ROMs.
xybadog said:
Already got A2SD with Ext3 partition. I've noticed though that the A2SD partition doesn't show up on Titanium Backup or System info like it does with other ROMs.
Click to expand...
Click to collapse
Partition your sd card again (make sure to save all important data on it before) with recovery or gparted again and take care, you set correct sizes. When you use gparted:
1st create fat32 (primary) and then ext partition (also primary).
MatDrOiD said:
Partition your sd card again (make sure to save all important data on it before) with recovery or gparted again and take care, you set correct sizes. When you use gparted:
1st create fat32 (primary) and then ext partition (also primary).
Click to expand...
Click to collapse
Got a new SD card on order so I'll wait till I get that and partition from new and see if that works.