[Q] Internal/External Memory Swap - Sprint Samsung Galaxy S III

So, I have a Sprint Galaxy S3 Running Cyanogenmod 10.2.1, and I'd like to trick it into thinking my 64GB SdCard is the Internal Memory.
So far, by using Script Manager, and this Code:
busybox mount -o remount,rw /
busybox mount -t vfat -o umask=0000 /dev/block/vold/179:33 /mnt/shell/emulated/0
busybox mount -t exfat -o umask=0000 /dev/block/vold/179:33 /mnt/shell/emulated/0
if busybox mount | busybox grep vold/179:33; then
busybox mount -o bind /data/media /mnt/sdcard1
fi
I put it here: /system/etc/init.d
And tested it here: /data/
Running this makes all my apps stop working, and after a minute can no longer access the settings even.
When I plug it into a computer however, it is reading my Internal storage as the 64GB Card.
Any help is Appreciated!
This is some code I found and edited, so I'm not entirely sure of the Mechanics behind it.
Here are the Credits:
#!/system/bin/sh
#extsd2internalsd is a modification that allows to switch internal sd to external sd and viceversa.
#With this you can use default internal sd only for app storage
#and the external sd to store all apps resource and all others stuff. The resut is a very big increase of installable apps on gs3
#All credits to Mattiadj of xda forum for the idea and script and to mike1986 for the cmw zip.
#xda thread url at
#Script Modified for U.S. Galaxy S3s by Zedomax at GalaxyS3Root.com to be compatible when sdcard is not inserted.

Related

[DEV] SCRIPT MOD inte2ext swap

I am a fresh owner Tf300.
It annoyed me that he sees Tf300 internal memory as sdcard
and as an external Micro SD card.
I searched and znalałem Script of SG3.
Modified it - it works.
But there is a problem.
Micro SD card is mounted as sdcard
but the internal (the old SDcard) will not mount)
Maybe someone can help
Because he wants to improve both were mounted partitions correctly
script base from galaxys3 http://forum.xda-developers.com/showthread.php?t=1772234
KOD:
#!/system/bin/sh
# Wait for the system to mount the internal media and remout it as r/o
# this should prevent the system from writing to it until we make the
# switch, yet keeps the /data/media r/w, so at the end it won't be r/o
for i in $(seq 1 1 3000)
do
if ( grep -c "/storage/sdcard0" /proc/mounts ); then
mount -o remount,ro /storage/sdcard0
break;
fi
usleep 100000
done
# now wait for the external media and remount
for i in $(seq 1 1 3000)
do
if ( grep -c "/Removable/MicroSD" /proc/mounts ); then
# create new temporary mount point
mount -o remount,rw /
mkdir /storage/tmpmnt
mount -o remount,ro /
# do the rebinding using the temporary mount point
mount -o bind /data/media /storage/tmpmnt
mount -o bind /Removable/MicroSD /storage/sdcard0
mount -o bind /Removable/MicroSD /data/media
umount /Removable/MicroSD
mount -o bind /storage/tmpmnt /storage/MicroSD
umount /storage/tmpmnt
# make bind for ums mode
mkdir -p /storage/MicroSD/sdcard1
touch /storage/MicroSD/.nomedia
mount -o bind /storage/sdcard0 /storage/extSdCard/external_sd/sdcard1
# done
break;
fi
usleep 100000
done
exit
I´m no developer but that´s a start. Hope someone helps.
arcance said:
I am a fresh owner Tf300.
It annoyed me that he sees Tf300 internal memory as sdcard
and as an external Micro SD card.
I searched and znalałem Script of SG3.
Modified it - it works.
Click to expand...
Click to collapse
Trochę Polskiego się tu wkradło
Please change word "znalazłem" to "found"
It works for me after I modified it and install the latest busybox v1.21.0. ( I'm using Energy ROM 4.1.1 btw). Let me know if this works for you.
Here's the script ( I also attach the flashable zip) :
#!/system/bin/sh
# Wait for the system to mount the internal media and remout it as r/o
# this should prevent the system from writing to it until we make the
# switch, yet keeps the /data/media r/w, so at the end it won't be r/o
for i in $(seq 1 1 3000)
do
if ( grep -c "/storage/sdcard0" /proc/mounts ); then
mount -o remount,ro /storage/sdcard0
break;
fi
usleep 100000
done
# now wait for the external media and remount
for i in $(seq 1 1 3000)
do
if ( grep -c "/Removable/MicroSD" /proc/mounts ); then
# create new temporary mount point
mount -o remount,rw /
mkdir /storage/tmpmnt
mount -o remount,ro /
# do the rebinding using the temporary mount point
mount -o bind /data/media /storage/tmpmnt
mount -o bind /Removable/MicroSD /storage/sdcard0
mount -o bind /Removable/MicroSD /data/media
umount /Removable/MicroSD
mount -o bind /storage/tmpmnt /Removable/MicroSD
umount /storage/tmpmnt
# make bind for ums mode
mkdir -p /Removable/MicroSD/EXTERNAL_SD
touch /Removable/MicroSD/ EXTERNAL_SD/.nomedia
mount -o bind /storage/sdcard0 /Removable/MicroSD/EXTERNAL_SD
# done
break;
fi
usleep 100000
done
exit
Odp: [DEV] SCRIPT MOD inte2ext swap
Ok trying thanx for help
Sent from my HTC Desire Z using xda app-developers app
One question. Will this script solve the I/O problem, as now the tablet will use my class10 sdcard as internal, or didn't I understand it well?
why not just edit the vold file
Sent From My Unlocked & Rooted 4.2.2 Android Powered []D [] []V[] []D TF300T
Works
I think good solution for people ho heve only 16gb internal and sdmicro 64gb or biger
Edit vold ithink no god solution and not be save
Regards
Sent from my ASUS Transformer Pad TF300T using xda app-developers app
arcance said:
Works
I think good solution for people ho heve only 16gb internal and sdmicro 64gb or biger
Edit vold ithink no god solution and not be save
Regards
Sent from my ASUS Transformer Pad TF300T using xda app-developers app
Click to expand...
Click to collapse
you can edit the vold file and accomplish the same results. you need to use a root explorer.I have done it on every device I own at one point.yes it saves.
Hi
Trying use modification
When try flesh i see error can't find tmpmnt
I don't have idea
Use 4.2 xcromi 4.7.0
And need more space for instal soft my tf300 have 16gb only.
Or sugestion how modyfication vold.
Reagarts
Sent from my ASUS Transformer Pad TF300T using xda app-developers app

[Q] Need help to execute script to switch internal memory with 64GB card for Note 2

Hi,
I have a Samsung Galaxy Note 2 (SGH-T889). I found a script online which had instruction to execute with script manager (SManager). The file is called app2sdNote2.bin. When I run SManager and located the script, I select Su and Boot. When I select Run, SManager just hangs forever until I kill the process. The grant message never appears. I would like to run the script to use my 64 GB memory card as the default storage. Any help is greatly appreciated.
#!/system/bin/sh
#extsd2internalsd is a modification that allows to switch internal sd to external sd and viceversa. With this you can use default internal sd only for app storage #and the external sd to store all apps resource and all others stuff. The resut is a very big increase of installable apps on gs3
#All credits to Mattiadj of xda forum for the idea and script and to mike1986 for the cmw zip.
#xda thread url at
#Script Modified for U.S. Galaxy S3/Note 2 by Zedomax at GalaxyS3Root.com and GalaxyNote2Root.com to be compatible when sdcard is not inserted.
busybox mount -o remount,rw /
busybox mount -t vfat -o umask=0000 /dev/block/vold/179:17 /mnt/sdcard
busybox mount -t exfat -o umask=0000 /dev/block/vold/179:17 /mnt/sdcard
if busybox mount | busybox grep vold/179:17; then
busybox mount -o bind /data/media /mnt/extSdCard
fi
comicrage said:
Hi,
I have a Samsung Galaxy Note 2 (SGH-T889). I found a script online which had instruction to execute with script manager (SManager). The file is called app2sdNote2.bin. When I run SManager and located the script, I select Su and Boot. When I select Run, SManager just hangs forever until I kill the process. The grant message never appears. I would like to run the script to use my 64 GB memory card as the default storage. Any help is greatly appreciated.
#!/system/bin/sh
#extsd2internalsd is a modification that allows to switch internal sd to external sd and viceversa. With this you can use default internal sd only for app storage #and the external sd to store all apps resource and all others stuff. The resut is a very big increase of installable apps on gs3
#All credits to Mattiadj of xda forum for the idea and script and to mike1986 for the cmw zip.
#xda thread url at
#Script Modified for U.S. Galaxy S3/Note 2 by Zedomax at GalaxyS3Root.com and GalaxyNote2Root.com to be compatible when sdcard is not inserted.
busybox mount -o remount,rw /
busybox mount -t vfat -o umask=0000 /dev/block/vold/179:17 /mnt/sdcard
busybox mount -t exfat -o umask=0000 /dev/block/vold/179:17 /mnt/sdcard
if busybox mount | busybox grep vold/179:17; then
busybox mount -o bind /data/media /mnt/extSdCard
fi
Click to expand...
Click to collapse
Wrong device thread.
comicrage said:
Hi,
I have a Samsung Galaxy Note 2 (SGH-T889). I found a script online which had instruction to execute with script manager (SManager). The file is called app2sdNote2.bin. When I run SManager and located the script, I select Su and Boot. When I select Run, SManager just hangs forever until I kill the process. The grant message never appears. I would like to run the script to use my 64 GB memory card as the default storage. Any help is greatly appreciated.
#!/system/bin/sh
#extsd2internalsd is a modification that allows to switch internal sd to external sd and viceversa. With this you can use default internal sd only for app storage #and the external sd to store all apps resource and all others stuff. The resut is a very big increase of installable apps on gs3
#All credits to Mattiadj of xda forum for the idea and script and to mike1986 for the cmw zip.
#xda thread url at
#Script Modified for U.S. Galaxy S3/Note 2 by Zedomax at GalaxyS3Root.com and GalaxyNote2Root.com to be compatible when sdcard is not inserted.
busybox mount -o remount,rw /
busybox mount -t vfat -o umask=0000 /dev/block/vold/179:17 /mnt/sdcard
busybox mount -t exfat -o umask=0000 /dev/block/vold/179:17 /mnt/sdcard
if busybox mount | busybox grep vold/179:17; then
busybox mount -o bind /data/media /mnt/extSdCard
fi
Click to expand...
Click to collapse
Script doesn't work on s4. Tried all the known scripts and so far none work.
Sent from my SGH-M919 using Tapatalk 2

[Q] Need help to swap memorty to 64GB card

Hi,
I have a Samsung Galaxy Note 2 (SGH-T889). I found a script online which had instruction to execute with script manager (SManager). The file is called app2sdNote2.bin. When I run SManager and located the script, I select Su and Boot. When I select Run, SManager just hangs forever until I kill the process. The grant message never appears. I would like to run the script to use my 64 GB memory card as the default storage. Any help is greatly appreciated.
#!/system/bin/sh
#extsd2internalsd is a modification that allows to switch internal sd to external sd and viceversa. With this you can use default internal sd only for app storage #and the external sd to store all apps resource and all others stuff. The resut is a very big increase of installable apps on gs3
#All credits to Mattiadj of xda forum for the idea and script and to mike1986 for the cmw zip.
#xda thread url at
#Script Modified for U.S. Galaxy S3/Note 2 by Zedomax at GalaxyS3Root.com and GalaxyNote2Root.com to be compatible when sdcard is not inserted.
busybox mount -o remount,rw /
busybox mount -t vfat -o umask=0000 /dev/block/vold/179:17 /mnt/sdcard
busybox mount -t exfat -o umask=0000 /dev/block/vold/179:17 /mnt/sdcard
if busybox mount | busybox grep vold/179:17; then
busybox mount -o bind /data/media /mnt/extSdCard
fi
If you're using a TW rom, check the Saber Kernel thread, the version of the script that works with it is posted there (ver 3 I think). I don't think there's a version of the script for AOSP roms though. Hope this helps.
Please read forum rules before posting
Questions and help issues go in Q&A and Help section
Thread moved
Thank you for your cooperation
Friendly Neighborhood Moderator

How to put /data on external SD

WORD OF WARNING: if you do this, wiping /data from recovery will not actually wipe data. AND if you install a new ROM, via clean or dirty flash, chances are your large /data partition will go all screwy on you. It did for me. If I flashed anything, it tends to cause boot loops or hangs at the boot animation.
If you are dirty flashing anything, I would first get as much off of the large /data as you can to get it to 2 GB or less, then drop it on top of your 2 GB /data partition, then dirty flash, let everything come back up and get stable then repeat these steps starting at step 2 to blow away your large /data and then mirror your 2 GB /data to your large /data.
The problems I had could be related to xposed, but I am not 100% certain on this. It is my best guess from looking at my logcat (doesn't actually indicate a crash in there, but has a lot of stuff related to xposed).
These steps are more for the non-flashaholics amung us OR people who flash new stuff but roll back to nandroid. Once you pop the larger /data onto any ROM, your nandroid will likely not play nice with it anymore as your larger /data is not restored from a nandroid.
And the normal "warranty is now void" and "if things break, it isn't my fault" disclamer stuff too. But I'm running this right now and liking it (except when I go to jump to KK it may not be happy with me... gonna need to do some testing to nandroids work properly AND so I can flash ROMs without blowing everything up... thinking it is just the dalvik that is unhappy, but I am uncertain at this time)
I was having issues with my /data partition getting full on me after getting new ROMs set up. This was irritating me and I came to the conclusion that 2 GB was just not enough space for some of the larger apps out there. So I went ahead and started investigating and testing how to get /data onto the external SD card.
2 complications arise:
1) it needs to be in ext4 format to preserve permissions
2) it needs to be swapped post boot AFTER the sd card is mounted (potentially, I have not fully tested this).
So this becomes a multi step process. What you need:
1) an external SD card that is at least 2 GB in size if not larger (I recommend larger simply because what is the point of having it on external storage if you aren't gaining any extra space)
2) a SGH-T989D (I do not have an SGH-T989 to test it with BUT I am confident it will work with that one too)
3) some partitioning software on your PC (I recommend EaseUS or AOMEI, but use whatever you are comforatble with)
4) latest version of busybox installed on your phone
So, the steps to do this:
1) partition your external SD card into at least 2 partitions, where your second partition will be used for /data. The first partition automatically mounts to /storage/sdcard1, but partition 2 will NOT auto-mount. You do not need to format this if you do not want to. This is up to you how you do it.
2) Run the following commands from either adb shell OR android terminal:
su
mke2fs /dev/block/mmcblk1p2
mkdir /storage/sdcard1/PARTITION2
mount -t ext4 /dev/block/mmcblk1p2 /storage/sdcard1/PARTITION2
rsync -HpogEvrl /data/* /storage/sdcard1/PARTITION2
busybox umount -l /storage/sdcard1/PARTITION2
mount -o remount,errors=continue /data
busybox umount -l /data && mount -t ext4 -o rw,seclabel,errors=continue,user_xattr,acl,barrier=1,data=ordered,noauto_da_alloc /dev/block/mmcblk1p2 /data
chown system:system /data
restorecon /data
brief explaination of the above commands:
su - switch user to root
mke2fs - format the block device as ext4
mkdir - make directory
mount -t ext4 - mount a block device of type ext4 from /dev/block/mmcblk1p2 to /storage/sdcard1/PARTITION2
rsync -HpogEvrl - copy files from /data/* to /storage/sdcard1/PARTITION2 preserving all attributes (including owner and group)
busybox umount -l - use the busybox version of umount to do a lazy unmount of /storage/sdcard1/PARTITION2. this will unmount it even if files are locking it
mount -o remount,errors=continue /data - remounts the data partition telling it to continue instead of kernel panic if there is any errors reading or writing to that mount point
and the next command is actually 2:
busybox umount -l /data && mount -t ext4 -o rw,seclabel,errors=continue,user_xattr,acl,barrier=1,data=ordered,noauto_da_alloc /dev/block/mmcblk1p2 /data
this does a lazy unmount of /data and then mounts /dev/block/mmcblk1p2 to /data with the appropriate parameters for the /data parameter
chown system:system /data - This gives system ownership of /data instead of root as is originally done
restorecon /data - we do this just in case the userdata partition has been reset.
3) OPTIONAL delete the directory /storage/sdcard1/PARTITION2. This is just cleanup, it is not neccessary to do.
When you reboot your phone, your /data directory will remount to the 2 GB partition as it did originally. To remount it to your newly created /data partition, run the following 2 commands:
su
busybox umount -l /data && mount -t ext4 -o rw,seclabel,errors=continue,user_xattr,acl,barrier=1,data=ordered,noauto_da_alloc /dev/block/mmcblk1p2 /data
Now, you can make this into a nice and easy startup script by following these simple steps from adb shell or android terminal (NOTE this assumes that your ROM supports userinit.d and init.d):
su
cd /data/local/userinit.d
echo "#!/system/bin/bash" > dataswap
echo "if [ -e \"/dev/block/mmcblk1p2\" ]" >>dataswap
echo "then" >> dataswap
echo "busybox umount -l /data && mount -t ext4 -o rw,seclabel,errors=continue,user_xattr,acl,barrier=1,data=ordered,noauto_da_alloc /dev/block/mmcblk1p2 /data" >> dataswap
echo "chown system:system /data" >> dataswap
echo "restorecon /data" >> dataswap
echo "fi" >>dataswap
chown root:shell dataswap
chmod 777 dataswap
and now when you reboot your phone you will have your external SD cards partition 2 as your /data directory.
If your phone has init.d support, look in your /system/etc/init.d folder for a script named "90userinit". If it is not there, you will need to either make it and have it run userinit.d OR change the line:
cd /data/local/userinit.d
to
cd /system/etc/init.d
mount -o remount,rw /system
now for the warning stuff:
1) I strongly recommend that you do NOT put this into your /data/local/userinit.d folder until you are 110% certain that it worked on your device with your ROM. The reason for this is if it fails and you don't have it in that folder, simply reboot and your phone is back to using /data from partition 25 on your internal memory
2) I strongly recommend you do a nandroid before you begin. That way in the very slim chance that something goes horridly wrong, you can recover
3) I strongly recommend you back up your external SD card before you begin resizing your partitions. Resizing partitions may result in data loss.
4)I take no responsibility for any data loss
5) I have ONLY tested this on a SGH-T989D running HellyBean (Android 4.3). I cannot make any comments on other ROMS, but as long as the ROM has busybox, root, and init.d support, this should work.
6) If you get ANY ERRORS from ANY of the above commands, stop everything and either post in this thread or start over. I have done this twice on my phone to make sure that the steps are as solid as I know how to make them. The only thing I haven't fully tested is putting it into a startup script.
One thing I notice, sometimes when you unmount and remount /data, any data changes in your currently running apps (ie you get a text message while doing this or you start a game up while /data is being sync'ed) may cause odd data issues when the two swap and may cause your phone to jump back to the boot animation. If this occurs, try waiting approximately 1 minute OR until adb shell drops out; whatever comes first. At that point, something has likely gone sour. Reboot your phone and things will be back how they were prior to step 2 (step 1 is permanent until you change that).
Questions, comments, suggestions? Please leave them in the thread, not in PM. If I get any PM's about this thread, I'll do my best to answer, but I may end up posting your PM in this thread to help others.
EDIT: cleaned up the instructions a little and added in some recommended steps (the chown and restorecon) and removed the waiting to mount /data as that just makes things unhappy long term.
EDIT: added error handling in case mmcblk1p2 does not exist to the startup script. If it does not exist, it will now NOT swap the partitions. So as a failsafe, if your phone gets stuck at the boot animation, you can power it down, remove the SD card and power it back up to boot with your default /data partition. This should not need to be done, but there is a chance that your SD card could die or your new /data partition get corrupted, this will allow you to recover safely and will likely only require you to re-create your data partition and NOT have to re-do your whole ROM due to something going bad on the big /data.
Dang...found a bug: it looks like if you leave it for a few days or reboot our something(have not narrowed it down yet) some apps stop working... investigating it and should have a solution sometime tonight... sorry to all those who have tried this... if you have not done much, I'd suggest switching back to normal /data until I get the bug sorted out. My best guess is that reboot doesn't unmount the partition cleanly but I'm not positive...
bmg002 said:
I was having issues with my /data partition getting full on me after getting new ROMs set up. This was irritating me and I came to the conclusion that 2 GB was just not enough space for some of the larger apps out there. So I went ahead and started investigating and testing how to get /data onto the external SD card.
2 complications arise:
1) it needs to be in ext4 format to preserve permissions
2) it needs to be swapped post boot AFTER the sd card is mounted (potentially, I have not fully tested this).
So this becomes a multi step process. What you need:
1) an external SD card that is at least 2 GB in size if not larger (I recommend larger simply because what is the point of having it on external storage if you aren't gaining any extra space)
2) a SGH-T989D (I do not have an SGH-T989 to test it with BUT I am confident it will work with that one too)
3) some partitioning software on your PC (I recommend EaseUS or AOMEI, but use whatever you are comforatble with)
4) latest version of busybox installed on your phone
So, the steps to do this:
1) partition your external SD card into at least 2 partitions, where your second partition will be used for /data. The first partition automatically mounts to /storage/sdcard1, but partition 2 will NOT auto-mount. You do not need to format this if you do not want to. This is up to you how you do it.
2) Run the following commands from either adb shell OR android terminal:
su
mke2fs /dev/block/mmcblk1p2
mkdir /storage/sdcard1/PARTITION2
mount -t ext4 /dev/block/mmcblk1p2 /storage/sdcard1/PARTITION2
rsync -HpogEvrl /data/* /storage/sdcard1/PARTITION2
busybox umount -l /storage/sdcard1/PARTITION2
mount -o remount,errors=continue /data
busybox umount -l /data && mount -t ext4 -o rw,seclabel,errors=continue,user_xattr,acl,barrier=1,data=ordered,noauto_da_alloc /dev/block/mmcblk1p2 /data
brief explaination of the above commands:
su - switch user to root
mke2fs - format the block device as ext4
mkdir - make directory
mount -t ext4 - mount a block device of type ext4 from /dev/block/mmcblk1p2 to /storage/sdcard1/PARTITION2
rsync -HpogEvrl - copy files from /data/* to /storage/sdcard1/PARTITION2 preserving all attributes (including owner and group)
busybox umount -l - use the busybox version of umount to do a lazy unmount of /storage/sdcard1/PARTITION2. this will unmount it even if files are locking it
mount -o remount,errors=continue /data - remounts the data partition telling it to continue instead of kernel panic if there is any errors reading or writing to that mount point
and the last command is actually 2:
busybox umount -l /data && mount -t ext4 -o rw,seclabel,errors=continue,user_xattr,acl,barrier=1,data=ordered,noauto_da_alloc /dev/block/mmcblk1p2 /data
this does a lazy unmount of /data and then mounts /dev/block/mmcblk1p2 to /data with the appropriate parameters for the /data parameter
3) OPTIONAL delete the directory /storage/sdcard1/PARTITION2. This is just cleanup, it is not neccessary to do.
When you reboot your phone, your /data directory will remount to the 2 GB partition as it did originally. To remount it to your newly created /data partition, run the following 2 commands:
su
busybox umount -l /data && mount -t ext4 -o rw,seclabel,errors=continue,user_xattr,acl,barrier=1,data=ordered,noauto_da_alloc /dev/block/mmcblk1p2 /data
Now, you can make this into a nice and easy startup script by following these simple steps from adb shell or android terminal (NOTE this assumes that your ROM supports userinit.d and init.d):
su
cd /data/local/userinit.d
echo "#/sys/bin/bash" > dataswap.sh
echo "while [ \`mount | grep -c sdcard\` -lt 3 ]" >> dataswap.sh
echo "do" >> dataswap.sh
echo "sleep 10" >> dataswap.sh
echo "done" >> dataswap.sh
echo "busybox umount -l /data && mount -t ext4 -o rw,seclabel,errors=continue,user_xattr,acl,barrier=1,data=ordered,noauto_da_alloc /dev/block/mmcblk1p2 /data" >> dataswap.sh
chown root:shell dataswap.sh
chmod 777 dataswap.sh
and now when you reboot your phone you will have your external SD cards partition 2 as your /data directory.
If your phone has init.d support, look in your /system/etc/init.d folder for a script named "90userinit". If it is not there, you will need to either make it and have it run userinit.d OR change the line:
cd /data/local/userinit.d
to
cd /system/etc/init.d
mount -o remount,rw /system
now for the warning stuff:
1) I strongly recommend that you do NOT put this into your /data/local/userinit.d folder until you are 110% certain that it worked on your device with your ROM. The reason for this is if it fails and you don't have it in that folder, simply reboot and your phone is back to using /data from partition 25 on your internal memory
2) I strongly recommend you do a nandroid before you begin. That way in the very slim chance that something goes horridly wrong, you can recover
3) I strongly recommend you back up your external SD card before you begin resizing your partitions. Resizing partitions may result in data loss.
4)I take no responsibility for any data loss
5) I have ONLY tested this on a SGH-T989D running HellyBean (Android 4.3). I cannot make any comments on other ROMS, but as long as the ROM has busybox, root, and init.d support, this should work.
6) If you get ANY ERRORS from ANY of the above commands, stop everything and either post in this thread or start over. I have done this twice on my phone to make sure that the steps are as solid as I know how to make them. The only thing I haven't fully tested is putting it into a startup script.
One thing I notice, sometimes when you unmount and remount /data, any data changes in your currently running apps (ie you get a text message while doing this or you start a game up while /data is being sync'ed) may cause odd data issues when the two swap and may cause your phone to jump back to the boot animation. If this occurs, try waiting approximately 1 minute OR until adb shell drops out; whatever comes first. At that point, something has likely gone sour. Reboot your phone and things will be back how they were prior to step 2 (step 1 is permanent until you change that).
Questions, comments, suggestions? Please leave them in the thread, not in PM. If I get any PM's about this thread, I'll do my best to answer, but I may end up posting your PM in this thread to help others.
Click to expand...
Click to collapse
So found a solution to crashing apps . Load up the play store and update your apps. Worked for me anyways.
Now to fix a potential mounting bug in the op, put any scripts on a different ext4 position such as/system/xbin or/system/etc/init.d.
I'll keep you posted if I find other bugs.
Sent from my SAMSUNG-SGH-T989 using xda app-developers app
Bleh new bug:
When you unplug it from a pc, it gets confused and you get io errors which cause it to crash back to the boot animation and get stuck there... too tired to debug out tonight but I'll poke at it tomorrow... thinking I may need to build a kernel module for this... or a custom kernel
Sent from my SAMSUNG-SGH-T989 using xda app-developers app
So the unplugging issue seems quite intermittent and I am unable to get consistent results with it. So I am not sure if it is a bug or not. I updated the OP to have error handling so you can pull your SD card out to mount the 2 GB /data that your phone normally does instead of your big one in the event that something goes wrong.
Hrm... so my testing and further development with this has taken a temporary pause due to my SD card dying on me. Stupid SD card... haven't even had it a year. Hoping I can find the reciept. But once I get it replaced, I'll be jumping in on this some more. I have a few cool ideas that we can do by moving partitions to external storage...
What's the deal with cause this would so help with games but is it possible to maybe if possible extend the internal storage
snt? from? sumthiN 4.4+ ?via a ?T989
hatememarkz said:
What's the deal with cause this would so help with games but is it possible to maybe if possible extend the internal storage
snt? from? sumthiN 4.4+ ?via a ?T989
Click to expand...
Click to collapse
From my testing it seems to work but puts a heavy load the sd card. And if your sd card fails you will lose some data.
I have not tested this on KitKat yet but that is my plan soon.
Sent from my SM-T310 using xda app-developers app

[TIP][TRICK][SCRIPT] ISD for Link2SD #2P, ESD as ISD, 300MB ESD, VM#, NTP.

I will now tell you how you can use the whole internal SD card for Link2SD's second partition and use your physical SD card in place of it with a 300MB "external sd". *Only works on non-emulated sdcard supported devices.
Requirements:
A rooted ROM that supports init.d scripts. I use The Blu Kuban.
Link2SD.
A physical compatible MicroSD card. If you don't have one, this will not work.
Either ADB with a text editor, PC, and USB or an on-phone text editor. For PC, I recommend PSPad. For on-phone, I recommend Jota.
[size=+1]I provide this information with no warranties or guarantees and I only tested it on the Sprint Epic 4G Touch and The Blu Kuban ROM. Use it at your own risk.
Please note that this *only* works if your ROM does *not* use the "hidden" partition (/dev/block/mmcblk0p12) for system apps.[/size]
Install Link2SD. It will yell at you because there's no second partition on the SD card. Just ignore that.
Two Options (Option 2 is untested and might not work at all given that the SD card(s) may or may not be mounted when the script runs and prematurely mounting them before the vold.fstab file is executed might break the bind when the vold.fstab file is executed):
Make a file named "11link2sd" with the following contents, copy it to /system/etc/init.d, and give it 777 permissions ("chmod 777 /system/etc/init.d/11link2sd"):
Code:
#!/system/bin/sh
#added by link2sd
LOG=/data/link2sd-11link2sd.log
echo "$(date) mounting..." > $LOG
mount -t vfat -o rw /dev/block/mmcblk0p11 /data/sdext2 1>>$LOG 2>>$LOG
mount >> $LOG
echo "$(date) mount finished" >> $LOG
Make a folder on your internal or external SD card named "link2sdext2" (the name is arbitrary, but I will be using it in the script) and make a file named "11link2sd" with the following contents, copy it to /system/etc/init.d, and give it 777 permissions ("chmod 777 /system/etc/init.d/11link2sd"):
Code:
#!/system/bin/sh
#added by link2sd
LOG=/data/link2sd-11link2sd.log
echo "$(date) mounting..." > $LOG
# Leave out "/external_sd" if you are using your internal SD card.
# And check the path, it may be different for your ROM.
mount -o bind /mnt/sdcard/external_sd/link2sdext2 /data/sdext2 1>>$LOG 2>>$LOG
mount >> $LOG
echo "$(date) mount finished" >> $LOG
Edit the file /system/etc/vold.fstab. Comment out (prefix the line with "#") every line that starts with "dev_mount" and add the following lines:
Code:
# Mount the physical SD card to /mnt/sdcard
dev_mount sdcard1 /mnt/sdcard auto /devices/virtual/block/cyasblkdevblk0
# Mount the "hidden" partition of the eMMC to /mnt/sdcard/external_sd.
# Depending on the ROM, you may need to change this to something else.
# Check the lines you commented out for the actual paths for your ROM.
dev_mount sdcard /mnt/sdcard/external_sd 12 /devices/platform/dw_mmc/mmc_host/mmc0/mmc0
* Basically, you're just going to remove "encryptable_nonremovable," swap "/devices/platform/dw_mmc/mmc_host/mmc0/mmc0" with "/devices/virtual/block/cyasblkdevblk0," and change "11" to "12."
Reboot and start using Link2SD to move/link your data off the /data partition.
I have attached my 11link2sd and vold.fstab for your convenience and illustration. It is *not* a flashable ZIP on purpose, every ROM is different and flashing the scripts blindly may have undesirable consequences; however, both files work on my phone: an Epic 4G Touch from Sprint with The Blu Kuban 1.0.5.4 ROM (ICS FL24 4.0.4).

Categories

Resources