At the suggestion of several users, I am forking the previous thread. I am planning on supporting several ROMs and this is the best course to keep everything organized and provide support.
What is this?
Background:
The speed of the flash memory in the Transformer line of tablets is very poor. This is very apparent when installing or updating applications from the Play Store, copying files over USB, or using an app that caches lots of data like a web browser. The tablet will hiccup and stutter due to the I/O bottleneck. Running Androbench shows random write speeds averaging less than .2MB/sec.
The workaround:
Utilizing a fast, class 10 microSD card, we can move the /data partition to something significantly faster. The /data partition is where apps are installed to and where they store their configuration information and data. By redirecting /data to these fast microSD cards, we eliminate this bottleneck from our devices. With a properly fast card, users have reported a complete elimination of I/O related hiccups and system freezes. I have based my enhancements on the initial work by TweakerL on the Transformer Prime. Credit to fordwolden to porting his work to the Infinity.
The enhancements:
Previous implementations of this mod had the internal data partition mounted to /data2, with the media subfolder (your internal user storage) only available via root apps. There were symlinks set up at /sdcardi, etc, but these still required root permission to access. This is due to permissions on the /data partition and applies to both /data and /data2. Google gets around this by creating a "virtual" sdcard that points to /data/media. I have created a second "virtual" sdcard that points to /data2/media. This mod creates the scenario below:
/data = ext4 partition on microSD (fast)
/data2 = ext4 partition on internal storage (slow)
New changes:
/data/media -> Virtual SD Card Daemon -> /storage/sdcard0
/data2/media -> Virtual SD Card Daemon -> /storage/sdcardi
/sdcardi -> Symlink -> /storage/sdcardi
/mnt/sdcardi -> Symlink -> /storage/sdcardi
/storage/sdcardi is the virtual SD card for the internal storage. You should see all the files you had saved to this space before using data2sd. These files should be accessibly by any standard non-root Android app.
Note to kernel developers: This mod is more than just changes to the kernel. In order for the internal storage to be properly mounted at /storage/sdcardi, I have modded the Virtual SD Card Daemon that comes with Android. The stock binary is /system/bin/sdcard. I made a copy, modified it using a hex editor, called it /system/bin/sdcardi, and included it in my flashable zips. If you wish to make a data2sd version of your kernel, you must include this file in your zip. Additionally, be sure to add the "service sdcardi" line to your init.cardhu.rc that I have in mine.
Installation
Requirements
1) Class 10 microSD, at least 8gb
2) A computer with card reader
3) Partitioning software. Recommended: gparted LiveCD
Instructions
1) Decide how big you want to make the ext4 partition for /data. Remember, this is going to be the space for installing applications AND the /sdcard space that games will use the cache their extra data. Kindle books, Dropbox files, pics from the camera WILL ALL GO HERE. Personally, I decided to make the ext4 partition the whole 64gb of my card.
The ext4 partition has to be partition #2 on the microSD card. Why? This is to give people with large cards the option of creating a FAT32 or NTFS area as partition #1. This allows the card to be read by a Windows or Mac computer using a card reader. I use my tablet as my card reader with the USB cable, so I wasn't worried about this. I used gparted to create a small 8mb unformatted partition as partition #1, then a second 64gb partition to fill the rest of the card. I formatted this second partition in ext4.
2) Format your microSD card - Download Gparted Live CD (http://goo.gl/dJQAu) and use Imgburn (http://goo.gl/33MY9) to write to disc. Boot to Gparted using your CD after setting the CD as the primary boot device in your BIOS. Once in Gparted, create the 2 partitions described above, the first partition is Fat32, the second partition is ext4 or ext2. Set both partitions to type: Primary.
3) Insert microSD into tablet and flash any data2sd kernel for your ROM. (Note: Flashing any ROM will overwrite your data2sd kernel. You will have to re-flash the data2sd kernel if you change ROM or even upgrade your current one) After booting back into Android, you should be greeted with the Setup Wizard. Remember, this is a fresh /data partition, so it's a clean slate. It's a good idea to take a TitaniumBackup** ahead of time. I am experimenting with ways to make the transition more painless.
**Note about taking a TitaniumBackup before switching to data2sd. After the conversion, your internal storage will be mounted to /sdcardi. By default, TitaniumBackup looks for previous backups in /sdcard not in /sdcardi. You have two choices. Copy the TitaniumBackup folder from /sdcardi to /sdcard and restart the app, or change the backup location to /sdcardi/TitaniumBackup in the app preferences. Either of these options should work fine.
Optional: Verify data2sd is working. Pick any method you like:
a) Open a file explorer such as Root Explorer, ES, etc. You should see /sdcard and /sdcardi and be able to browse the files within. /sdcard is your ext4 partion on the microSD while /sdcardi is the internal storage. You should able to copy data between them.
b) Download "Androbench" app from the market and run "micro" sdcard check, if you see 0.4mb/sec or more in random write you're on data2sd.
c) Power off your device, remove your microSD card, then power back on your device. You should received an error message "Encryption unsuccessful". Insert microSD and reboot to fix.
Uninstallation
Don't like data2sd? Just flash a non-data2sd kernel using recovery and when you boot back into Android your /data will be on the internal storage. This could also be accomplished by flashing your ROM on top of itself without wiping.
Troubleshooting
1) Grab the mount-data2sd.zip from the second post.
2) Boot into TWRP and flash the mount-data2sd.zip. This will mount the microSD as /data in recovery. It will allow us to wipe it, format, etc using recovery.
3) Wipe "Internal Storage". This will erase the entire ext4 partition on your microSD.
4) Flash ROM
5) Flash data2sd kernel for ROM
*CAUTION*: If you don't flash mount-data2sd.zip before your wipe, you will be wiping your internal memory.
Download data2SD kernels
These are flashable zips. It will disable journaling on the microSD ext4 partition. You do not have to do this manually! Flash these after flashing the ROM.
CyanogenMOD 10.1 - beta2: http://d-h.st/rOe (Based on 4-2 nightly and may behave unexpectedly on other builds)
CleanROM 3.2.2: http://d-h.st/sCa - WORKS WITH CleanROM 3.3!
clemsynTFUniversalCyano650GPUFsyncver3: http://d-h.st/duw
ClemsynTFUniversalStock: http://d-h.st/IBm
clemsynTFUniversal650GPUver7 (Stock/CleanROM): http://d-h.st/S4k
Recovery
I made a flashable zip to help the recovery console understand our modification. By default, if you go into recovery and do a factory reset, it is formatting the /data partition on the internal storage. The issue same applies to nandroids. We may be using the second partition of our microSD card for /data, but the recovery does not know this. It will look to the internal /data partition during backup and restores.
This zip does not make any modifications to your tablet or copy any files. It simply updates your recovery mount points. The changes are temporary and are lost during the next reboot. You will need to flash it each time you boot into recovery.
After flashing this zip you will be able to:
1) Wipe data / Factory reset. The /data partition on the microSD will be wiped
2) Backup and restore nandroids. The /data partition on the microSD will be backed up or restored.
3) Choose "Flash zip from internal sdcard" and browse the files on the internal storage
4) Access and flash zips from the microSD storage. Choose "Flash zip from internal sdcard" and notice the !microSD folder at the top. This is a symlink that will kick you over to the microSD storage. This !microSD folder appears on your internal storage after you flash this zip for the first time. It remains unless you delete it. Even so, next time you enter recovery this !microSD symlink will not go anywhere until you flash this zip.
Please report your experience with this.
http://d-h.st/pPe
This one too.
So this is basically flashable on CleanRom 2.3 right? Only thing wrong is that it doesn't show up in windows over USB? I can live with that as long as apps can read it in the Android OS itself.
can I use flash this on cleanrom 2.3 to diasable journalling on my ext4 partition
Diogenes5 said:
So this is basically flashable on CleanRom 2.3 right? Only thing wrong is that it doesn't show up in windows over USB? I can live with that as long as apps can read it in the Android OS itself.
Click to expand...
Click to collapse
Nope. This has changes to framework-res.apk which is ROM specific. I will post a CleanROM 2.3 version in a few minutes for you guys.
Thanks - Appreciate your hard work
---------- Post added at 08:46 PM ---------- Previous post was at 08:37 PM ----------
wow that was fast-thanks
---------- Post added at 08:58 PM ---------- Previous post was at 08:46 PM ----------
i was getting 6000 with clemsyn -I got low 5000's with this new mod
clownberg said:
i was getting 6000 with clemsyn -I got low 5000's with this new mod
Click to expand...
Click to collapse
This is not clemsyn's kernel, this is the stock CleanROM 2.3 kernel. I will mod clemsyn's latest kernel and post it for you.
Mistar Muffin said:
This is not clemsyn's kernel, this is the stock CleanROM 2.3 kernel. I will mod clemsyn's latest kernel and post it for you.
Click to expand...
Click to collapse
Unable to have it work with cleanrom. Boot loop
titou00075 said:
Unable to have it work with cleanrom. Boot loop
Click to expand...
Click to collapse
Use recovery to wipe the /cache partition. Due to the changes in framework-res.apk this may be necessary if you aren't coming from a completely clean install of a ROM.
I just booted to recovery and wiped my microSD /data partition. I also wiped /cache and /system. I installed CleanROM 2.3 and in the same recovery session I flashed the clemsynTF700ver22GPU650VC-data2sd kernel and it booted right up.
May be a stupid question but do you still need TWO primary partitions on the SD card (i.e., first is FAT32 while second is Ext4 and used by the mod)? If this isn't necessary or not possible, should the recovery (i.e., installation) files be placed in internal storage?
Forgot to mention I'm using Windows 7 MTP and CleanROM 2.3
Mistar Muffin said:
Use recovery to wipe the /cache partition. Due to the changes in framework-res.apk this may be necessary if you aren't coming from a completely clean install of a ROM.
I just booted to recovery and wiped my microSD /data partition. I also wiped /cache and /system. I installed CleanROM 2.3 and in the same recovery session I flashed the clemsynTF700ver22GPU650VC-data2sd kernel and it booted right up.
Click to expand...
Click to collapse
Ok thanks. Will do:thumbup:
Your Awesome, Thank you!
cheers
Thanks Gonna try this.
done the work install all three files in the OP, however it is taking a long time to boot....Can someone give me an idea as to how long this normally take onn first bootup after a fresh install?
please advise
tyfoxx
Couldyou make one for blackbean? i tried thecm 1029,but it doesnt boot. Would greatly appreciate it.
Sweet
I just ran every shortcut I could think of:
I used Mini partition tool to reduce reduce my 32 gig fat down to 16 gigs & then created a 16 gig ext4 partition.
Wiped everything in twrp and re flashed Clean 2.3 then the new zip.
All I can say is WOW.
Restored everything. Works great no more stalls and stable so far. Hope it stays this way. Now to focus on battery life.
Sent from my HTC Ruby using xda app-developers app
Diogenes5 said:
Restored everything. Works great no more stalls and stable so far. Hope it stays this way. Now to focus on battery life.
Sent from my HTC Ruby using xda app-developers app
Click to expand...
Click to collapse
Glad it's working! I've prepared a little treat for everyone to make our recovery lives a little easier. Need to test a few more things before I post!
I'm running CleanROM 2.3 and ClemsynTF700ver22GPU650VC (awesome combo, btw). If I want to use this MOD, should I need to flash first CleanROM-2.3-data2sd.zip and later ClemsynTF700ver22GPU650VC-data2sd.zip, right? Of course, also, formating my microSD using ext4.
Awesome work here Mistar!!!! Thank you so very much for this!!! Gonna replace my SanDisk 32gb Class 4 card with a SanDisk 64gb Class 10 before I run this on CleanRom. I'm super excited about this mod!!!!!! Thanks a million!!!!!!
Sent from my EVO 4G LTE using xda premium
Related
Hi All,
I got errors mentioned in the title and after few searches, found that there are few Galaxy SL owners who had got into this issue.
Currently Known Root Cause:
A hardware issue possibly due to a board issue or loose attachment of internal SD card to the motherboard (Grrrrrrr SAMSUNG!)
Symptoms:
- Suddenly core applications like phone/messaging start force closing (sometimes all open apps). Only a reboot will solve the issue.
- Sudden reboot of the phone after few hours of running (or even sleeping)
- Sometimes the restart itself hanging with a yellow message "Unknown Upload Mode"
- Message in status bar "Internal SD card has been removed unexpectedly" or "Internal SD card not accessible" or something like "Damaged SD card"
Known Solution:
1. Replacement of board from Samsung Service Center (Good for you if you are within the warranty period)
2. Do some hardware hack to remove the internal SD completely (http://forum.xda-developers.com/showthread.php?t=1651619)
I got this issue just after I finished my warranty period, and hence, I was trying to find if I can do something about this issue by my own. What I wanted was to actually swap my internal SD storage with a proper external SD storage. This is not same as the popular "swapping the internal and external SD card" topic, but that and something more as well!! This will solve the issue of force closes and sudden reboots (may still not solve issue of reboot getting stuck, but I assume phone will not need frequent reboot after solving first 2 issues!)
Galaxy SL has 3 partitions created in the card:
1. ext3 partition for data
2. another small FAT partition - (for what? not sure)
3. Third FAT partition which acts as the normal internal SD card (which is accessible when working as USB mass storage)
Intention here is to move all the partitions to the external SD. Looking at the mount points and vold.fstab, I could not find where the 2nd partition in the above list is mounted/used (If anyone knows, please let me know). So I decided to move atleast the ext3 (data) and fat (/sdcard) to the external SD.
Following are the steps I followed for doing the same:
WARNING!!!
1. Copy these at your own risk. I am not responsible if you brick your phone or lose your data/applications/settings or if the phone goes to a boot loop!
2. Do not continue if you do not understand what is written here
3. Doing this will change the /data partition. So wiping data partition in the normal way will not work (say from CWM). You may need to do 2 steps - wipe (internal) data normally (say using CWM), wipe (external SD) data manually by disabling the script mentioned in the procedure and wiping using make_ext4fs tool (steps are given in PART 3 of this post).
4. This has been tested only on CM9 Alpha 6-11 / rooted DDLF2. Theoretically it may or may not work on other ROMs, depending on other tweaks and changes in the system, no guaranty offered!
5. In case you mess it up, most of the time (but no guarantees!), you can recover by flashing from beginning using ODIN some base versions like KPE and then come to your normal ROM, followed by a nandroid recovery (so better do a nandroid backup before you try anything .
Pre-requisites:
- Rooted Phone
- Kernel with init.d support (and preferably ext4 as well if you want that)
- Basic ADB knowledge
- A blank micro SD card with at least class 4 (class 6 or greater preferred) speed and with sufficient capacity - say 8/16/32 GB
PART 1 - PREPARING THE EXTERNAL SD
--------------------------------------------------------------------
0. !!! FIRST !!!
Do a Nandroid Backup (and also other app level backups like Titanium or MyBackup)
Backup contents of your FAT partition (mmcblk0p1) - ie, the internal SD card card
Backup contents of your external SD card
1. Download sdparted-recovery.zip from web (http://forum.cyanogenmod.com/topic/6433-solved-messed-up-partitions-on-internal-storage - check messages like 11 to see the basic usage) and extract the contents
2. Using ADB, copy the extracted files in sdparted directory into /system/bin, change permission for all of them to 755 using chmod
3. Put a clean external SD card into the phone
4. In an ADB shell, run /system/bin/parted giving mmcblk1 as the target. Now resize the existing FAT partition (this is the first and default partition in the card). Tips:
print gives the existing partition(s)
help gives help on various options
for resizing and creating partitions, inputs should be derived from the initial print output (which gave the first and last points)
Eg: If card is 16GB, and you want to reserve 4GB for data, then resize the first partition to 12GB
5. Create a new partition of type ext2 with remaining size (say 4G in our case). Save and quit parted.
7. (Do this only if your kernel supports ext3/ext4) Run "tune2fs -j /dev/block/mmcblk1p2" to convert ext2 to ext3
8. (Do this only if your kernel supports ext4) Using ADB, copy "make_ext4fs" (attached) to /system/bin
9. (Do this only if your kernel supports ext4) Convert ext3 partition to ext4 using make_ext4fs ("make_ext4fs /dev/block/mmcblk1p2")
10. Now the partitions are ready
- They will be visible as mmcblk1p1 (FAT) and mmcblk1p2 (ext4) when you cat the /proc/partitions
- They will be visible as partitions 1(FAT) and 2 (ext4) in the print output of parted.
Confirm the above before proceeding further.
PART 2 - SWAPPING EXTERNAL AND INTERNAL SD
---------------------------------------------------------------------------------
1. Write a script, say 00remnt similar to the attached sample file which currently I am using (If you do not follow the script, better don't proceed. Else check if things are fine for your current base ROM settings)
2. Push this into /etc/init.d/ using ADB
3. Change permissions of the file to 755
4. If you need, copy the contents of your internal SD card FAT partition (/sdcard) to the external SD card FAT partition (/sdcard/external_sd or /emmc)
5. Use the popular (relevant methods) to swap the internal and external FAT partitions (which actually changes the vold.fstab contents). Normal search in the forum will give you the available methods - some ROMs support it as options, others have mods which will accomplish the same
5. Reboot and enjoy
Voila!!! Now the system is not using internal SD card (for most purposes) at all!! And your phone can now run for days without abrupt force closes and reboot. You still may get a message like SD card is removed/damaged, (and /emmc or /sdcard/exteranal_sd may become inaccessible - so better use it only as a temporary storage!). But you can safely ignore these messages as that is the internal SD card which we are not using anyway... Enjoy...
PART 3 - WIPING DATA PARTITION (in case you need this step later)
-----------------------------------------------------------------------------------------------------------
1. Change permission of the 00remnt to 644
2. Reboot the phone (now the phone will come up with default internal SD partition for data)
3. From ADB shell, execute "make_ext4fs /dev/block/mmcblk1p2" (see PART 1 on how to get this tool)
4. Change permission of the 00remnt to 755
5. Reboot the phone to recovery, wipe the /data as normal
rgds,
Dipu.
PS: If any one knows how our phone uses the 2nd partition in the internal SD card, please let me know... I am assuming that it is not used for any critical purposes (as my phone ran successfully for few days without any issue). May be it is used in some kernel/ROM, if so, please let me know.
Though i didn't understand a word(being an internee dentist) it will be useful to others.appreciate your efforts!!
Sent from my GT-I9003 using xda app-developers app
This is what i call a complete and useful guide.
This should become a sticky.. now... NOW!
+1 for sticky, superb info.
that would be a really nice sticky
i had the motherboard changed..
Thanks Dipu K for your efforts.
I've tried this solution in my I9003, and I have only a problem: When reboot the phone, /data is copied into de Ext4 partition on SD card, but all aplications have errors because isnĀ“t possible to unmount /data,
Here is the messaje in remnt-log (only a few lines):
Code:
...
3. Make Directory --->
4. Mount new data partition from external SD --->
5. Copy the current files in /data
6. Remove current files in /data
7. Unmount /data
umount: can't umount /data: Device or resource busy
8. Remove dir /data as a safety measure
9. Linking external sd data partition as /data
10. Final Mount status --->
...
What can I do to correct this?
Thanks
bfsa said:
...
What can I do to correct this?
Thanks
Click to expand...
Click to collapse
Finally, I've changed a line on 00remnt, and seems to work properly: busybox umount -l /data 2>> /system/remnt-log
Where can I get make_ext4fs? Sadly the same case has happened to me...
Hi Guys.
I am using alpha 4 from last one month and experience was awesome but from last 1 week I am getting lot of FC for lot of services like exchange service gapps what's up camera and lot more. I am not sure why FC issue started happening from last one week.
History :
I was using CM 10 alpha 1 then alpha 2 then alpha 3 and now on alpha 4.
I really fed up with Force close issue from last one week . I tried reboot but still 80% of apps and services getting FC. Please guide me on this .
Sent from my GT-I9003 using xda app-developers app
Sent from my GT-I9003 using xda app-developers app
hi all, i have a galaxy i9003 with a corrupted or completely dead (not sure) internal memory chip. I have come to this conclusion after 3 days of trying to install custom and stock roms. I can access recovery and download mode but i cant install any ROM, the phone keeps rebooting after the SAMSUNG (whole screen black except SAMSUNG in the middle). All i have is atm this http://forum.xda-developers.com/showthread.php?t=1351056 installed on my phone via ODIN. I dont have knowledge about ADB, can somebody help me out with instructions more?
Pre-requisites:
- Rooted Phone
Click to expand...
Click to collapse
Is there a solution without a rooted phone or can I root it somehow, even if the there is a hardware defect? I got an error with /dev/block/mmcblk1p that rfs can't be written.
I have a problem. My friend gave me an i9003. Wipe is not working at all, even from Recovery. I connect the phone to PC and use the internal card, no matter what I do, changes don't apply. I copy/paste/delete/format/even odin flash, no good. Everything comes back as before reboot. What is it related to?
I used to have an i9000, but nothing applies to i9003. I flashed i9000 1000 times and at last got a mmcblk02 error, fixed it with external sd swap. I'm thinking of swapping emmc with sd on this one too, but cant install a rom from CWM, I can install CWM from ODIN though and can flash CFROOT too, but in CWM internal storage can't be mounted... Motherboard problem?
I will try to use this guide and report back soon...
allxx said:
I have a problem. My friend gave me an i9003. Wipe is not working at all, even from Recovery. I connect the phone to PC and use the internal card, no matter what I do, changes don't apply. I copy/paste/delete/format/even odin flash, no good. Everything comes back as before reboot. What is it related to?
I used to have an i9000, but nothing applies to i9003. I flashed i9000 1000 times and at last got a mmcblk02 error, fixed it with external sd swap. I'm thinking of swapping emmc with sd on this one too, but cant install a rom from CWM, I can install CWM from ODIN though and can flash CFROOT too, but in CWM internal storage can't be mounted... Motherboard problem?
I will try to use this guide and report back soon...
Click to expand...
Click to collapse
Please do send us a report, I'd appreciate it very much. Have to deal with a similar situation as well for an old i9003. I've tried to employ the steps mentioned here but could not get it to work as well.
Hi everybody!
Had to remove the internal SD to install everything on the external one by following the mentioned post. Nothing else worked.
http://forum.xda-developers.com/showthread.php?t=1651619
can anyone here recomended me custom rom that already with swap sdcard?
Dipu K said:
Hi All,
I got errors mentioned in the title and after few searches, found that there are few Galaxy SL owners who had got into this issue.
Currently Known Root Cause:
A hardware issue possibly due to a board issue or loose attachment of internal SD card to the motherboard (Grrrrrrr SAMSUNG!)
Symptoms:
- Suddenly core applications like phone/messaging start force closing (sometimes all open apps). Only a reboot will solve the issue.
- Sudden reboot of the phone after few hours of running (or even sleeping)
- Sometimes the restart itself hanging with a yellow message "Unknown Upload Mode"
- Message in status bar "Internal SD card has been removed unexpectedly" or "Internal SD card not accessible" or something like "Damaged SD card"
Known Solution:
1. Replacement of board from Samsung Service Center (Good for you if you are within the warranty period)
2. Do some hardware hack to remove the internal SD completely (http://forum.xda-developers.com/showthread.php?t=1651619)
I got this issue just after I finished my warranty period, and hence, I was trying to find if I can do something about this issue by my own. What I wanted was to actually swap my internal SD storage with a proper external SD storage. This is not same as the popular "swapping the internal and external SD card" topic, but that and something more as well!! This will solve the issue of force closes and sudden reboots (may still not solve issue of reboot getting stuck, but I assume phone will not need frequent reboot after solving first 2 issues!)
Galaxy SL has 3 partitions created in the card:
1. ext3 partition for data
2. another small FAT partition - (for what? not sure)
3. Third FAT partition which acts as the normal internal SD card (which is accessible when working as USB mass storage)
Intention here is to move all the partitions to the external SD. Looking at the mount points and vold.fstab, I could not find where the 2nd partition in the above list is mounted/used (If anyone knows, please let me know). So I decided to move atleast the ext3 (data) and fat (/sdcard) to the external SD.
Following are the steps I followed for doing the same:
WARNING!!!
1. Copy these at your own risk. I am not responsible if you brick your phone or lose your data/applications/settings or if the phone goes to a boot loop!
2. Do not continue if you do not understand what is written here
3. Doing this will change the /data partition. So wiping data partition in the normal way will not work (say from CWM). You may need to do 2 steps - wipe (internal) data normally (say using CWM), wipe (external SD) data manually by disabling the script mentioned in the procedure and wiping using make_ext4fs tool (steps are given in PART 3 of this post).
4. This has been tested only on CM9 Alpha 6-11 / rooted DDLF2. Theoretically it may or may not work on other ROMs, depending on other tweaks and changes in the system, no guaranty offered!
5. In case you mess it up, most of the time (but no guarantees!), you can recover by flashing from beginning using ODIN some base versions like KPE and then come to your normal ROM, followed by a nandroid recovery (so better do a nandroid backup before you try anything .
Pre-requisites:
- Rooted Phone
- Kernel with init.d support (and preferably ext4 as well if you want that)
- Basic ADB knowledge
- A blank micro SD card with at least class 4 (class 6 or greater preferred) speed and with sufficient capacity - say 8/16/32 GB
PART 1 - PREPARING THE EXTERNAL SD
--------------------------------------------------------------------
0. !!! FIRST !!!
Do a Nandroid Backup (and also other app level backups like Titanium or MyBackup)
Backup contents of your FAT partition (mmcblk0p1) - ie, the internal SD card card
Backup contents of your external SD card
1. Download sdparted-recovery.zip from web (http://forum.cyanogenmod.com/topic/6433-solved-messed-up-partitions-on-internal-storage - check messages like 11 to see the basic usage) and extract the contents
2. Using ADB, copy the extracted files in sdparted directory into /system/bin, change permission for all of them to 755 using chmod
3. Put a clean external SD card into the phone
4. In an ADB shell, run /system/bin/parted giving mmcblk1 as the target. Now resize the existing FAT partition (this is the first and default partition in the card). Tips:
print gives the existing partition(s)
help gives help on various options
for resizing and creating partitions, inputs should be derived from the initial print output (which gave the first and last points)
Eg: If card is 16GB, and you want to reserve 4GB for data, then resize the first partition to 12GB
5. Create a new partition of type ext2 with remaining size (say 4G in our case). Save and quit parted.
7. (Do this only if your kernel supports ext3/ext4) Run "tune2fs -j /dev/block/mmcblk1p2" to convert ext2 to ext3
8. (Do this only if your kernel supports ext4) Using ADB, copy "make_ext4fs" (attached) to /system/bin
9. (Do this only if your kernel supports ext4) Convert ext3 partition to ext4 using make_ext4fs ("make_ext4fs /dev/block/mmcblk1p2")
10. Now the partitions are ready
- They will be visible as mmcblk1p1 (FAT) and mmcblk1p2 (ext4) when you cat the /proc/partitions
- They will be visible as partitions 1(FAT) and 2 (ext4) in the print output of parted.
Confirm the above before proceeding further.
PART 2 - SWAPPING EXTERNAL AND INTERNAL SD
---------------------------------------------------------------------------------
1. Write a script, say 00remnt similar to the attached sample file which currently I am using (If you do not follow the script, better don't proceed. Else check if things are fine for your current base ROM settings)
2. Push this into /etc/init.d/ using ADB
3. Change permissions of the file to 755
4. If you need, copy the contents of your internal SD card FAT partition (/sdcard) to the external SD card FAT partition (/sdcard/external_sd or /emmc)
5. Use the popular (relevant methods) to swap the internal and external FAT partitions (which actually changes the vold.fstab contents). Normal search in the forum will give you the available methods - some ROMs support it as options, others have mods which will accomplish the same
5. Reboot and enjoy
Voila!!! Now the system is not using internal SD card (for most purposes) at all!! And your phone can now run for days without abrupt force closes and reboot. You still may get a message like SD card is removed/damaged, (and /emmc or /sdcard/exteranal_sd may become inaccessible - so better use it only as a temporary storage!). But you can safely ignore these messages as that is the internal SD card which we are not using anyway... Enjoy...
PART 3 - WIPING DATA PARTITION (in case you need this step later)
-----------------------------------------------------------------------------------------------------------
1. Change permission of the 00remnt to 644
2. Reboot the phone (now the phone will come up with default internal SD partition for data)
3. From ADB shell, execute "make_ext4fs /dev/block/mmcblk1p2" (see PART 1 on how to get this tool)
4. Change permission of the 00remnt to 755
5. Reboot the phone to recovery, wipe the /data as normal
rgds,
Dipu.
PS: If any one knows how our phone uses the 2nd partition in the internal SD card, please let me know... I am assuming that it is not used for any critical purposes (as my phone ran successfully for few days without any issue). May be it is used in some kernel/ROM, if so, please let me know.
Click to expand...
Click to collapse
Somebody's Samsung Galaxy SL i9003 had wiped the internal SD card by itself! Is this even possible that it just wipes/formats on it's own? Is there any advice? The contacts appear to still be there.
Data2SD MOD: Moves /data partition to External SD, noticeable performance increase
All files attached are flashable .zips Installation instructions updated.
clemsyns cpu OC 1800 kernel is out! Good stuff!
Symlink added to /data2 (internal storage now found as /sdcardi)
You will need to disable journaling using the guide in post #3 if you are on CleanROM 2.1 to 2.3
as the rom does this as standard. If not you will get error!
I have had nothing to do with the development of this MOD, all credit goes to TweakerL
Also a huge thanks to scrosler for the fantastic CleanROM
Thanks to clemsyn for the amazing kernel!
Feel free to go to original thread and give your thanks: http://forum.xda-developers.com/showthread.php?t=1803252
and also to seek information, the thread is full of it.
What/Why/How?
This MOD was developed to aid the I/O-issues the Transformer Prime has and the Infinity inherited. Since it was a known fact that the internal
storage was slow/poor, TweakerL decided to try mounting the /data partition to the MicroSD card. Hence an obvious necessity
will be that you have a fast MicroSD card. Several have been tried and there is no real conclution as to what is the best in regards
to manufacturer or class (a class 6 card can have better random write speeds than a class 10 card), I use a Sandisk 64GB UHS-I
class 10 card and so does several others with good results.
The way this works is that you change the ramdisk so that it mounts /data to the second partition of your micro sd. Your internal
storage (the old /data partition) will be mounted as /data2.
Requirements
1. Unlocked and Rooted
2. You MUST repartition your Micro SD. The .zip you flash will mount /data to mmcblk1p2, which basically says "mount /data to the
second partition in the external SD." also, the ramdisk expects that partition to be ext4, so essentially:
Make sure you have an external SD with at least two partitions and that the second partition is formatted to ext4. I use fat32 on the first partition
because it's recognized by most devices.You will also need to make both partitions "primary" partitions. I personally use Gparted to repartition
my stuff, but feel free to use whatever you like. Even if you're on windows you can still use gparted by using virtualbox, or you can use a tool
called MiniTool Partition Wizard, I haven't tried it myself but it is reported to be good.
3. Research your Micro SD, find out if it has good random write speeds. There is no use in this mod if you card is slower than your internal
memory.
4. Although it's not a requirement it is a recommendation to have gone through the Nvflash procedure. It has saved alot of people from bricks
and is just great to have.
5. Verify that the .zip is compatible with your ROM, if it is not listed feel free to ask for a version for your preferred ROM.
Disclaimer
I take no responsibility for whatever happens to your device using this MOD, it is flashing a kernel so take precautions!
Installation
1. Boot to recovery, flash your preferred ROM
2. Reboot to initial setup (Don't run through)
3. Reboot to recovery, flash the matching Data2SD.zip
4. Disable journaling (Optional on all ROMs except CleanROM)
5. Reboot
When it reboots you will get a blue progress bar and it will be just as you flashed a new rom, you'll get the device setup screen.With my
MicroSD I get about twice the Random Write speed with this mod; Internal=0.20mb/s External=0.40mb/s . We will have a look at doubling
these figures further down (I currently have Random write speed average of 0.8mb/s).
Reverting
Flash a ROM
Feel free to ask any questions!
MD5 checksum for cm10-1025data2sd : 78b9e62e27204efeb0bdd3c926c4a30a
MD5 checksum for CleanROM2-3Data2SD: 60eef4e666ec97216ee0801189233719
MD5 checksum for clemsyn's 600 OC kernel ver8: e07b4a5a5f7ae2976a86460e5309199a
MD5 checksum for clemsyn's 650 OC kernel ver8: cf6d36da2d26db2e72c1c110a87cad7f
MD5 checksum for clemsyn's 650 OC kernel ver22: 1ec0e9c5c5ac7b012e3095f03f7dd234
Modded Recovery
Enough with the screenshots, I think people know what it's all about by now!
TWRP 2.3.1.0 Data2SD Edition
Modded by flumpster, thanks a million!
Attached is a version of the latest TWRP recovery, the only mod done is changing where
it mounts /data so it backs up the correct partitions!
Backup to External will backup to your first partition (fat32 maybe) and backup to internal will
backup to your ext4/2 partition.It is recommended to back up to external which is the fat partition.
If you backup to internal which is now the ext partition and something goes wrong with that partition
you wont have access to your backup.
Instructions:
You must remove the old twrp settings from your prime for this to work correctly. Delete any
TWRP folders that are in sdcard, data2/media and removable/sdcard. If you have backups there
already that you want to keep leave the backups folder in the TWRP directories and then just
delete the files that are in the root of the TWRP folder to get rid of the settings left behind.
If you are on a windows pc just extract the zip somewhere and run the bat file and then follow the
onscreen instructions. It will flash it for you. If not, navigatate to the fastboot folder, find the .blob
and flash the usual way with fastboot.
I have tested it myself but would love some feedback on this as I am currently the only one testing.
Disabling journaling!
This is a mod that flumpster tested and found to work fine. I have tested it to and it is fast as a shark. It is somewhat
controvertial though, someone thinks disabling journaling on the ext4 file system could cause crashes. Also if you are
plagued with random reboots it can cause data loss. I've been running it for a couple of days without issues and getting fantastic results.
Here is a description on how to do it if you want to try:
To Disable Journaling in EXT4
Go into TWRP and then open a command prompt on your computer where adb is.
Type adb shell and enter it then type the following commands one at a time.
umount /data
umount /sdcard
e2fsck -f /dev/block/mmcblk1p2
tune2fs -O ^has_journal -c 1 -i 1d -m 0 /dev/block/mmcblk1p2
e2fsck -f /dev/block/mmcblk1p2
Watch out for the fourth line, after tune2fs - that is a capital O not a zero. The one further along the line is a zero.
To check if it has worked type the follwing after them
tune2fs -l /dev/block/mmcblk1p2 | grep features
If you don't see has_journal in the output all is good.
And the size of the ext4 partition should be?
I was planning on taking a stab at porting this project to the TF700 this weekend. Thanks for your work! Going to test ASAP.
maxrdlf95 said:
And the size of the ext4 partition should be?
Click to expand...
Click to collapse
That is up to you really, the ext4 partition will be your new "internal storage" so if you if you need to store alot there like big games etc. you'll need more. If like me you have little use for internal storage you increase the size of first partition. I have 49gb fat 32 as my first partition and 11gb ext4 as my second.
I transfer movies etc. from a windows machine to the fat32 partition.
Good question though, I should have mentioned it in the OP.
Sent from my ASUS Transformer Pad TF700T using xda premium
The mysterious CheckROM that you've mentioned twice is just CleanROM, right?
Kisakuku said:
The mysterious CheckROM that you've mentioned twice is just CleanROM, right?
Click to expand...
Click to collapse
Yes, of course. Thank you for pointing that out, I've used CheckROM on another device so it got mixed up. OP updated.
fordwolden said:
Data2SD MOD: Moves /data partition to External SD
Click to expand...
Click to collapse
This looks very interesting!
fordwolden said:
Disabling journaling!
Click to expand...
Click to collapse
Actually the ROM does this during install. However on 2.0 it was causing issues with the latest TWRP so I temporarliy took it out.
It ended up being a twrp issue. IM going to put it back in for version 2.1 (with will be 10.4.4.18 based) and revert to the old version of twrp. The newer 2.3.x builds dont seem as reliable at this time.
But good write up!
Also worth to mention that this mod makes it a little bit harder to do nandroids. But in TWRP you have a option to backup sd-ext, that will actually be a backup of your data partition. So to restore data you just restore sd-ext. All other partitions will backup and restore normally.
Edit: No longer applicable, sd-ext backup no longer supported. Modded TWRP recovery in post #2
fordwolden said:
Also worth to mention that this mod makes it a little bit harder to do nandroids. But in TWRP you have a option to backup sd-ext, that will actually be a backup of your data partition. So to restore data you just restore sd-ext. All other partitions will backup and restore normally.
Click to expand...
Click to collapse
heh... i was just going to ask about that. thanks for the clarification.
fordwolden said:
Also worth to mention that this mod makes it a little bit harder to do nandroids. But in TWRP you have a option to backup sd-ext, that will actually be a backup of your data partition. So to restore data you just restore sd-ext. All other partitions will backup and restore normally.
Click to expand...
Click to collapse
People really use Nandroid? lol :angel:
scrosler said:
People really use Nandroid? lol :angel:
Click to expand...
Click to collapse
Some feel more comfortable doing it! I feel like it's "bringing a knife to a gunfight"! False safety.
Since the 12/10 update to .18 that I installed just yesterday my performance skyrocketed. I don't experience any lag anymore, no hickups, much faster loading etc. I suddenly don't feel like this tablet was a waste of money anymore
It's all stock and normal.
So if you don't have this update yet, try it out before trying anything like this.
Would there be any way of getting this working on a rooted stock FW?
I saved root before updating to JB so I'm going to stay unlocked for as long as I have warranty.
Moning2 said:
Since the 12/10 update to .18 that I installed just yesterday my performance skyrocketed. I don't experience any lag anymore, no hickups, much faster loading etc. I suddenly don't feel like this tablet was a waste of money anymore
It's all stock and normal.
So if you don't have this update yet, try it out before trying anything like this.
Click to expand...
Click to collapse
Gospel singers from the General section? Now that's a first for me! I'm glad you're happy with your tablets,
now try downloading CleanROM 2.1 while multi-tasking on your device, still happy? I bet you want to unlock
before the download is finished!
New version for CleanROM 2.1 coming up, sorry for the delay. Been getting some sleep and my Inet connection
is about as stable as Uranium!
New version has symlinked /data2 partition so your internal storage will now be found in /sdcardi. Just for ease
of use.
rikc said:
Would there be any way of getting this working on a rooted stock FW?
I saved root before updating to JB so I'm going to stay unlocked for as long as I have warranty.
Click to expand...
Click to collapse
You meant going to stay locked, right! No, sorry this is not possible for locked bootloaders.
fordwolden said:
You meant going to stay locked, right! No, sorry this is not possible for locked bootloaders.
Click to expand...
Click to collapse
Ok, thanks, that's clear!
I want this on stock rooted unlocked ROM
fordwolden said:
New version for CleanROM 2.1 coming up, sorry for the delay. Been getting some sleep and my Inet connection
is about as stable as Uranium!
.
Click to expand...
Click to collapse
Oh come on, Uranium has been around Earth for four and a half billion years and it's still here, can't be that unstable
Gesendet von meinem GT-N7000 mit Tapatalk 2
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
Hi Friends
Yesterday I flashed my HTC Explorer with CM10.1 Beta 5 ([DEV][ROM][JDQ39E][4.2.2] CyanogenMod 10.1.2 | BETA#5 | 25/07/13 | WILD FOR THE NIGHT) . But with this build my phone is not mounting the second partition of size 2GB (total 16gb card) which I have created from recovery menu. I have tried with the Mini partition tool on windows for FAT32 too, but still its not mounting my either Link2SD, mount2SD or by the kernel (About Phone -> System partion).
Please help me as without mounting the 2nd partition I can not install any other app as very very less space is available after CM 10.1.
Thank you.
Use Int2sd+ for cm10.1
You can Google it & download
Note: you when flash ROM when mount system, data,sd-ext..and make ext3 partition
thekoolanie said:
Use Int2sd+ for cm10.1
You can Google it & download
Note: you when flash ROM when mount system, data,sd-ext..and make ext3 partition
Click to expand...
Click to collapse
Its still not working. I wonder, if we can do so many things in CM, why can not we simply integrate the script in to the rom itself. I'm damn sure 100% of HTC explorer users must be searching for a way to increase the internal memory of the phone also now a days sd cards are damn cheap.
There is a link
http://androidicablog.wordpress.com...rnal-memory-script-for-4-2-1-romsgalaxy-mini/
You can see my memory in this attachment
There is a link
http://androidicablog.wordpress.com...rnal-memory-script-for-4-2-1-romsgalaxy-mini/
You can see my memory in this attachment
---------- Post added at 06:04 AM ---------- Previous post was at 05:55 AM ----------
There is a link
http://androidicablog.wordpress.com...rnal-memory-script-for-4-2-1-romsgalaxy-mini/
You can see my memory in this attachment
mount2sd NOT mounted SD-EXT on Samsung Galaxy Y Pro Duos
hi,
I have a rooted Samsung GT-B5512. Init.d and mountd2sd installed.
Android 2.3.6, kernel: 2.6.35.7.
Trying to move a lot to SD card, including some system files since this is a low end device with little memory. Even with apps like link2sd after a large number of apps the int storage was full :/ therefore trying the mount2sd but it doesn't want to mount the sd partition.
The card (16GB) is formatted as follow: 13 GB FAT32, 1 GB EXT3.
In the section Storage\External mount2sd says Not mounted.
the busybox is installed, the startup script too. Driver is set to EXT but most of fields are grayed out.
Please help.
xda_keevvee said:
hi,
I have a rooted Samsung GT-B5512. Init.d and mountd2sd installed.
Android 2.3.6, kernel: 2.6.35.7.
Trying to move a lot to SD card, including some system files since this is a low end device with little memory. Even with apps like link2sd after a large number of apps the int storage was full :/ therefore trying the mount2sd but it doesn't want to mount the sd partition.
The card (16GB) is formatted as follow: 13 GB FAT32, 1 GB EXT3.
In the section Storage\External mount2sd says Not mounted.
the busybox is installed, the startup script too. Driver is set to EXT but most of fields are grayed out.
Please help.
Click to expand...
Click to collapse
remove any sd. ext you made..create new ext partition using recovery and try..
shubhojit89 said:
remove any sd. ext you made..create new ext partition using recovery and try..
Click to expand...
Click to collapse
thank you, I was struggling with this alone for too long ...
Did as you say but same results. Mount2sd doesn't see the SD-EXT.
FYI - I did not install the ClockworkMod,just run it from the Android recovery shell. Anyway it was able to successfully create partitions on the SD.
Don't know if that matters ...
Do you want me to post any screens, or log files (actually mount2sd log is empty, even though debug mode is checked).
Marek
xda_keevvee said:
thank you, I was struggling with this alone for too long ...
Did as you say but same results. Mount2sd doesn't see the SD-EXT.
FYI - I did not install the ClockworkMod,just run it from the Android recovery shell. Anyway it was able to successfully create partitions on the SD.
Don't know if that matters ...
Do you want me to post any screens, or log files (actually mount2sd log is empty, even though debug mode is checked).
Marek
Click to expand...
Click to collapse
ya u can post the screenshots..
vice ereafe
See enclosed. The log file is empty but check the debug
xda_keevvee said:
See enclosed. The log file is empty but check the debug
Click to expand...
Click to collapse
create partition through recovery and make it ext4 coz ext4 is mounted easily..
shubhojit89 said:
create partition through recovery and make it ext4 coz ext4 is mounted easily..
Click to expand...
Click to collapse
My ClockWordMod (CWM-6102) does only ext3 (did not find setting to change type). I'm not sure is there higher CWM for my cell.
I've made the ext4 using MiniTool Part under Windows but it looks like the Mount2SD does not support ext4 in my case. I can choose ext2, ext3, fat, auto but the ext4 is dimmed (could it be Android kernel related?).
Tried then also sd-ext and FAT, still Not Mounted ...
xda_keevvee said:
My ClockWordMod (CWM-6102) does only ext3 (did not find setting to change type). I'm not sure is there higher CWM for my cell.
I've made the ext4 using MiniTool Part under Windows but it looks like the Mount2SD does not support ext4 in my case. I can choose ext2, ext3, fat, auto but the ext4 is dimmed (could it be Android kernel related?).
Tried then also sd-ext and FAT, still Not Mounted ...
Click to expand...
Click to collapse
change to philz recovery.. i m using it for months.. it supports ext4.. ext4 is easily mounted.. i use ext4 and i never faced any kinda issue you r facing..
shubhojit89 said:
change to philz recovery.. i m using it for months.. it supports ext4.. ext4 is easily mounted.. i use ext4 and i never faced any kinda issue you r facing..
Click to expand...
Click to collapse
it was kernel thing (BTW - there are very few recovery binaries for this phone, CWM is for example mostly in use as a temporary executed, loaded each tip from ZIP).
I have updated kernel to this:
http://forum.xda-developers.com/showthread.php?t=1913349
and things automatically got mounted (even made a partition using my PC and working same good)
thanks for participation
Let me start with: I know that there have been many posts on this, but before you get mad, I was unable to find an answer to what I specifically want to do.
For reference: I am a software developer and sysadmin with a decent amount of Linux experience, but not a lot of android specific experience.
Now that the introduction is out of the way:
What I would like to do is completely remove the "USERDATA" partition (the "Internal SD card"), grow the "SYSTEM" partition to fill that space, and then mount my SD Card (external) as the SD Card that the system sees.
I'm currently on Cyanogenmod 10.1 but want to upgrade to 11 soon.
The reason I want to do this is because:
I have all if my apps that I can set to install to SD Card
Both "internal" partitions are full (only about 200MB is available for pictures/etc. and I can no longer update apps)
Camera (and pretty much everything else as well) stores to the Internal SD card by default
If the system partition was 1.1+1.4=2.5GB and all of my apps were "installed" to a real SD card, it would be a lot more comfortable.
So, here's what I am thinking *might* work (maybe not in the right order, though?):
Point the fstab entry for the internal SD card to the external SD card
I have the PIT file. I will delete the "USERDATA " and grow "SYSTEM" to fill the space
When I write it out in steps, it seems pretty simple...
My concerns:
Will a ROM update (to CM11) re-partition back to the old way (and, in the process, break a bunch of stuff)?
I don't ever plan to go back to stock android or change to another ROM (other than upgrades).
Thanks for reading this long post and for any insight you may be able to provide.
--mobrien118
It's a wonderful idea if it works.
Sent from my SAMSUNG-SGH-T769 using xda app-developers app
Modifying partitions is a bit dangerous.
But I have to ask you why do you need another GB of /system storage?
There was a line you can put in the build.prop that flips your ext. SD with the internal one on cm10 I believe.
This'd interest me if I could get rid of usbdisk and sdcard0 merged.
It would need the phone to be repartitioned though, causing issues with the backups and ROMs.
You may even have to compile cm from source.
Its a lot of trouble
Sent from my SAMSUNG-SGH-T769 using Tapatalk
I just did so on S4 Mini with cm-11 Android 4.4.
First I was thinking of using symlinks and/or bind mounts to redirect to the the external sdcard, but that's a bit of a hassle because
1) Since 4.2: both emulated and external storage is mounted with a fuse layer on top not supporting symlinks
2) Since 4.4: no more global write access on external storage
So moving data was the simplest solution. Besides providing (much) more space my sdcard is also around 20% faster in sequential writes: 8.5 MB/s internal vs 10.5 MB/s external. Is it really 2014?
I haven't yet decided what to do with the original data partition, so for the moment I left it unused. Hence I haven't touched the internal partition table.
Quick summary
partition sdcard (gdisk)
I recommend using GPT, this lets you work with partition names rather than numbers. For the sake of still having an "official" external sdcard I made two partitions. Keep in mind that it's usually the first partition which gets automatically mounted as external sdcard. So I made the 2nd partition the new home for data. This partition however has to be manually specified in the ramdisks fstab which involves flashing the boot partition.
format the new partitions (mkfs.ext4)
copy the original /data directory tree to the new data partition
extract initrd from boot.img (abootimg)
extract files from initrd (gunzip & cpio)
replace the /data entry in fstab pointing at your new data partition
re-pack initrd and boot.img (gzip, cpio & abootimg)
flash boot.img onto the boot partition (dd)
If you use recovery, you also have to edit it's fstab (analog to boot.img mentioned above)
done
Alternatively has anyone tried an init.d script? I see those scripts get executed before the mounting of data & sdcard
Meanwhile the original userdata partition got replaced by 3 new partitions: system2, cache2 & userdata2 which are now used for a dual boot ROM.
I've only changed GPT, not PIT. ROMs and Recovery don't use PIT, so as long as Heimdall/Odin isn't involved it should not cause any issues.
Hey guys,
So after read all that, I am also vry interested in what the OP has suggested. I get that the pit doesn't need to be affected, but as the OP asked, when flashing a new rom or updating an existing, would the partition be reformatted back to the way android handles it, ie; back to the system and data seperate and the sdcard not being used as the internal partition?
I am no developer and only have minimal knowledge in linux and android programing, but I am a quick study and any guide to help me sort this would be greatly appreciated.
Also I am about to get a second S4 mini specifcally for doing things like this so if I brick I don't care?
My next question is could it be possible to code the PIT file to do this for you so that you can just flash that through odin, but again would flashing roms affect this.
Cheers,
Sora.
aguaz said:
I just did so on S4 Mini with cm-11 Android 4.4.
First I was thinking of using symlinks and/or bind mounts to redirect to the the external sdcard, but that's a bit of a hassle because
1) Since 4.2: both emulated and external storage is mounted with a fuse layer on top not supporting symlinks
2) Since 4.4: no more global write access on external storage
So moving data was the simplest solution. Besides providing (much) more space my sdcard is also around 20% faster in sequential writes: 8.5 MB/s internal vs 10.5 MB/s external. Is it really 2014?
I haven't yet decided what to do with the original data partition, so for the moment I left it unused. Hence I haven't touched the internal partition table.
Quick summary
partition sdcard (gdisk)
I recommend using GPT, this lets you work with partition names rather than numbers. For the sake of still having an "official" external sdcard I made two partitions. Keep in mind that it's usually the first partition which gets automatically mounted as external sdcard. So I made the 2nd partition the new home for data. This partition however has to be manually specified in the ramdisks fstab which involves flashing the boot partition.
format the new partitions (mkfs.ext4)
copy the original /data directory tree to the new data partition
extract initrd from boot.img (abootimg)
extract files from initrd (gunzip & cpio)
replace the /data entry in fstab pointing at your new data partition
re-pack initrd and boot.img (gzip, cpio & abootimg)
flash boot.img onto the boot partition (dd)
If you use recovery, you also have to edit it's fstab (analog to boot.img mentioned above)
done
Alternatively has anyone tried an init.d script? I see those scripts get executed before the mounting of data & sdcard
Click to expand...
Click to collapse
I just managed to replace my internal sd with the external sd following your ruff guide. thank you very much! At first I struggled a bit getting it to work, because I had encrypted my data partition before -.- this seems to change something in the fstab / mounting / boot-up process, I couldn't get my S4 mini to boot with just changing the fstab.qcom in boot.img. With my recovery (TWRP) it worked from the start editing recovery.img's fstab.twrp /data mount point.
After decrypting(formatting) /data and re-editing fstab.qcom in boot.img it finally works I'm so happy! Enjoying a lot of space on my sdcard now!
usefull threads / information I learnt from:
Partition structure of S4 Mini
Encryption of ExtSD & some fstab information
Editing initrd
abootimg ReadMe
(Links last tried 28.05.2015)