this script automates the process of partitioning a sdcard on your android device. it should work fine for all sizes/types of sdcards, but since i can't test all sizes/types of sdcards, we'll have to see.
if you are running into problems with the script, post the log file(located at /data/sdparted.log) when asking for help.
big ups to cyanogen (parted and upgrade_fs) and Denkai (upgrading to ext4).
i welcome all comments, questions & suggestions, related to the script. this is NOT a general q&a.
read the ENTIRE post BEFORE asking questions, please.
to manually partition your sdcard see my other thread.
DISCLAIMER: i take no responsibility for what happens to you, your phone, sdcard, data, sanity, etc if you use this script. remember to backup your sdcard to your pc before you begin. this script has the potential to COMPLETELY WIPE your sdcard!
##########################
shameless promotion:
sdparted can also be found in amon_ra's recovery and natalic's android toolkit.
##########################
features:
-automated partition of sdcard using parted
-upgrading to ext3/ext4
-downgrading to ext2
-interactive mode
-supports units (M and G)
-supports floating point partition sizes (ie. .5G=512M)
-automatic logging to /data/sdparted.log
##########################
requirements:
android phone with proper utilities(cm-recovery-1.4, amon_ra's recovery)
sdcard <--class 6 recommended(adata makes good ones...they max out the g1 hw in terms of speed)
adb
fingies
##########################
Code:
sdparted v0.6 created by 51dusty
if you use this script in your work, please give some credit. thanks.
requirements: cm-recovery-v1.4
usage: sdparted [options]
options:
--fatsize|-fs SIZE[MG] set the size of the fat32 partition to <SIZE>.
default=total sdcard size - (ext + swap)
--extsize|-es SIZE[MG] set the size of the ext partition to <SIZE>.
default=512M
--swapsize|-ss SIZE[MG] set the size of the swap partition to <SIZE>.
if set to 0, no swap partition will be created.
default=32M
--extfs|-efs TYPE set the filesystem of ext partition to <TYPE>.
valid types=ext2, ext3, ext4
default=ext2
--upgradefs|-ufs TYPE upgrades existing ext partition to <TYPE>.
this operation will NOT wipe your sdcard and
cannot be used with any partition creation options.
valid types=ext3, ext4
--downgradefs|-dfs TYPE downgrades existing ext partition to <TYPE>.
this operation will NOT wipe your sdcard and
cannot be used with any partition creation options.
valid types=ext2
--interactive|-i interactive mode
--help|-h display this help
--printonly|-po display sdcard information
--silent|-s do not prompt user, not even initial warning.
examples:
sdparted creates swap=32M ext2=512M fat32=remaining free space
sdparted -efs ext4 creates swap=32M ext4=512M fat32=remaining free space
sdparted -fs 1.5G -efs ext3 creates swap=32M ext3=512M fat32=1536M
sdparted -es 256M -ss 0 creates no swap ext2=256M fat32=remaining free space
sdparted -ufs ext4 upgrades ext partition to ext4
##########################
need to backup your ext partition?
the following commands will backup/restore your ext partition to/from a folder named sdbackup in your current directory. these must be run while phone is booted, not recovery.
to backup your ext partition: adb pull /system/sd/ %CD%\sdbackup
to restore back to sdcard: adb push %CD%\sdbackup /system/sd
##########################
to run from computer:
1. download sdparted.txt below to computer
2. connect g1 via usb
3. boot into cm-recovery-v1.4, goto console(alt-x)
4. at your windows cmd prompt type: adb push /path-to/sdparted.txt /sbin/sdparted
5. then type: adb shell chmod 755 /sbin/sdparted
6. to run type adb shell and hit enter.
7. you can now run script (ie. sdparted -efs ext4).
to run w/o computer:
1. download sdparted.txt below to root of sdcard. (get downloadcrutch if needed*thnx lycoln)
2. boot into cm-recovery-v1.4, goto console(alt-x)
3. at # prompt type: mount /sdcard
4. then, mv /sdcard/sdparted.txt /sbin/sdparted
5. then, chmod 755 /sbin/sdparted
6. you can now run script (ie. sdparted -efs ext4).
you CANNOT run this script from terminal app.
##########################
if the script crashes or you receive an error:
immediately pull the log to your computer(using adb pull /data/sdparted.log sdparted.log), b/c the log will not be there after a reboot. send me the log when reporting errors, please.
##########################
changelog:
changes in v0.6
*new feature=interactive mode
*tweak user abort function for those with itchy fingers
changes in v0.5.3
*remove initial warning(kinda pointless if there is another before you wipe)
*clean partition table handling code
*general code cleanup/consolidation in anticipation of new features
changes in v0.5.2
*handling of "partition 1 may not be aligned to cylinder boundaries", fixing "sh: -gt: argument expected" and related phenomena (ie. sdparted trying to partition using negative numbers ) reported by midtoad
changes in v0.5.1
*slight change to logging(so slight it only gets a .1), fixing "/sbin/sdparted: line 5: .//sbin/sdparted: not found"
changes in v0.5
*new feature=floating point partition sizes
*new feature=downgrade ext filesystem (ext3->ext2 ONLY, for now)
*fix some crappy programming
changes in v0.4
*unmount all partitions before operations, fixing "Error: Partition(s) on /dev/block/mmcblk0 are being used".
*remove some useless code
changes in v0.3
*new feature=logging
*new feature=units
*new feature=print card info
changes in v0.2
*add cm-r-v1.4 check to prevent running in 1.3.1
##########################
todo items:
-downgradefs support for ext4
##########################
Excellent!
One of the easiest things Ive done in a while. Worked great!
great.
i'm new to android, so i have a question.
I'm guessing when you go to settings and eject SD card, it only unmounts the FAT32 partition, right?
So does that mean the only safe way to eject the card is shutting down?
great job!
SyXbiT said:
great.
i'm new to android, so i have a question.
I'm guessing when you go to settings and eject SD card, it only unmounts the FAT32 partition, right?
So does that mean the only safe way to eject the card is shutting down?
great job!
Click to expand...
Click to collapse
That depends which ROM you are running and how it's set up. CyanogenMod for example, will automatically use the Ext partition for Apps-to-SD if it finds one. Ejecting a card while the phone is using it as part of its internal memory would be a Bad Thing™.
If you are running the stock firmware, it would be safe to remove the card after ejecting it in settings.
Could anyone at their convenience post directions for using this with console,
and where to place text attached? Funny, I've done this the manual way but don't know the simple things.
Thanks in advance for your work and patience. =)
Figured this one out!
Can you tell me how exactly to run this script? I ran this in recovery and i get sdparted not found.
sacredsoul said:
Can you tell me how exactly to run this script? I ran this in recovery and i get sdparted not found.
Click to expand...
Click to collapse
where did you place the file? did you run chmod?
excellent! Great job dusty
sacredsoul, Make sure you have the latest Cyanogen's Recovery Image, which I used 1.4. I got the same error using 1.31. I then updated to 1.4 and it worked perfectly. great Post 51dusty.
i am tryin to do this...hw do i get in recovery mode and wat exactly im i typin?..i hav a 4gig
Just wanted to chime in and say this script worked beautifully for me on a 16gb card.
Thanks!
I don't get it, am I mounting first, placing the file on the SD, then rebooting into recovery? The instructions make it sound as if I can just boot into console and pull it off my machine. Many people might find that confusing.
ctheory83 said:
I don't get it, am I mounting first, placing the file on the SD, then rebooting into recovery?
Click to expand...
Click to collapse
...i don't say to mount anything.
ctheory83 said:
The instructions make it sound as if I can just boot into console and pull it off my machine.
Click to expand...
Click to collapse
actually, you can...but you push instead.
51dusty said:
to install from computer, download, boot into cm-recovery-v1.4, goto console, and adb push /path-to/sdparted.txt /sbin/sdparted, then adb shell chmod 755 /sbin/sdparted. you can now run the script from adb(in recovery) or from g1 recovery console.
Click to expand...
Click to collapse
i will edit post to make installation less "confusing"...done.
Hey dusty i been struggling with this for like a week now and finally decided to post! so i got the adb thing running on my pc, windows 32-bit and it finds my device when i put the command "adb devices", so that far im fine but then your instructions tell us to boot the phone into recovery console and the type "adb shell" the result comes up "no adb found", at this point i have tried it with my phone plugged into the pc and unplugged without mounting it from the G1... please help what am i doing wrong im really confused! thanks!
The script is great i finally figured it out how to work this thing, but i just a bit of an issue now, when i keep installing apps my internal storage is also getting reduced a bit, i have installed about 100mb of apps and my internal storage reduced to 67 from 70mb, i have already cleared cache, using the app to move it to sd card, and also turned my phone off and took out the battery and rebooted, but its standing at 67mb... does this possibly have anything to do with protected apps??? please help!!
adb not found
hi,
it says adb not found, what am i doing wrong ?.
so my problem is that im not quite sure on what you mean by the path in the following command
adb push /path-to/sdparted.txt /sbin/sdparted
i know that you mean where ever the file is located but, for instance i just put mine in the c drive, so it should be adb push /c drive/sdparted.txt /sbin/sdparted
what is the correct way that should look?
edit: ok so i found my problem, i tried to install it from the adb shell, that was wrong, and this is the string in windows cmd i used for sdparted located just on the c drive
"adb push %cd%\sdparted.txt /sbin/sdparted" it then says the speed it was written, etc. does that mean it is correctly installed? from here, im not too sure how to go about setting up my partitions, again im very new to this.
you can now run the script from adb(in recovery) or from g1 recovery console.
Click to expand...
Click to collapse
Everything went okay, only the last stap with running from adb i dont understand.
What command is that ?
CoopZor said:
Everything went okay, only the last stap with running from adb i dont understand.
What command is that ?
Click to expand...
Click to collapse
i have edited first post to clarify how to run.
to run, from adb:
1. boot into cm-recovery-v1.4, goto console(alt-x)
2. at windows prompt, type adb shell and hit enter.
3. once connected via adb, you can now run script (ie. sdparted -efs ext4).
Click to expand...
Click to collapse
Guide: How to Recover from a bootloopby brooplank1337
This guide will learn you the common ways of fixing a bootloop, how to create a custom CWM Fix-Zip and how to use ADB to recover from a bootloop.
Chapters:
Chapter 1: Finding the cause of the bootloop
Chapter 2: Using a CWM ZIP as solution
Chapter 3: Using ADB as solution
Chapter 1: Finding the cause of the bootloop
Bootloops are mainly caused because system files interfering with each other which causes instability and/or crashes at the boot sequence.
To find the cause of a bootloop you have to think about what you did before getting the bootloop.
Choose one of the following reasons that caused the bootloop for you and try out its solution.
- After flashing a new rom
If you flash a new (base)rom with odin your /data will be kept. This means your old dalvik-cache will be used for the new system files which would result in a bootloop, to fix this problem:
1. Start your phone in CWM Recovery
2. Go to Advanced
3. Choose "Wipe dalvik-cache"
4. Now go to "Mounts & Storage"
5. Choose "Wipe /cache"
6. Reboot your phone
if the problems still exists after doing that and you're sure it's not related to the rom, then you need to do this:
1. Start your phone in CWM Recovery
2. Now go to "Mounts & Storage"
3. Choose "Wipe /data"
4. Choose "Wipe /cache"
5. Reboot your phone
- After restoring a system only backup
This one is actually the same as the above one, since only /system is restored (advanced restore) there is an incorrect dalvik-cache present which will cause the bootloop. perform the same steps as above to solve the problem.
- After installing a Mod / Theme or UOT Kitchen output
When you install a Mod / Theme or UOT Kitchen output and you get a bootloop, you know there is something wrong with the file that you are installing. This is mostly caused by an incorrect BaseROM of the mod/theme, but can also happen if the creator just didn't create it properly.
Wiping dalvik-cache won't be enough to fix this, you will need to open the zip on your computer and look at the files that are installed with the mod/theme. you can do this by looking into the system folder in the zip, there you can find the files that are being installed. for example:
You have installed an Extended Power Menu mod but it causes a bootloop, here is what you do:
1. Open the installation zip with Winrar (Extended Power Menu in this case)
2. Now look inside the "system" folder, in my case I found the framework folder inside the system folder
3. The framework folder contains: android.policy.jar & framework-res.apk, so these are the suspicious files.
4. What you simply do is searching for the original files (from your (base)rom) and drag them into the framework folder (inside winrar)
5. Now it will ask for a compression level, choose "Store" and the archive will be done in seconds.
6. You will need to put the file on your external sdcard using the "Mount USB Storage" option in CWM under "Mounts & Storage"
7. Install the zip just as you did with the mod, you should now be bootloop free, if not reinstall the zip with a mounted /system (Mounts & Storage > Mount /system) (and you can optionally wipe /cache and /dalvik-cache, this will never harm any file/setting.
Q: Ok... but I have no external sdcard.. how to fix it then?
A: Have a look at the "Using ADB as solution" chapter
- After setting wrong permissions
Android is very dependent on the right permissions, if you adjust file permissions incorrectly you could get a bootloop, giving a file to less permissions would break it, but also giving a file to much permissions would break it. most common permissions of system files are:
- 644 (RW-R-R) - (this is best known system permission, it exists in /system/app, /system/framework, /system/etc, /system/lib and allot of seperate files)
- 755 (RWX-RX-RX) - (mainly used for /system/bin)
- 777 (RWX-RWX-RWX) - (used for scripts inside /system/etc/init.d and busybox files)
An easy fix is performing the "Fix permissions" option in CWM under Advanced. be sure to mount the partitions before running the fix. Although this doesn't cover all permissions. have a look at the CWM or ADB chapter to find the solution.
Chapter 2 Using a CWM ZIP as solution
Using the original cwm zip is the easiest way, since the zip is already created for you, you only need to replace the files with the original rom files. You can get those files from the deodex packages for baseroms which are posted on the forums. If you are using an odexed ROM, you can get your files from system.img.ext4 (open the baserom: *.tar.md5 with Winrar and extract system.img.ext4)
Now you can open system.img.ext4 with "DiskInternals Linux Reader". browse to the app/framework directory and extract the needed files from the image file.
Once you got the same files as present in the original CWM zip you can easily drag em into the archive, then choose "store" as compression level. Now finally you need to put it on your sdcard and install it.
If you don't have an external sdcard or you can't reach your internal sdcard (which is very likely when you have a bootloop), you can use ADB to push the zip to your phone, read about how to use ADB in Chapter 3.
Commands for updater-script (located in CWMFIX.zip/META-INF/com/google/android/)
Mount & Install
To mount the system partition:
mount("ext4", "EMMC", "/dev/block/mmcblk0p15", "/system");
To extract the system folder in your zip:
package_extract_dir("system", "/system");
Setting Permissions
To set permissions of an individual file:
set_perm(0, 0, Mod, "File here");
A working example:
set_perm(0, 0, 0644, "/system/build.prop");
To set permissions of a directory:
set_perm(0, 0, Mod, "Dir here without a trailing slash");
Setting Permissions Recursively
To set permissions to all files inside a directory (resursive):
set_perm_recursive(0, 0, 0755, Mod, "Dir here without a trailing slash");
A working example:
set_perm_recursive(0, 0, 0755, 0777, "/system/etc/init.d");
Chapter 3 Using ADB as solution
ADB can be used to access the phone while booting, be aware that some bootloops make it unable to use ADB since they do not go further then the samsung logo.
The only tricky part about using ADB with bootloops is that you have to do it on the right time, this is just after the Galaxy S Plus logo, so just when the bootanimation starts. The easiest way to enter your phone in this part is using a batch script that monitors the state of your device and connects directly when possible.
I use this script for example (requires adb.exe and the 2 dlls)
Code:
@echo off
cd /d %~dp0
echo.
echo Waiting for device...
adb wait-for-device
echo.
adb -d shell stop
adb push mycwmfix.zip /sdcard/mycwmfix.zip
adb reboot recovery
This script will wait for the device to become ready, when it's ready it freeze the device, so the script has more time to push the file (instead of keep rebooting). Then it will push the specified cwmfix zip to your sdcard, and after that it will reboot in recovery so you can install the cwm fix you made.
You can also make an batch script that pushes the files automatically to your phone, here is an example:
Code:
@echo off
cd /d %~dp0
echo.
echo Waiting for device...
adb wait-for-device
echo.
adb -d shell stop
adb -d shell su -c "mount -o remount rw /system"
adb push framework-res.apk /system/framework/framework-res.apk
adb -d shell chmod 644 /system/framework/framework-res.apk
adb push SystemUI.apk /system/app/SystemUI.apk
adb -d shell chmod 644 /system/app/SystemUI.apk
adb reboot
This script will wait for the device to become ready, when it's ready it freeze the device, so the script has more time to push the file (instead of keep rebooting). Then it will push framework-res.apk and SystemUI.apk to the directory it belongs to, after that it changes the permissions of the files to RW-R-R (644) and then it will reboot.
I hope you learned something from this tutorial, when I think I forgot something Ill add it later.
That's perfect thanks a lot brood
knank said:
That's perfect thanks a lot brood
Click to expand...
Click to collapse
Thanks
broodplank1337 said:
Guide: How to Recover from a bootloopby brooplank1337
This guide will learn you the common ways of fixing a bootloop, how to create a custom CWM Fix-Zip and how to use ADB to recover from a bootloop.
Chapters:
Chapter 1: Finding the cause of the bootloop
Chapter 2: Using a CWM ZIP as solution
Chapter 3: Using ADB as solution
Chapter 1: Finding the cause of the bootloop
Bootloops are mainly caused because system files interfering with each other which causes instability and/or crashes at the boot sequence.
To find the cause of a bootloop you have to think about what you did before getting the bootloop.
Choose one of the following reasons that caused the bootloop for you and try out its solution.
- After flashing a new rom
If you flash a new (base)rom with odin your /data will be kept. This means your old dalvik-cache will be used for the new system files which would result in a bootloop, to fix this problem:
1. Start your phone in CWM Recovery
2. Go to Advanced
3. Choose "Wipe dalvik-cache"
4. Now go to "Mounts & Storage"
5. Choose "Wipe /cache"
6. Reboot your phone
if the problems still exists after doing that and you're sure it's not related to the rom, then you need to do this:
1. Start your phone in CWM Recovery
2. Now go to "Mounts & Storage"
3. Choose "Wipe /data"
4. Choose "Wipe /cache"
5. Reboot your phone
- After restoring a system only backup
This one is actually the same as the above one, since only /system is restored (advanced restore) there is an incorrect dalvik-cache present which will cause the bootloop. perform the same steps as above to solve the problem.
- After installing a Mod / Theme or UOT Kitchen output
When you install a Mod / Theme or UOT Kitchen output and you get a bootloop, you know there is something wrong with the file that you are installing. This is mostly caused by an incorrect BaseROM of the mod/theme, but can also happen if the creator just didn't create it properly.
Wiping dalvik-cache won't be enough to fix this, you will need to open the zip on your computer and look at the files that are installed with the mod/theme. you can do this by looking into the system folder in the zip, there you can find the files that are being installed. for example:
You have installed an Extended Power Menu mod but it causes a bootloop, here is what you do:
1. Open the installation zip with Winrar (Extended Power Menu in this case)
2. Now look inside the "system" folder, in my case I found the framework folder inside the system folder
3. The framework folder contains: android.policy.jar & framework-res.apk, so these are the suspicious files.
4. What you simply do is searching for the original files (from your (base)rom) and drag them into the framework folder (inside winrar)
5. Now it will ask for a compression level, choose "Store" and the archive will be done in seconds.
6. You will need to put the file on your external sdcard using the "Mount USB Storage" option in CWM under "Mounts & Storage"
7. Install the zip just as you did with the mod, you should now be bootloop free, if not reinstall the zip with a mounted /system (Mounts & Storage > Mount /system) (and you can optionally wipe /cache and /dalvik-cache, this will never harm any file/setting.
Q: Ok... but I have no external sdcard.. how to fix it then?
A: Have a look at the "Using ADB as solution" chapter
- After setting wrong permissions
Android is very dependent on the right permissions, if you adjust file permissions incorrectly you could get a bootloop, giving a file to less permissions would break it, but also giving a file to much permissions would break it. most common permissions of system files are:
- 644 (RW-R-R) - (this is best known system permission, it exists in /system/app, /system/framework, /system/etc, /system/lib and allot of seperate files)
- 755 (RWX-RX-RX) - (mainly used for /system/bin)
- 777 (RWX-RWX-RWX) - (used for scripts inside /system/etc/init.d and busybox files)
An easy fix is performing the "Fix permissions" option in CWM under Advanced. be sure to mount the partitions before running the fix. Although this doesn't cover all permissions. have a look at the CWM or ADB chapter to find the solution.
Chapter 2 Using a CWM ZIP as solution
Using the original cwm zip is the easiest way, since the zip is already created for you, you only need to replace the files with the original rom files. You can get those files from the deodex packages for baseroms which are posted on the forums. If you are using an odexed ROM, you can get your files from system.img.ext4 (open the baserom: *.tar.md5 with Winrar and extract system.img.ext4)
Now you can open system.img.ext4 with "DiskInternals Linux Reader". browse to the app/framework directory and extract the needed files from the image file.
Once you got the same files as present in the original CWM zip you can easily drag em into the archive, then choose "store" as compression level. Now finally you need to put it on your sdcard and install it.
If you don't have an external sdcard or you can't reach your internal sdcard (which is very likely when you have a bootloop), you can use ADB to push the zip to your phone, read about how to use ADB in Chapter 3.
Commands for updater-script (located in CWMFIX.zip/META-INF/com/google/android/)
Mount & Install
To mount the system partition:
mount("ext4", "EMMC", "/dev/block/mmcblk0p15", "/system");
To extract the system folder in your zip:
package_extract_dir("system", "/system");
Setting Permissions
To set permissions of an individual file:
set_perm(0, 0, Mod, "File here");
A working example:
set_perm(0, 0, 0644, "/system/build.prop");
To set permissions of a directory:
set_perm(0, 0, Mod, "Dir here without a trailing slash");
Setting Permissions Recursively
To set permissions to all files inside a directory (resursive):
set_perm_recursive(0, 0, 0755, Mod, "Dir here without a trailing slash");
A working example:
set_perm_recursive(0, 0, 0755, 0777, "/system/etc/init.d");
Chapter 3 Using ADB as solution
ADB can be used to access the phone while booting, be aware that some bootloops make it unable to use ADB since they do not go further then the samsung logo.
The only tricky part about using ADB with bootloops is that you have to do it on the right time, this is just after the Galaxy S Plus logo, so just when the bootanimation starts. The easiest way to enter your phone in this part is using a batch script that monitors the state of your device and connects directly when possible.
I use this script for example (requires adb.exe and the 2 dlls)
Code:
@echo off
cd /d %~dp0
echo.
echo Waiting for device...
adb wait-for-device
echo.
adb -d shell stop
adb push mycwmfix.zip /sdcard/mycwmfix.zip
adb reboot recovery
This script will wait for the device to become ready, when it's ready it freeze the device, so the script has more time to push the file (instead of keep rebooting). Then it will push the specified cwmfix zip to your sdcard, and after that it will reboot in recovery so you can install the cwm fix you made.
You can also make an batch script that pushes the files automatically to your phone, here is an example:
Code:
@echo off
cd /d %~dp0
echo.
echo Waiting for device...
adb wait-for-device
echo.
adb -d shell stop
adb -d shell su -c "mount -o remount rw /system"
adb push framework-res.apk /system/framework/framework-res.apk
adb -d shell chmod 644 /system/framework/framework-res.apk
adb push SystemUI.apk /system/app/SystemUI.apk
adb -d shell chmod 644 /system/app/SystemUI.apk
adb reboot
This script will wait for the device to become ready, when it's ready it freeze the device, so the script has more time to push the file (instead of keep rebooting). Then it will push framework-res.apk and SystemUI.apk to the directory it belongs to, after that it changes the permissions of the files to RW-R-R (644) and then it will reboot.
I hope you learned something from this tutorial, when I think I forgot something Ill add it later.
Click to expand...
Click to collapse
Dear sir,
I tried every possible way to recover my handset but its not working as the permissions for SYSTEM folder are changed and adb cannot read it or write it.
i also tried to pull the original folder and push another new system folder so that the files are accessible but no success.
I also tried flashing boot,recovery,system images but no use.
what would you suggest in such situation as the shell su chmod and all the other files reside into system/bin folder.
please do try to check asap and reply.
thanks in advance
mat7961 said:
Dear sir,
I tried every possible way to recover my handset but its not working as the permissions for SYSTEM folder are changed and adb cannot read it or write it.
i also tried to pull the original folder and push another new system folder so that the files are accessible but no success.
I also tried flashing boot,recovery,system images but no use.
what would you suggest in such situation as the shell su chmod and all the other files reside into system/bin folder.
please do try to check asap and reply.
thanks in advance
Click to expand...
Click to collapse
My first advice is to not quote the OP.
Secondly, try to use the adb in recovery mode. If this doesn't work either, use the repartition thread guide to restore your /system partition.
Sent from my GT-I9001 using xda premium
pattern unlock, bootloop
I installed some frameworks, after that settings some features not working properly. yesterday i wanted to set pattern unlock and when i set it i immediately got bootloop.. please tell me what to do? should i flash stock setting mod? or something like it? (framework) i have xperia arc s stock 4.0.4 ...
I need HELP, guys! I am having a little problem and idk how to fix this. After flashing Infamous ROM, reboot, everything worked fine, but then I reboot the phone and it stuck in the bootloop, so I went to the TWRP and factory reset, reboot, still stuck in bootloop. So i went back and format data and flash it again. Everything works fine, then i try to reboot and it and stuck and the samsung screen AGAIN! So i went back to the Stock ROM do the same thing, first boot is fine, reboot and it stuck in the Samung Galaxy S4 screen. Any solution guys? I even tried fix permission . Still didntwork. HELP, PLEASE!!
minhthai17 said:
I need HELP, guys! I am having a little problem and idk how to fix this. After flashing Infamous ROM, reboot, everything worked fine, but then I reboot the phone and it stuck in the bootloop, so I went to the TWRP and factory reset, reboot, still stuck in bootloop. So i went back and format data and flash it again. Everything works fine, then i try to reboot and it and stuck and the samsung screen AGAIN! So i went back to the Stock ROM do the same thing, first boot is fine, reboot and it stuck in the Samung Galaxy S4 screen. Any solution guys? I even tried fix permission . Still didntwork. HELP, PLEASE!!
Click to expand...
Click to collapse
Obviously there is no Infamous ROM for I9001 - you're sure you flashed a ROM that fits to SGS+ please review this and maybe reflash a dedicated ROM.
minhthai17 said:
I need HELP, guys! I am having a little problem and idk how to fix this. After flashing Infamous ROM, reboot, everything worked fine, but then I reboot the phone and it stuck in the bootloop, so I went to the TWRP and factory reset, reboot, still stuck in bootloop. So i went back and format data and flash it again. Everything works fine, then i try to reboot and it and stuck and the samsung screen AGAIN! So i went back to the Stock ROM do the same thing, first boot is fine, reboot and it stuck in the Samung Galaxy S4 screen. Any solution guys? I even tried fix permission . Still didntwork. HELP, PLEASE!!
Click to expand...
Click to collapse
Two questions
1) on which phone did you flash this infamous rom?
2) tried wipe /system and tried it again?
minhthai17 said:
reboot and it stuck in the Samung Galaxy S4 screen.
Click to expand...
Click to collapse
this forum is for Samsung Galaxy S Plus man.... we can't help you... go in S4 section
minhthai17 said:
I need HELP, guys! I am having a little problem and idk how to fix this. After flashing Infamous ROM, reboot, everything worked fine, but then I reboot the phone and it stuck in the bootloop, so I went to the TWRP and factory reset, reboot, still stuck in bootloop. So i went back and format data and flash it again. Everything works fine, then i try to reboot and it and stuck and the samsung screen AGAIN! So i went back to the Stock ROM do the same thing, first boot is fine, reboot and it stuck in the Samung Galaxy S4 screen. Any solution guys? I even tried fix permission . Still didntwork. HELP, PLEASE!!
Click to expand...
Click to collapse
Format emmc and flash any stock ROM for ur device through Odin.
Reroot again and flash any custom ROM built for your device.
Sent from my GT-S7562 using xda premium
bootlooping after data restore to a new rom
hi, i installed jelly bam on my note i717 and it works great, but when i restore data from my stock laggy jelly bean it bootloops i tried doing fix permissions, wiping delvik cashe and cashe. i tried going back and restoring to old jelly bean and then backing it up again and flashing jelly bam again and after restoring data again with fix permissions it bootloops again. how can i safely restore data on my new rom? please help!
p.s. using twrp with cwm i couldn't even flash rom cuz it errored and aborted it every time.
GameOverMan said:
hi, i installed jelly bam on my note i717 and it works great, but when i restore data from my stock laggy jelly bean it bootloops i tried doing fix permissions, wiping delvik cashe and cashe. i tried going back and restoring to old jelly bean and then backing it up again and flashing jelly bam again and after restoring data again with fix permissions it bootloops again. how can i safely restore data on my new rom? please help!
p.s. using twrp with cwm i couldn't even flash rom cuz it errored and aborted it every time.
Click to expand...
Click to collapse
This is i9001 forum... BTW are you trying to restore system apps data?
Inviato dal mio GT-i9001 con topatalk 2
oh sorry didn't notice that. yes im just trying to restore data.
GameOverMan said:
oh sorry didn't notice that. yes im just trying to restore data.
Click to expand...
Click to collapse
I understand, but system apps data or user apps? You can't restore system apps data
Inviato dal mio GT-i9001 con topatalk 2
broodplank1337 said:
Guide: How to Recover from a bootloopby brooplank1337
This guide will learn you the common ways of fixing a bootloop, how to create a custom CWM Fix-Zip and how to use ADB to recover from a bootloop.
Chapters:
Chapter 1: Finding the cause of the bootloop
Chapter 2: Using a CWM ZIP as solution
Chapter 3: Using ADB as solution
Chapter 1: Finding the cause of the bootloop
Bootloops are mainly caused because system files interfering with each other which causes instability and/or crashes at the boot sequence.
To find the cause of a bootloop you have to think about what you did before getting the bootloop.
Choose one of the following reasons that caused the bootloop for you and try out its solution.
- After flashing a new rom
If you flash a new (base)rom with odin your /data will be kept. This means your old dalvik-cache will be used for the new system files which would result in a bootloop, to fix this problem:
1. Start your phone in CWM Recovery
2. Go to Advanced
3. Choose "Wipe dalvik-cache"
4. Now go to "Mounts & Storage"
5. Choose "Wipe /cache"
6. Reboot your phone
if the problems still exists after doing that and you're sure it's not related to the rom, then you need to do this:
1. Start your phone in CWM Recovery
2. Now go to "Mounts & Storage"
3. Choose "Wipe /data"
4. Choose "Wipe /cache"
5. Reboot your phone
- After restoring a system only backup
This one is actually the same as the above one, since only /system is restored (advanced restore) there is an incorrect dalvik-cache present which will cause the bootloop. perform the same steps as above to solve the problem.
- After installing a Mod / Theme or UOT Kitchen output
When you install a Mod / Theme or UOT Kitchen output and you get a bootloop, you know there is something wrong with the file that you are installing. This is mostly caused by an incorrect BaseROM of the mod/theme, but can also happen if the creator just didn't create it properly.
Wiping dalvik-cache won't be enough to fix this, you will need to open the zip on your computer and look at the files that are installed with the mod/theme. you can do this by looking into the system folder in the zip, there you can find the files that are being installed. for example:
You have installed an Extended Power Menu mod but it causes a bootloop, here is what you do:
1. Open the installation zip with Winrar (Extended Power Menu in this case)
2. Now look inside the "system" folder, in my case I found the framework folder inside the system folder
3. The framework folder contains: android.policy.jar & framework-res.apk, so these are the suspicious files.
4. What you simply do is searching for the original files (from your (base)rom) and drag them into the framework folder (inside winrar)
5. Now it will ask for a compression level, choose "Store" and the archive will be done in seconds.
6. You will need to put the file on your external sdcard using the "Mount USB Storage" option in CWM under "Mounts & Storage"
7. Install the zip just as you did with the mod, you should now be bootloop free, if not reinstall the zip with a mounted /system (Mounts & Storage > Mount /system) (and you can optionally wipe /cache and /dalvik-cache, this will never harm any file/setting.
Q: Ok... but I have no external sdcard.. how to fix it then?
A: Have a look at the "Using ADB as solution" chapter
- After setting wrong permissions
Android is very dependent on the right permissions, if you adjust file permissions incorrectly you could get a bootloop, giving a file to less permissions would break it, but also giving a file to much permissions would break it. most common permissions of system files are:
- 644 (RW-R-R) - (this is best known system permission, it exists in /system/app, /system/framework, /system/etc, /system/lib and allot of seperate files)
- 755 (RWX-RX-RX) - (mainly used for /system/bin)
- 777 (RWX-RWX-RWX) - (used for scripts inside /system/etc/init.d and busybox files)
An easy fix is performing the "Fix permissions" option in CWM under Advanced. be sure to mount the partitions before running the fix. Although this doesn't cover all permissions. have a look at the CWM or ADB chapter to find the solution.
Chapter 2 Using a CWM ZIP as solution
Using the original cwm zip is the easiest way, since the zip is already created for you, you only need to replace the files with the original rom files. You can get those files from the deodex packages for baseroms which are posted on the forums. If you are using an odexed ROM, you can get your files from system.img.ext4 (open the baserom: *.tar.md5 with Winrar and extract system.img.ext4)
Now you can open system.img.ext4 with "DiskInternals Linux Reader". browse to the app/framework directory and extract the needed files from the image file.
Once you got the same files as present in the original CWM zip you can easily drag em into the archive, then choose "store" as compression level. Now finally you need to put it on your sdcard and install it.
If you don't have an external sdcard or you can't reach your internal sdcard (which is very likely when you have a bootloop), you can use ADB to push the zip to your phone, read about how to use ADB in Chapter 3.
Commands for updater-script (located in CWMFIX.zip/META-INF/com/google/android/)
Mount & Install
To mount the system partition:
mount("ext4", "EMMC", "/dev/block/mmcblk0p15", "/system");
To extract the system folder in your zip:
package_extract_dir("system", "/system");
Setting Permissions
To set permissions of an individual file:
set_perm(0, 0, Mod, "File here");
A working example:
set_perm(0, 0, 0644, "/system/build.prop");
To set permissions of a directory:
set_perm(0, 0, Mod, "Dir here without a trailing slash");
Setting Permissions Recursively
To set permissions to all files inside a directory (resursive):
set_perm_recursive(0, 0, 0755, Mod, "Dir here without a trailing slash");
A working example:
set_perm_recursive(0, 0, 0755, 0777, "/system/etc/init.d");
Chapter 3 Using ADB as solution
ADB can be used to access the phone while booting, be aware that some bootloops make it unable to use ADB since they do not go further then the samsung logo.
The only tricky part about using ADB with bootloops is that you have to do it on the right time, this is just after the Galaxy S Plus logo, so just when the bootanimation starts. The easiest way to enter your phone in this part is using a batch script that monitors the state of your device and connects directly when possible.
I use this script for example (requires adb.exe and the 2 dlls)
Code:
@echo off
cd /d %~dp0
echo.
echo Waiting for device...
adb wait-for-device
echo.
adb -d shell stop
adb push mycwmfix.zip /sdcard/mycwmfix.zip
adb reboot recovery
This script will wait for the device to become ready, when it's ready it freeze the device, so the script has more time to push the file (instead of keep rebooting). Then it will push the specified cwmfix zip to your sdcard, and after that it will reboot in recovery so you can install the cwm fix you made.
You can also make an batch script that pushes the files automatically to your phone, here is an example:
Code:
@echo off
cd /d %~dp0
echo.
echo Waiting for device...
adb wait-for-device
echo.
adb -d shell stop
adb -d shell su -c "mount -o remount rw /system"
adb push framework-res.apk /system/framework/framework-res.apk
adb -d shell chmod 644 /system/framework/framework-res.apk
adb push SystemUI.apk /system/app/SystemUI.apk
adb -d shell chmod 644 /system/app/SystemUI.apk
adb reboot
This script will wait for the device to become ready, when it's ready it freeze the device, so the script has more time to push the file (instead of keep rebooting). Then it will push framework-res.apk and SystemUI.apk to the directory it belongs to, after that it changes the permissions of the files to RW-R-R (644) and then it will reboot.
I hope you learned something from this tutorial, when I think I forgot something Ill add it later.
Click to expand...
Click to collapse
Hey,
After trying to make a backup using cwm my phone got caught on a bootloop. I think the backup was not completed and I believe there was some sort of error (something about an image not being copied, I think). There is also a warning on the cwm recovery page that says "no file-context". What can I do?
Thank you
vascotto said:
Hey,
After trying to make a backup using cwm my phone got caught on a bootloop. I think the backup was not completed and I believe there was some sort of error (something about an image not being copied, I think). There is also a warning on the cwm recovery page that says "no file-context". What can I do?
Thank you
Click to expand...
Click to collapse
do you mean you flashed a backup and it is boot looping?
sa1tine said:
do you mean you flashed a backup and it is boot looping?
Click to expand...
Click to collapse
I was creating a backup of my current ROM (which is the default, factory version).
vascotto said:
Hey,
After trying to make a backup using cwm my phone got caught on a bootloop. I think the backup was not completed and I believe there was some sort of error (something about an image not being copied, I think). There is also a warning on the cwm recovery page that says "no file-context". What can I do?
Thank you
Click to expand...
Click to collapse
Probably your device ran out of free space. Try to delete some backups you've made before.
Hi,
I have CyanogenMod 10 installed on my I9001 and it worked perfectly for the past few months until I rebooted the phone today and now it is stuck on the CyanogenMod start screen. I had not installed/modified anything on my phone before rebooting...
I tried to wipe cache, but that did not help. Any idea how to fix this without deleting everything from the phone?
Thanks!!