[Q] SD-EXT on SGS4G with CM9? - Samsung Galaxy S (4G Model)

I'm currently running bhundven's herring CM9 with no kernel modifications and CWM 6. I find that the internal storage for this phone is very low and only holds a small amount of applications, especially since many apps seem to not want to install at all (about 3/4 of the time I try to install things, I get either "Package invalid" or "Insufficient space available", which is extremely annoying and might be a separate problem).
Is there any way that I can get sd-ext to work on this phone with this setup? I'd rather not switch kernels (I'd love to get TWRP recovery but the flashable doesn't work for me and I don't want to switch kernels).

cpkelley94 said:
I'm currently running bhundven's herring CM9 with no kernel modifications and CWM 6. I find that the internal storage for this phone is very low and only holds a small amount of applications, especially since many apps seem to not want to install at all (about 3/4 of the time I try to install things, I get either "Package invalid" or "Insufficient space available", which is extremely annoying and might be a separate problem).
Is there any way that I can get sd-ext to work on this phone with this setup? I'd rather not switch kernels (I'd love to get TWRP recovery but the flashable doesn't work for me and I don't want to switch kernels).
Click to expand...
Click to collapse
I haven't used it but this app should do the trick.
https://play.google.com/store/apps/details?id=eu.codlab.int2ext
Let me know if it works.

I prefer Mounts2SD, which lets you completely configure things. I was running PACman with cache and dalvik offloaded which worked quite well. And free is a good price.
https://play.google.com/store/apps/details?id=com.spazedog.mounts2sd

That seems like it just switches the internal and external storage, not making an ext partition on the SD card. But can things like this really be done through an app? I thought these things had to be done through init.d or build.prop scripts.
Sent from my SGH-T959V using xda app-developers app

The app creates an init file. Or so it appears. Like I said I don't use it. It seems that raze does and I'd defer to him here. Either his app or the one I linked should work fine.

Thanks (given) to both of you. And any ideas on what else might be causing the invalid packages when downloading from the play store? It happens even though I have much more free app space than I would need (eg. I had 119 MB of free space and a 30 MB app download failed).
EDIT: Just tried using Mounts2SD, but it couldn't find the sd-ext partition. Do I need to create that manually, and how?
Sent from my SGH-T959V using xda app-developers app

Titanium backup had a feature to integrate app updates into the Rom.
Sent from my SAMSUNG-SGH-I547 using xda app-developers app

Another way is to create ext4 partition (about 1G is usually enough) on you SD card with free MiniTool Partition Wizard and then use Link2SD to link apps/dalvik to this partition. I've been using it like this for a long time and it works fine. There are plenty of guides on the Web how to do that.

I used CWM or TWRP to create the sd-ext partition. You need to create that first somehow... if MiniTool Partition Wizard will do it without wiping the sdcard, that's better than recovery though.
My method was boot to recovery, mount sdcard, copy everything to computer HD, unmount sdcard, partition sdcard with 2 GB sd-ext (because I wanted lots of space, but I'd probably cut it down to 1 GB next time), mount sdcard, copy everything back from computer HD, unmount sdcard, reboot to system. Then launch Mounts2SD, pick what format you want the sd-ext in (FAT or ext2 are the fastest, but you can take ext3 or ext4 if you're not going to just disable the safety features) and what stuff you want moved over.
Edit: Just found this link, which I haven't used but which explains how to do the sd-ext with MiniTool... apparently MiniTool DOES still wipe the partitions though, so you may as well just use CWM/TWRP and make your life easier.
http://forum.xda-developers.com/wik...#using_MiniTool_Partition_Wizard_Home_Edition

Theraze said:
I used CWM or TWRP to create the sd-ext partition. You need to create that first somehow... if MiniTool Partition Wizard will do it without wiping the sdcard, that's better than recovery though.
Click to expand...
Click to collapse
MiniTool will wipe the sd card to create the new partition as well. I wish there was a way to do it without wiping the card but there is not. So back that stuff up first.

Madein Cyberspace said:
MiniTool will wipe the sd card to create the new partition as well. I wish there was a way to do it without wiping the card but there is not. So back that stuff up first.
Click to expand...
Click to collapse
I used GParted to partition my SD card. NO WIPING. Move, resize, add partitions.

nevkuril said:
Another way is to create ext4 partition (about 1G is usually enough) on you SD card with free MiniTool Partition Wizard and then use Link2SD to link apps/dalvik to this partition. I've been using it like this for a long time and it works fine. There are plenty of guides on the Web how to do that.
Click to expand...
Click to collapse
Yes, but our herring kernel does not support EXT4 partition, I tried it myself
and it didn't work. I had to create EXT3 which is supported by almost all kernels.

Eh, my results varied. Worked fine for me with ext4. And worked fine for my wife as well.

Rebel_X said:
Yes, but our herring kernel does not support EXT4 partition, I tried it myself
and it didn't work. I had to create EXT3 which is supported by almost all kernels.
Click to expand...
Click to collapse
The OP says he's running CM9. That's what I'm running but I use Proton kernel as CM9 kernel has a video bug, and ext4 partition works just fine for me. Strange if Bryan really removed ext4 support, it's just a line in the config file.

Successfully made the partitions last night but my phone won't mount the SD card anymore. Was trying ext3, I'll try ext2 and ext4.
EDIT: Fixed the problem, changed my partition to ext2 and set both partitions to "Primary" (not sure which one did the trick).

cpkelley94 said:
Successfully made the partitions last night but my phone won't mount the SD card anymore. Was trying ext3, I'll try ext2 and ext4.
Click to expand...
Click to collapse
Make sure that you make the first partition Primary/FAT32. This will be your normal SD card. Just take about 1GB of space from it at the end. Then make second partition Primary/ext4 with size to the end of the card. You can try ext2/3 but I don't think it is really necessary.

MiniTool will NOT wipe your partition if you do it right.
dsexton had a guide posted on how to do it.

Is it worth making a swap partition? If I remember correctly it significantly degrades the life of the SD card (and microSD's are delicate as it is), and I don't know if it would significantly increase performance.

cpkelley94 said:
Is it worth making a swap partition? If I remember correctly it significantly degrades the life of the SD card (and microSD's are delicate as it is), and I don't know if it would significantly increase performance.
Click to expand...
Click to collapse
I also created 128MB swap partition, not supported too and not mounted.
I tried to used swapper2 app from the market, but it says not supported by
kernel. Now I lost that space till I feel motivated to format or repartition the SD
card again.
I am using hefe kernel btw on AOKP milestone 6-5.

No swap.
Sent from my SGH-T959V using xda app-developers app

Related

[Q] ext3 on dexters

I have been trying forever to get ext3 working on my phone. I have 3 primary partitions; fat32, ext3 and linux swap. I used a card reader to create them via Partition wizard. Every software can see the 3 partitions, but my phone wont pick up the ext3. I tried wiping everything, reflashing dexter's rom, but i just cannot get it to work. I still see only 134mb on internal memory and it decreases as i install apps. I have even tried using link2sd but that gives me an error ("Mount script cannot be created"). Any help will be greatly appreciated. Thanks in advance.
Frisbee6 said:
I have been trying forever to get ext3 working on my phone. I have 3 primary partitions; fat32, ext3 and linux swap. I used a card reader to create them via Partition wizard. Every software can see the 3 partitions, but my phone wont pick up the ext3. I tried wiping everything, reflashing dexter's rom, but i just cannot get it to work. I still see only 134mb on internal memory and it decreases as i install apps. I have even tried using link2sd but that gives me an error ("Mount script cannot be created"). Any help will be greatly appreciated. Thanks in advance.
Click to expand...
Click to collapse
Me too, I used Miui optimize rom and Steel v4 (
Sent from my XT720 using XDA Premium App
That's strange. My EXT3 partition works both in Dexter's rom and in the Steelblue V4 rom.
I used gparted under Linux to do my partitioning. What I did was to resize the existing FAT32 partition and move it all the way to the right. Then I created a 2gb EXT3 partition all the way at the left. From there I created a 256mb swap partition in the middle, and I resized the FAT32 partition to take up the rest of the drive.
Did you guys remember to create an "app" folder on the EXT3 partition?
There are other folders that you can create to put the delvik cache on there among other things. I just don't remember off hand what you need to name them as.
Ya there is a folder there called apps, but for some reason, nothing is moving into it. do i need to run some sort of a script? what i did:
1. flashed dexters 1.3
2. partitioned sd card using partition wizard with a fat32, a ext3 and a swap partition
3. booted up phone, internal memory shows 134mb, all apps installed go to internal memory.
4. terminal shows ext partition with 1100 mb free space
Am i missing a step?
Thanks in advance
Frisbee6 said:
Ya there is a folder there called apps, but for some reason, nothing is moving into it. do i need to run some sort of a script? what i did:
1. flashed dexters 1.3
2. partitioned sd card using partition wizard with a fat32, a ext3 and a swap partition
3. booted up phone, internal memory shows 134mb, all apps installed go to internal memory.
4. terminal shows ext partition with 1100 mb free space
Am i missing a step?
Thanks in advance
Click to expand...
Click to collapse
not folder apps but app no s....if your ext3 working fine then shud have lost+found folder @/sd-ext.. create app folder using root explorer then reboot..now your app shud automatically move to sd-ext..
and create cache folder dalvik-cache
Well i did what you guys said and now my apps are going to /sd-ext/app but im also losing space in the internal memory, and it does not show internal + ext3, it only shows internal. You guys have any idea whats happening?
Thanks for all your help guys.
Frisbee6 said:
Well i did what you guys said and now my apps are going to /sd-ext/app but im also losing space in the internal memory, and it does not show internal + ext3, it only shows internal. You guys have any idea whats happening?
Thanks for all your help guys.
Click to expand...
Click to collapse
Are you using Dexter 1.3 without any patches?
[If so, probably your dalvik-cache is on /data? So... even though the apps are going into /sd-ext, the optimized versions of the dex are being stored on internal memory.]
Yes... no patches, and dalvik is going to /data. Any idea whats up?
Frisbee6 said:
Yes... no patches, and dalvik is going to /data. Any idea whats up?
Click to expand...
Click to collapse
That's just how Dexter's 1.3 works by default and one of the reasons I started the bugfix patches. If you apply bugfix patch 3 dalvik-cache will move to /cache automatically (you can optionally move it to /sd-ext by creating /sd-ext/dalvik-cache and rebooting).
http://forum.xda-developers.com/showthread.php?t=995989
Or, if you don't want the patch, you can maybe use Androidiani OpenRecovery--it has a menu option to install an init script to move dalvik-cache to /cache. I haven't tested whether that works or not, though.
After this patch, now the /sd-ext/app folder deletes itself after i restart the phone, tried a few times, same goes for davlik-cache. This is crazy every thing that could go wrong has gone wrong, thanks again for your help. You got any other suggestions?
I do not understand what you worry?
It works now, thanks alot for all your help guys, really appreciate it!
Frisbee6 said:
It works now, thanks alot for all your help guys, really appreciate it!
Click to expand...
Click to collapse
How you did it?
V_XT720 said:
How you did it?
Click to expand...
Click to collapse
1. Formatted my card to the required partitions.
2. Flashed dexters rom followed by Mioze7Ae's bugfix 3.
3. Using root explorer I created /app folder.
4. Downloaded apps like there's no tomorrow.
Sent from my XT720 using XDA App
I tried two different ways to partition my sd:
1) I used Gpatred and I did everything as described here - http://www.youtube.com/watch?v=6z1Tu9l8WNc&feature=related.
2) I used MiniTooLsPartition Wizard and Root explorer to create app and dalvik-cache folders.
In both cases, everything seems fine....until i install some apps. After restart the phone can not load the android. The phone only shows M logo and restart. If I remove the card then OS load. What I have to do? Thanks in advance.
Are you partitioning your sd while its in the phone? Use a card reader if possible. Wipe clean your partitions and wipe data and dalvik cache. Then try again, although i did not have the problem that you mention, are you running any other scripts? eg. darktremors?
What I did:
1. Clean Installation of Steelblue V4 rom.
2. Two primary partitions (FAT32 and EXT3). I used card reader.
3. App and dalvik-cache folders on ext3 partition.
4. Wipe clean partitions and wipe data and dalvik cache.
After first reboot everything was fine. Then I installed a root explorer to check a ext3 partition. The app and dalvik-cache folders were there. I decided to restart the phone again before I install anything else and nothing happened....only M logo
V_XT720 said:
What I did:
1. Clean Installation of Steelblue V4 rom.
2. Two primary partitions (FAT32 and EXT3). I used card reader.
3. App and dalvik-cache folders on ext3 partition.
4. Wipe clean partitions and wipe data and dalvik cache.
After first reboot everything was fine. Then I installed a root explorer to check a ext3 partition. The app and dalvik-cache folders were there. I decided to restart the phone again before I install anything else and nothing happened....only M logo
Click to expand...
Click to collapse
dalvik-cache on ext partition will cause bootloops in Khal's ROMs.

G2x sd configuration thread

Yes, I have searched; don't give me the whole guilt crap
I would like to know a couple of things...
1. Internal phone storage & phone memory, what is the difference and is there any mods people are doing with them as far as combining or something?
2. SD partitioning... are people still doing this and if so what are you recommending?
3. Swap... probably a thing of the past, but just would like to know.
Class 4 32gb
Running Weapon G2X
Faux stock kernels
Clockwork EXT4
alright lets make this world a better place, i'll tell you what i know
internal storage, is basically yours to use, add your music pics or whatever, just like how u use an sd card, phone memory aka application memory is reserved for apps only, no way of combining them, dont need to anyways, sd partitioning i never tried but i think its says it all, dividing your sd card into two or more partitions..make seem like you have two or more, u can reserve one just for music or pics or roms
and what do u mean by swap??
ooh yah if i helped a little hit the thxs button, imma collect now too lol
I came from from the G1 where it was standard practice to partition into fat32/ext/swap. Since moving to the G2x I have not needed it. Phone is super fast without swap and more than enough space for apps.
As for combining internal and external SD cards, I don't think I've seen that yet...
Sent from my LG-P999 using Tapatalk
I've never seen them combined but don't know if you can because if you remove the microsd, it would get all screwy.
I don't even use internal unless the rom does. I have a collection of apks/walls/music and my titanium files on my SD... everything else is expendable.
Sent from my LG-P999 using xda premium
player911 said:
I've never seen them combined but don't know if you can because if you remove the microsd, it would get all screwy.
I don't even use internal unless the rom does. I have a collection of apks/walls/music and my titanium files on my SD... everything else is expendable.
Sent from my LG-P999 using xda premium
Click to expand...
Click to collapse
and with those on the SD are you using them just anywhere on the SD or do you have an EXT 4 partition?
dylyxcore said:
Yes, I have searched; don't give me the whole guilt crap
I would like to know a couple of things...
1. Internal phone storage & phone memory, what is the difference and is there any mods people are doing with them as far as combining or something?
2. SD partitioning... are people still doing this and if so what are you recommending?
3. Swap... probably a thing of the past, but just would like to know.
Class 4 32gb
Running Weapon G2X
Faux stock kernels
Clockwork EXT4
Click to expand...
Click to collapse
Internal phone storage is where your system files are stored. It is also where apps from the market are installed. Phone memory is utilized by the stock roms as the default "sdcard". By default this is where your photos, music, documents, etc are stored. There is also an external slot for a physical sdcard. This is actually mounted to /sdcard/_ExternalSD with a stock rom.
There is no need to partition the external sdcard. There is enough space on the phone by default and it probably wouldn't be worth the hassle to make it work.
I don't think you need swap with this phone.
phburks said:
Internal phone storage is where your system files are stored. It is also where apps from the market are installed. Phone memory is utilized by the stock roms as the default "sdcard". By default this is where your photos, music, documents, etc are stored. There is also an external slot for a physical sdcard. This is actually mounted to /sdcard/_ExternalSD with a stock rom.
There is no need to partition the external sdcard. There is enough space on the phone by default and it probably wouldn't be worth the hassle to make it work.
I don't think you need swap with this phone.
Click to expand...
Click to collapse
Thank you for clearing this up, so in clockwork recovery why does it support EXT 4? Is that just the format it saves a back-up in?
dylyxcore said:
Thank you for clearing this up, so in clockwork recovery why does it support EXT 4? Is that just the format it saves a back-up in?
Click to expand...
Click to collapse
No. Ext4 is a type of filesystem used commonly in Linux, just like FAT and NTFS are used with Windows setups. There are some roms that will mount your system as, or even fully format your system into a ext4 filesystem. Clockwork supports that filesystem, meaning it can be used to install ext4 roms.
phburks said:
No. Ext4 is a type of filesystem used commonly in Linux, just like FAT and NTFS are used with Windows setups. There are some roms that will mount your system as, or even fully format your system into a ext4 filesystem. Clockwork supports that filesystem, meaning it can be used to install ext4 roms.
Click to expand...
Click to collapse
Thank you for your help, one last thing... to run these do you need an EXT 4 partition, or is that completely different? What makes the ROM to be EXT 4?
dylyxcore said:
Thank you for your help, one last thing... to run these do you need an EXT 4 partition, or is that completely different? What makes the ROM to be EXT 4?
Click to expand...
Click to collapse
No you simply flash like you would any other rom. If the rom actually formats your drives to ext4 i beleive you will have convert back to ext3 in order to flash an ext3 rom. There is a conversion utility somewhere on here if you search around. Someone else wanna chime in to verify about the need to convert back to ext3?
phburks said:
No you simply flash like you would any other rom. If the rom actually formats your drives to ext4 i beleive you will have convert back to ext3 in order to flash an ext3 rom. There is a conversion utility somewhere on here if you search around. Someone else wanna chime in to verify about the need to convert back to ext3?
Click to expand...
Click to collapse
Yeah I read about the EXT 3 to EXT 4 dilemma on here via CM7 when it was upgraded from an overnight build or something... I think it had to do with restoring apps or data? Really appreciate your information, this finally clears up the confusion
p.s. thanks'ed all your replies

New to CM7

Hi all,
So last night I decided to give Cyanogenmod7 a try. I came from MIUI.us 2.1.20 - I just love MIUI, but it's a bit too demanding for the Milestone. So I have CM7 up and running, and it is a lot more snappy. But now, I'm having trouble installing some apps.
I tried installing my bank's banking app, but it didn't install - checked the market and it doesn't appear. Same thing with WhatsApp!! If it were working, I might just become a CM7 user..but it's not working.
Am I missing something? I installed after doing a full wipe, after which I installed DT A2SD scripts and then gapps-20111216 (although didn't see gmail or market etc after gapps, so installed those via apk).
What's the deal here?
Thanks.
Sent from my Milestone using Tapatalk
Ok, just wiped again, and reinstalled all. CM7 then gapps then dt a2sd. So far it's working.
Sent from my Milestone using Tapatalk
googleservicesframework.apk and vending.apk are all you need for using market. Try to reinstall them. May you success.
Ok, so now my problem is A2SD. It's not working! A2SDGUI refuses to go in, and when I do a check, I get a segmentation fault...I've never had this issue before. I've tried reinstalling DT A2SD from withing recovery and still, nothing. Please assist, I just need to get set up properly now.
Regards
Sent from my Milestone using Tapatalk
DT scripts dont work ...use an external partition (app2ext)
d.casper.b: CM7 for Milestone already comes with its own ap2ext scripts that are automatically used if there is ext partition present on your sdcard.
You should not install any 3rd party app2ext scripts as they are very likely to be conflicting with the scripts that are already there.
Thanks kabaldan.
I'll check it out.
I was even going so far as trying to use Link2SD from the market..
How'd I know if it's working? By monitoring the available internal storage?
Sent from my Milestone using Tapatalk
d.casper.b said:
Thanks kabaldan.
I'll check it out.
I was even going so far as trying to use Link2SD from the market..
How'd I know if it's working? By monitoring the available internal storage?
Sent from my Milestone using Tapatalk
Click to expand...
Click to collapse
when you will enable app2ext you will see the total space in your storage rise to 197 mb
I am not winning. I did a factory reset and flashed cm7 and gapps (not dt a2sd).
I did a test, internal storage was at 191mb, then I installed opera mobile and it went down to 182mb. Then uninstalled it again. Went into cyanogenmod settings and set install location to external. Installed opera again, but it was no different. Moving it to sd under 'manage applications' increased the internal memory again, but that's just moving the app to the FAT32 partition of the sd card.
So it's not seeming to work for me for some reason.
Sent from my Milestone using Tapatalk
EDIT: I really don't want to be a nuisance, but now, looking at the available storage using "Quick System Info", I noticed after uninstalling "Opera Mobile", 9mb was freed on internal storage & 13mb on the ext partition.
So, perhaps it is working, and since the dalvik cache is (I assume) on internal storage, the storage is still decreasing. Am I correct? If so, is there a way to also move dalvik cache to the ext partition - I had it like this on MIUI & never looked at available memory ever again.
First of all, have you really partitioned your SD card? Make sure you followed the 3rd step on this guide: http://www.mrmuh.com/2012/01/update-a-motorola-milestone-from-motorola-firmware-to-cyanogenmod-7/ . You should have your SD Card partitioned with two partitions, the first should be FAT32 that's used normally on Android, and the second EXT3 or EXT4. Obviously, make sure you have a backup of your FAT32 partition before partitioning.
Second, you should understand how the apps2ext scripts on CM7 work. Application installs that would be stored on internal memory are rerouted to the EXT3/4 partition on the SDCard. This happens at the underlying system (linux) level, Android (that runs on top of linux) is not aware of this rerouting, so, as far as Android "knows", apps that are rerouted to the EXT partition are on the phone's internal memory. That means that you should make sure that apps you need installed on the EXT partition of the SD card are shown in "Applications > Manage applications" list to be installed on the internal memory. Yep, it's confusing, but once you understand how it works and why it works that way, it makes sense.
Third, the fact that apps are rerouted to the EXT partition doesn't mean that everything about the app will live on the ext partition: it means only the main application package will live on the ext partition, application data is still stored on the internal memory. For most apps, the amount of data used for application data are much smaller than the application package, but in some apps the amount of application data from the app may often surpass the size of the app itself - for example, in my phone, Tweekdeck stores about 9Mb of data, which is about 10 times the size of the application itself (820kb) - presumably this amount of data is cached tweets, pictures, etc. But that case is usually the exception, not the rule, I've just mentioned it so you understand that using apps2ext doesn't mean your internal memory will always stay unused, it just means it will be used (way) less.
Finally, regarding the CyanogenMod Settings location setting, if you understood what I said above, you should now understand that it should actually be set to always install to "Internal", rather than external. However, there's a bug in this that you should be advised, that not all apps will respect this setting: some apps will install to external regardless of how you've configured that setting (meaning the app will use Froyo/Gingerbread native Apps2SD, hence being installed to the FAT partition of the SDCard). So, when you install a new app, check on app management if it didn't get installed to the SDCard, and move it to the internal memory if that's the case. For these kind of apps, you'll have to do it every time you update the app too.
Thanks, I edited my previos post..
I actually have 3 partitions, a FAT32, an ext2 (maybe it's ext3, but doubt it - partitioned some months ago, so my memory's hazy), and a SWAP - which I should get rid of, but am too lazy.
I understand entirely what you've said, I know that internal is really ext if working, and sd is FAT32 partition.
You see, I'm just new to this rom and have to trial and error until I understand, with miui you just flashed the rom and the a2sd scripts and didn't bother again (maybe only to move an app that installed to FAT partition). But it seems CM7 is simply just to flash the rom and you're good to go. But as I was pondering in my previous post...is there any way to move dalvik cache to ext?
Thanks for putting up with me..I'm almost there.
Sent from my Milestone using Tapatalk
d.casper.b said:
Thanks, I edited my previos post..
I actually have 3 partitions, a FAT32, an ext2 (maybe it's ext3, but doubt it - partitioned some months ago, so my memory's hazy), and a SWAP - which I should get rid of, but am too lazy.
I understand entirely what you've said, I know that internal is really ext if working, and sd is FAT32 partition.
You see, I'm just new to this rom and have to trial and error until I understand, with miui you just flashed the rom and the a2sd scripts and didn't bother again (maybe only to move an app that installed to FAT partition). But it seems CM7 is simply just to flash the rom and you're good to go. But as I was pondering in my previous post...is there any way to move dalvik cache to ext?
Thanks for putting up with me..I'm almost there.
Sent from my Milestone using Tapatalk
Click to expand...
Click to collapse
in the market you will find an app called s2e which moves app data, davlik cache to sd
also link2sd also free's up more space and makes cm7 snappier
please don't install such things to CM7 for Milestone unless you know what you are doing and you are able to resolve conflicts with the existing scripts
dalvik-cache is already moved automatically
if you want to free more space in /data, enable lib2ext to move native libraries to ext - it's mentioned in the changelog for 7.1.2 release
app data itself should not be moved as it can cause instability
d.casper.b said:
Thanks, I edited my previos post..
I actually have 3 partitions, a FAT32, an ext2 (maybe it's ext3, but doubt it - partitioned some months ago, so my memory's hazy), and a SWAP - which I should get rid of, but am too lazy.
Click to expand...
Click to collapse
Yeah, get rid of swap, there won't be any use for it (for now anyway) and it's best for you at this point to have a known working structure (two partitions, 1st FAT, 2nd ext3/4) for your SD as you're troubleshooting your problems/questions, it'll make it easier for us too as this will eliminate potential points of failure or inconsistencies. And you should really consider upgrading to a journaled filesystem, either ext3 or ext4. Using ext2 is unreliable because Android doesn't umount the ext partition cleanly on reboot or shutdown, so you may have problems with apps disappearing or misbehaving every other reboot. Using ext3/4 with journal elimitates this problem since the journal is just replayed for the uncleanly umounted partition and the filesystems behaves more consistently.
d.casper.b said:
You see, I'm just new to this rom and have to trial and error until I understand, with miui you just flashed the rom and the a2sd scripts and didn't bother again (maybe only to move an app that installed to FAT partition). But it seems CM7 is simply just to flash the rom and you're good to go. But as I was pondering in my previous post...is there any way to move dalvik cache to ext?
Click to expand...
Click to collapse
The apps2ext script built on CM7 should do this by default - you probably already have your dalvik-cache on the ext partition. To check this, go into OR, enter the console and type: "ls /sddata/dalvik-cache" . If it returns a list of files, you've already got the dalvik-cache on your ext partition. Another option is setting the option dalvik.vm.dexopt-cache-only to 1 in the file /system/build.prop . This will put all dalvik-caches (both from user apps and system apps) on the phone's internal cache partition, thus still freeing space on the internal memory but without using the ext partition, but that's not recommended if you install too many apps because the cache partition may run out space and that will spawn all kinds of weird behavior on Android. The safer route is just using the default configuration anyway (user apps dalvik-cache on sd-ext).
Another option to further reduce internal memory use is using lib2ext, that will move user apps native libraries to the ext partition, but the memory gain in this case is dependent on which apps you use and how big their native libraries (if they even have one) are. To activate it, just go into the Terminal app (with Android booted) and type:
$ su
# lib2ext
And reboot. The libraries will be moved to the ext partition during boot. Make sure you have a big enough ext partition to hold everything (apps, dalvik-cache and apps libs) - the size to recommend is very dependent on how many apps you use and how big they are, but I'd say 512Mb would be the bare minimum.
in the market you will find an app called s2e which moves app data, davlik cache to sd
also link2sd also free's up more space and makes cm7 snappier
Click to expand...
Click to collapse
DON'T! JUST DON'T! These third-party apps will cause all kinds of problems with CM7 builtin apps2ext.
EDIT: Oh well, Kabaldan already put all my rambling much more succintly than I could... I'm way too talky
well i was jus trying to help.. .anyway guys thanks i guess i won't be needing those apps anymore ...sorry for my noobness
Thank you so much guys!
It seems like it's working. I will check out lib2ext & the other suggestions tonight or over the weekend (on my way to work now).
I must say, I thought the move to CM7 would be a temporary one, but the speed gain is just what I needed, & the tweaks I thought I'd miss I am finding hidden in the settings .
Just wondering on the battery now - but I've been fiddling non-stop.
So let me play a bit more the weekend & I'll merge my ext2 and SWAP partition into one ext3 partition.
Thanks all, and kabaldan for your hard work on this rom.
Sent from my Milestone using Tapatalk
Just as I was on my way...
Everything's running fine, A2SD works. But now, I partitioned my SD card with a 2nd partition (ext3, it was ext2), but now widgets are not loading. Checked the apps install location, and it's 'internal', ie. ext3. I never had this before. I think maybe it's due to the filesystem now?
EDIT: Ok, ext2 is doing the same. I can't keep starting from scratch the whole time guys.
EDIT2: It's now suddenly working! Just have a Fat32 and an Ext3 partition. But I don't understand because it's been setup like this twice before with no success. I'll hold thumbs!
PS, CyanogenMod is quite up my alley now, speed is awesome and I'm happy.
Sent from my Milestone using Tapatalk

SD Card partitioning on MTD ROMs

Hi There
Can someone explain what he\she did to partition SD card, and make all apps get installed on it.
Please note :
1. I don't want to use Titanium backup for this usage. I don't have the paid version and I'm tired of doing this one app at a time.
2. I saw some guides on the net, but they were all for GB.
(partition the microSD on PC using minitool) -can we use ext4 on our MTD ROMs ? What is the 1st partition for ? and the 2nd ?
(install busybox and super user) - Is it still needed ? (MIUI for example has LBE as su).
(install Link2SD) - Is it always in memory ?
(reboot and put partitioned SD card)
(Define Link2SD)
3. I also saw swapper instructions but I can manage with 170MB free RAM memory I get after removing all unnecessary system apps, and I remember ppl saying then that it kills the SDCard very quickly.
If someone has a clear guide or instructions that he knows work, that will be nice.
Thanks in advance.
Step 1. Partition your SD card to have a sd-ext partition. This can definitely be ext2 or FAT16. Anything else depends on your kernel. Most of them do support ext3 and 4, but... start with something fairly basic.
Regarding recoveries:
TWRP has always failed for me on this, so I'd avoid that.
This may be doable in CWM. I've seen reference to that newer versions of CWM removed the partition option, so you might need to flash an ICS ROM with an older kernel, repartition, and then flash back to the one you want.
Also note that if you use CWM to repartition, your SD-card will be wiped. So do a backup first.
Step 2. Install Mounts2SD. Either from XDA or the Play Store. Even if you do take it from the Play Store to get update notifications, I highly suggest grabbing the recovery script from the XDA thread so that you can get back your shifted applications without needing to re-download and install M2SD, since it likes to be on internal which means... shifted off.
Step 3. Open Mounts2SD. Grant SU rights at whatever point it asks for it during step 3. Hit the menu button. Go to Application Settings. Install the Startup Script. Tell it to use the built-in busybox as well, so that you don't need to install anything or worry about it failing. Back out of the Application Settings.
Step 4. Press on the Wrench to go into the actual specific settings. I currently have forced Cache, 1% Storage Threshold, Applications are the only bit moved, the File System Check is on and using the Ext4 Driver, 128KB Deadline for Internal and 4096 with Deadline for External, and Safe Mode is disabled. But decide on what you want yourself, set it, go back to the Eye to see your current info.
Step 5. Reboot.
Step 6. Wait 1-30 minutes for it to finish moving all your stuff around.
Step 7. Unlock your phone, open Mounts2SD, and make sure everything looks pretty on that first 'Eye' info tab. If you like it then close Mounts2SD and keep going on your merry way. If you don't like it or you've done something like offload your data and now your phone is wretchedly slow, go to the Wrench, change your settings, go back to the Eye, and reboot again. Repeat until satisfied.
I thought it would be simplier.
A few more questions:
1. If I partition SD on PC, then I don't need any partitioning on recovery so it should work fine even on TWRP or advanced CWMs. Am I right?
2. Why do I need scripts for? Isn't the app enough?
3. Why should/could it possibly slow down my device? TB 'move to SD' for all doesn't slow my device what so ever.
4. How and where do I see what partition is used for what?
5. How much RAM does the app take?
6. Have you tried other apps link2sd or something CM has built in I think.?
Thanks.
sent from me
New answers to new questions.
1. Skip step 1 if you've done it on your PC. I just suggested recovery as that's easy... if you've made your sd-ext partition on the PC, step 1 is done.
2. No clue on Link2SD. I use Mounts2SD instead since it lets me set things. It probably does the same thing though and sets a init.d script that gets run during startup.
3. True. For some reason though having all your data moved to sd-ext makes our phone go to a crawl. Same if you move off the dalvik.
4. That's in Mounts2SD. No clue how you can see if you're using Link2SD.
5. For Mounts2SD, none while it's being used, since it just runs as a startup script. The app is just to control the script.
6. Not successfully. I had tried 5 or 6 different apps back a year ago or so when I first started playing with sd-ext and Mounts2SD was the best and free, so... never looked back after that. Now you can also do some system-flag tweaking if you want to donate, but the sd-ext stuff is all free.
I was able to successfully partition SD and use mount2sd on 4.3 SlimBean.
however, it was rather slow.
CM 10.1 and CM10.2 by DJL. did not allow me to partition nor did they recognize SlimBean's partition even if I replaced them kernel (to NilTMT).
I'm currently using CM10.1 which is stable as a daily driver and manually swapping apps with TB, I hate it, but this is the best combination I've come so far.
I sold my wife's SGS4G and upgraded her to SGS3 and hopefully in a year I will do the same. it had its moments, but on the bottom line it's a pretty ****ty phone with its lack of internal mem...but hey, it drove so many of us to go deeper and deeper trying to understand and made us more tecnolgical and solution oriented.
Mounts2SD worked for me on CM10.1, so not sure why it failed for you. Ah well.
A few things I have found...
Yes, you can partition on Windows, but you're really asking for trouble. It's not too bad download Ubuntu or the like and you can boot off a USB stick without touching your Windows install.
The TeamAcid kernels that I know of handle ext2/3/4 file systems. All kinds of arguments as to which are better. I personally use ext4 and don't find it obviously "slow" for the way I use my phone.
That said, what the boot scripts (which are part of a flashed "kernel" for the SGS4G) actually do with a "special" partition is another story. In some cases the first stages of booting will look for special partitions and mount them in pre-configured places. For example, the second partition of the removable card might be mounted on /sd-ext/ in many CyanogenMod ROMs. Many (most?) SGS4G ROMs don't have these "special" mount rules defined.
Moving an app to SD using the "native" approach just moves the app and none of its data to the SD card. It won't for example, move 25 MB of mail from /data/data to your microSD
Moving an app to SD (or anywhere else) doesn't keep it from generating its classes in /data/dalvik-cache -- It isn't "free" to have an app on SD as far as internal storage goes, even if it doesn't write any data.
Moving an app to SD will absolutely slow down your boot time. It does it by creating a file that contains a file system that then gets read and mounted at boot time. You can watch the parade of them getting mounted using adb logcat. It can take a minute or two to mount them all. Once mounted, that double layer of file systems shouldn't slow you down too much, since it is basically a read-only kind of thing.
Scripts are required since you need to be able to "fake out" the operating system as to where things are stored for anything (except if you just use the native app to SD method). In most cases you need new partitions mounted before the Android part of the OS starts running.
Some scripts are more robust than others.
TitaniumBackup (paid version) has a way to move data to an external partition. It works like a charm for me (64 GB Sandisk UHS-1 / Class 10 microSD). It was very tweaky for me to get it to recognize the ext4 partition the first time. It can bulk-move app data to the partition. I don't know which, if any, of the other scripts move the data to an external partition.
On my phone, an ext4 file system can be significantly faster than the internal yaffs, especially for write. Alas, it usually seems to be read that is a killer for most things in an well-written app. On my phone, yaffs can be faster than ext4 for short reads. Who knows how this would play out in real-world usage.
Other things that TitaniumBackup can do that help free up internal storage, at least in the paid version, are:
Dalvik cache cleanup
Integrate system Dalvik cache into ROM
Integrate update into ROM
Convert to system app
I can confirm Link2SD works where Mount2SD fails, which is an ext3 partitioned sd-ext on AOKP. it doesn't get any simpler than that.
sent from me

[Q&A] 2 GB External Data -- Hefe Hook Kernel and others

The Hefe Hook kernel allows you to mount a partition of your microSD as /data, getting 2 GB (or more) for your apps and their data.
Please ask your questions here about installation, use, or general approach.
This is great @jeffsf and can u show me how to re-partition the "real internal" storage? I mean expanding the /system since u put the /data out of it. Thanks man
Sent from my GT-N7000 using Tapatalk 2
daothanhduy1996 said:
This is great @jeffsf can u show me how to re-partition the "real internal" storage? I mean expanding the /system since u put the /data out of it.
Click to expand...
Click to collapse
Yes, you've hit on another of the reasons I've been exploring using the microSD for "live" storage. It's one thing to use potentially slow storage for photos that you basically write once or "app to SD" where you read the APK at boot time, make sure your ODEX in the Davlik cache is good, then generally read from the internal-flash cache. It is another when that memory is being read and written "constantly" when your phone is running.
The good thing is that once /data is not part of the internal flash filesystem, you don't have to worry about one ROM (kernel) thinking it begins at one place and another saying it starts at another. Previously, if one ROM had one /system size and another and a different one, the next partition, /data, would look to be corrupt when you swapped ROMs.
As a warning, not all users have fast microSD cards. Some that say "Class 10" on them really are dogs, especially for small reads/writes. The "Class" ratings are for sustained writes, as you would have with a camera recording video. If your ROM is "external /data" only, or even defaults to that, be prepared for a slew of "Your ROMs sucks. It is so slow." complaints.
You'll also need a way to automate formatting the card. It can be done on the phone, as long as you aren't trying to preserve any data.
As I recall, the layout of the MTD partitions is done in drivers/mtd/onenand/samsung_galaxys4g.h I would be careful not to move the partition boundary for efs, as you'd have to move the data it contains in your updater script. Repeating the warning about not moving the boot and recovery partitions is probably a good idea as well!
Your build tree may need some of these values, or at least think it needs some of these values. For example, device/samsung/aries-common from the CyanogenMod/cm-11.0 (KitKat) branch calls out NAND page sizes, partition sizes, and flash block sizes. I haven't looked in detail at your build tree so I can't comment on how it might handle things differently than the CyanogenMod one.
itzik2sh said:
Hi
I hope I don't ask anything silly, but please let me know if any of my assumptions is wrong :
1. I take FBi's251's AOKP milestone 6 (ICS 4.0.4)
2. 8GB SDCard was formatted to FAT32 (4GB) and EXT3 (4GB) using TWRP kernel
(Beastmode's proton kernel to be exact).
3. I would flash this kernel and it would move apps and their data to the sd-ext
without any special additions.
Thanks. I read the thread, but unfortunately 8GB SD is what i have and I think it should be enough.
Thanks again.
P.S - it's for 2 guys I already sold them my SGS4Gs. I want them to be happy...
Click to expand...
Click to collapse
AOKP should be fine. I haven't tried it recently, but it was the tree in which I did the early Hefe Kernel development.
As I understand it, you have a microSD with
partition 1: 4 GB FAT32
partition 2: 4 GB ext3
So that can work, but will need some tweaking of the init-on-fs.sh script. I intentionally didn't use the second partition as so many scripts gobble that up as sd-ext and do who knows what to it.
My first preference would be to reformat the cards, perhaps:
6 GB FAT32
1 MB ext2/3/4 (Yes, 1 MB, a sliver, choice of ext2, ext3, ext4 up to you)
2 GB ext4
since then the script will work without modification and if they install a third-party script that uses the second partition, it won't corrupt their data.
If you were to keep the formatting the way that it is now, you'd need to edit the mount commands in the script to look something like:
Code:
/system/xbin/busybox umount /data
/system/xbin/busybox mount -t ext3 -o noatime /dev/block/mmcblk0p2 /data
(removing the sd-ext mount)
I'm not sure what your expectations are, but all that the kernel and that script will do is mount a different disk partition on /data -- you need to manually move the data over (or restore from something like Titanium Backup). There may be some trickery in renaming that could be used with TWRP backups to restore from data.yaffs2.win to the new /data partition, but I haven't tried that at all.
Hi Jeff
Thanks for your quick reply, and sorry again for not seeing the Q&A thread.
I think making it :
partition 1: 4 GB FAT32 (sdcard)
partition 2: 2 GB ext3 (sd-ext)
partition 3: 2 GB ext3 (data)
partition 4: 1 MB (spare)
would be better and handle data as well. don't you think ?
Would it be worth doing with a "Team" micro-SD card (class 6 I believe) ?
Thanks.
I haven't tried a Class 6 card, but my gut feeling is that it will be dicey. I didn't "commit" to using /data on microSD until I had tried it for several days using Titanium Backup's ability to move both apps and app data to the external card. I would try that first, especially as the phones in question aren't going to be in your hands (I consider you an expert user, able to manage things outside the UI with ease).
I've attached some testing I did a while ago with Transcend and SanDisk cards. When you look at them, realize that the speed scale changes between them. I have a feeling that the real "performance" on a device is going to be related to relatively small reads and writes, not the ability to stream video to the card. I also don't know much about the Team brand, but I found that even some well-known brands didn't have the performance of the Transcend or SanDisk in the same category.
However you configure your cards, I would definitely recommend a journaling filesystem of some sort. I've had my microSD come loose inside the phone. The journal will at least help to reduce any filesystem corruption should that happen.
You don't need the fourth partition -- I have it there to be able to keep rsync backups for fast ROM swapping.
.
Regarding the apps data, have you tried exploring the Mount2SD script ?
sent from me
I've tried a couple of the scripts out there in the past. Since backing up my data is very important to me, I trust the scripts in Titanium Backup to work well with its backup/restore strategies.
Mounts2SD looks like it has gotten a lot more sophisticated than it was when I tried it in the past. It sounds like something worth trying in its current state. At a quick glance (and not looking at the code), I'd personally make some different choices about features; enabling journaling, and being concerned about why lost+found was filling up (things should only appear there if the file system is found to be corrupt).

Categories

Resources