I've gotten Android installed (and updated) on my HTC Tilt Device. My current hang up is that when I let it boot it hangs with the message
Code:
A N D R O I D [ ] init: cannot find'/system/bin/logwrapper', disabling 'sysinit'
Did I do something wrong/what can I do to resolve this issue?
Regards,
~Jeff
Onward, upward, backward. forward, I tried installing the "Warm Donut" version instead of the "Eclair" and the system hangs with this different message are startup on this one:
Code:
init: Unable to open persistent property directory /data/property errno: 2
I think Android dislikes me (Maybe it knows my other phone runs Maemo LOL)... Suggestions?
~Jeff
So I found a thread (which I can't link to because of the forum rules) that describes my second issue but the alternate data.img file provided does not resolve the issue for me as it says it should... As always waiting patiently and open to suggestions.
~Jeff
Since you mention data.img i'll assume you are using Haret rather then Nand install.
The 'init: Unable to open persistent property directory /data/property errno: 2' means that android cannot find the data folder, usually happens if you miss the installer stage.
Even when running from haret we have to run the installer in order to unpack the 'androidinstall.tgz' and set up the data image.
To access the installer menu you must press the d-pad centre button when booting.
Note that once it is installed you do not need to enter the installer again, unless you are updating.
Anybody else had this issue? I tried it on Shiny Rom and now CM 10.2 nightly. Get in one time with no issues, if I reboot I get stuck at the Google screen. The one way to get the phone usable is to do a completely factory data wipe and start all over.
I'm using TWRP, I've flashed tons of roms and I'm doing it no different than any of them. I do a complete wipe, install CM, GApps, reboot I get in one time. Do a reboot and then get stuck at Google screen.
This happened with both ShinyROM and 10.2 both are 4.3. They both had a valid MD5.
I have flashed PRIMEMD04_Bootloader-signed - One that came from Shiny ROM bootloader-toro-primelc03 - Stock (I believe)
Nothing worked, got the same issue.
GiZiM said:
Anybody else had this issue? I tried it on Shiny Rom and now CM 10.2 nightly. Get in one time with no issues, if I reboot I get stuck at the Google screen. The one way to get the phone usable is to do a completely factory data wipe and start all over.
I'm using TWRP, I've flashed tons of roms and I'm doing it no different than any of them. I do a complete wipe, install CM, GApps, reboot I get in one time. Do a reboot and then get stuck at Google screen.
This happened with both ShinyROM and 10.2 both are 4.3. They both had a valid MD5.
I have flashed PRIMEMD04_Bootloader-signed - One that came from Shiny ROM bootloader-toro-primelc03 - Stock (I believe)
Nothing worked, got the same issue.
Click to expand...
Click to collapse
The only time I get persistent Google screen is when I have a corrupt /userdata partition.
Try running e2fsck on mmcblk0p12 if you have one of those devices that get emmc corruption by changes in sdcard free space.
In case you need more information on this :
1. In TWRP Mount options, unmount Data. The command won't work on mounted partition.
2. In Advanced > Terminal Command, select the /dev/block folder. Then type in
Code:
e2fsck -n mmcblk0p12
("-n" option will cause no changes to your filesystem, it just shows a simulation of the file system correction tool's result.) If the result says the filesystem is "clean", then you have something else to worry about and its not corrupted /userdata.
3. If it starts checking for errors (there's a KILL button while running the command), your filesystem has errors. You can kill it, and then run
Code:
e2fsck -f -C 0 -y mmcblk0p12
(-f is for forced run, -C 0 will give you progress of completion of task, -y will say yes to all prompts (necessary), and mmcblk0p12 is the /userdata partition)
4. Let the command run until you don't see the KILL button (shouldn't be more than a couple of minutes). On running
Code:
e2fsck -n mmcblk0p12
again, it must show you a "clean" filesystem.
5. Just reboot to System. If your /userdata was corrupt, running this will mostly solve your problem.
Damn, I wish I had found such instructions to get over my horrendous time with corrupt partitions over six months from November 2012-April 2013.
Thank you! I will look into this but I would love to fix the cause.
I'm sure this is the issue because I cannot get the phone back into a working state until after doing a full factory wipe.
What would be causing 4.3 roms to corrupt my /userdata? Whatever it is it is happening after the first reboot after I get into the rom.
desktopfusion said:
The only time I get persistent Google screen is when I have a corrupt /userdata partition.
Try running e2fsck on mmcblk0p12 if you have one of those devices that get emmc corruption by changes in sdcard free space.
In case you need more information on this :
1. In TWRP Mount options, unmount Data. The command won't work on mounted partition.
2. In Advanced > Terminal Command, select the /dev/block folder. Then type in
Code:
e2fsck -n mmcblk0p12
("-n" option will cause no changes to your filesystem, it just shows a simulation of the file system correction tool's result.) If the result says the filesystem is "clean", then you have something else to worry about and its not corrupted /userdata.
3. If it starts checking for errors (there's a KILL button while running the command), your filesystem has errors. You can kill it, and then run
Code:
e2fsck -f -C 0 -y mmcblk0p12
(-f is for forced run, -C 0 will give you progress of completion of task, -y will say yes to all prompts (necessary), and mmcblk0p12 is the /userdata partition)
4. Let the command run until you don't see the KILL button. On running
Code:
e2fsck -n mmcblk0p12
again, it must show you a "clean" filesystem.
5. Just reboot to System. If your /userdata was corrupt, running this will mostly solve your problem.
Damn, I wish I had found such instructions to get over my horrendous time with corrupt partitions over six months from November 2012-April 2013.
Click to expand...
Click to collapse
Whatever my phone faces is not limited to 4.3. It has been happening since 4.1. Something to do with the eMMC of the phone itself. Gets corrupt too easily when the decreasing free sdcard space approaches 3 GB. Sometimes a battery pull can also cause it, sometimes a random reboot can cause it. Technically, 4.3 is supposed to solve this issue with TRIM execution in the background, but it hasn't helped me definitively yet.
It has been documented on these forums for this to happen to phones produced in August, September, October 2012.
In my case, I am quite sure that adding and/or deleting files larger than say 500 MB (for example Nandroid backups) causes this problem to happen at any time afterwards without notice (preceded by random reboot straight into stuck Google screen). I guess new ROMs can cause such issues if there is a large amount of app data deleted everytime, but this is just uninformed speculation.
I've setup Tasker profiles to autorun e2fsck through TWRP every morning before I wake up so I don't have these issues while awake. And one more profile to tell me every 8 hours if my sdcard has changed by a lot.
I hope this is all there is to your phone's problem!
Thanks this is very helpful, I will work on this tonight after work and see what I can come up with.
Right now it is showing as CLEAN but i'm running 4.2.2. Is there anything special to go from 4.2.2 to 4.3?
desktopfusion said:
Whatever my phone faces is not limited to 4.3. It has been happening since 4.1. Something to do with the eMMC of the phone itself. Gets corrupt too easily when the decreasing free sdcard space approaches 3 GB. Sometimes a battery pull can also cause it, sometimes a random reboot can cause it. Technically, 4.3 is supposed to solve this issue with TRIM execution in the background, but it hasn't helped me definitively yet.
It has been documented on these forums for this to happen to phones produced in August, September, October 2012.
In my case, I am quite sure that adding and/or deleting files larger than say 500 MB (for example Nandroid backups) causes this problem to happen at any time afterwards without notice (preceded by random reboot straight into stuck Google screen). I guess new ROMs can cause such issues if there is a large amount of app data deleted everytime, but this is just uninformed speculation.
I've setup Tasker profiles to autorun e2fsck through TWRP every morning before I wake up so I don't have these issues while awake. And one more profile to tell me every 8 hours if my sdcard has changed by a lot.
I hope this is all there is to your phone's problem!
Click to expand...
Click to collapse
Nothing special really.
Was the result Clean after a stuck Google logo?
You could pull battery at the stuck logo and go to TWRP and then check if it is clean. If it is indeed clean, then there's something else wrong that is completely different!
I'm going to give it a go tonight when I get home.
1. So pretty much backup everything, do a complete factory wipe of all data.
2. I'll do a adb push of the .zip for the rom and everything.
3. Flash rom and any other packages needed
4. Run that command see if it comes back clean
5. Reboot go into the rom
6. Reboot, if i get stuck at the Google screen run that script if it's not clean just keep running it?
desktopfusion said:
Nothing special really.
Was the result Clean after a stuck Google logo?
You could pull battery at the stuck logo and go to TWRP and then check if it is clean. If it is indeed clean, then there's something else wrong that is completely different!
Click to expand...
Click to collapse
It's running, it says "clone multiply-claimed blocks? <yes>"
How long does this normally run?
Edit: Running now for 4hrs
GiZiM said:
It's running, it says "clone multiply-claimed blocks? <yes>"
How long does this normally run?
Edit: Running now for 4hrs
Click to expand...
Click to collapse
Hey, sorry.
4 hours?! I've not had it run for more than 2 minutes, ever!
Did you run the -n option and let it say whether there is a corrupt partition? If yes then there may be a problem with the eMMC since its taking so long.
As a last resort, you could go completely stock via fastboot. [Formats /userdata partition, erases SDcard as well - take backup]
Lifesaving string of code.
desktopfusion said:
The only time I get persistent Google screen is when I have a corrupt /userdata partition.
Try running e2fsck on mmcblk0p12 if you have one of those devices that get emmc corruption by changes in sdcard free space.
In case you need more information on this :
1. In TWRP Mount options, unmount Data. The command won't work on mounted partition.
2. In Advanced > Terminal Command, select the /dev/block folder. Then type in
Code:
e2fsck -n mmcblk0p12
("-n" option will cause no changes to your filesystem, it just shows a simulation of the file system correction tool's result.) If the result says the filesystem is "clean", then you have something else to worry about and its not corrupted /userdata.
3. If it starts checking for errors (there's a KILL button while running the command), your filesystem has errors. You can kill it, and then run
Code:
e2fsck -f -C 0 -y mmcblk0p12
(-f is for forced run, -C 0 will give you progress of completion of task, -y will say yes to all prompts (necessary), and mmcblk0p12 is the /userdata partition)
4. Let the command run until you don't see the KILL button. On running
Code:
e2fsck -n mmcblk0p12
again, it must show you a "clean" filesystem.
5. Just reboot to System. If your /userdata was corrupt, running this will mostly solve your problem.
Damn, I wish I had found such instructions to get over my horrendous time with corrupt partitions over six months from November 2012-April 2013.
Click to expand...
Click to collapse
Holy mother of god.
This was a lifesaving string of code. I was convinced that I was going to have to buy a brand new phone. Kudos to you DesktopFusion. Thanks a lot!
Explanation as to why a corrupt userdata partition causes this issue
So, in case anybody was wondering, I would like to explain how I see the issue at hand (corrupt userdata partition).
Upon first boot, the ROM is getting set up and doesn't have any orders to check /userdata because well, there is none on the device. So why waste precious time being redundant (smart coders, right?). So the userdata partition is not checked.
However, now that the second boot is being performed, there is, by default in the system's repertoir, data put in by the user, so the bootloader is told to check the partition containing user data. Since the partition is corrupt, and the free space is technically "modified", it errors up and gets stuck.
I could be wrong, I'm not a developer of any sorts. Just a dude giving my point of view.
I got this trouble too last night. I'm flashing elia's 4.3 custom rom with under 5 gb free space. Got it boot twice,then got stuck at google's logo after trying flashing slim bean gapps. Flashing whole 4.3 stock firmware finally solve this. Maybe there is correlation between upgrading from 4.2.2 without upgrading the bootloader with this problem.
Sent from my Galaxy Nexus using Tapatalk 4
It ended up running for 6hrs and never finished, I did do the -n and it said it was CLEAN but still could not boot into the 4.3 ROM.
So ran it any way for 6hrs and no change as of right now I am unable to boot into ANY 4.3 ROM.
If eMMC was screwed up why can 4.2.2 roms work fine but not 4.3 roms? what's the difference?
desktopfusion said:
Hey, sorry.
4 hours?! I've not had it run for more than 2 minutes, ever!
Did you run the -n option and let it say whether there is a corrupt partition? If yes then there may be a problem with the eMMC since its taking so long.
As a last resort, you could go completely stock via fastboot. [Formats /userdata partition, erases SDcard as well - take backup]
Click to expand...
Click to collapse
BUMP still no 4.3 love
GiZiM said:
BUMP still no 4.3 love
Click to expand...
Click to collapse
Still not resolved?
Have you tried flashing completely stock factory image via fastboot?
Consider checking your flash memory with this app, "eMMC Brickbug Check"
Could you also put in here what Type and Date the eMMC chip was made as per the application?
desktopfusion said:
Still not resolved?
Have you tried flashing completely stock factory image via fastboot?
Consider checking your flash memory with this app, "eMMC Brickbug Check"
Could you also put in here what Type and Date the eMMC chip was made as per the application?
Click to expand...
Click to collapse
Sane chip
Ran memory check no issues
Type: SEM32G
Date: 10/2011
FW: 0x90
GiZiM said:
Sane chip
Ran memory check no issues
Type: SEM32G
Date: 10/2011
FW: 0x90
Click to expand...
Click to collapse
Rats. Falling short of ideas.
I might have missed your answer on whether you've tried flashing a stock Nexus image through fastboot, though.
I had basically the same problem coming from 4.2.2 to 4.3. I'm not sure if it was the bootloader upgrade, 4.3 CM alpha from early August, or the small amount of free space under 5GB, but it was definitely userdata corruption like desktopfusion is saying. I was finally able to fix the problem after a "fastboot -w" userdata and cache*format. This has to be done in fastboot, so hook your computer to your phone in twrp, run "adb pull /sdcard "drive:\pc_backup_location"" to backup your sdcard data (grab what you can if errors come up from badly named or corrupted files). Make sure you got md5verified recovery & bootloader images renamed to recovery.img & bootloader.img, and a rom.zip in your adb folder on the computer. Reboot to bootloader, still connected. **And make sure you're not forgetting any sdcard backup, or twrp backup if still functional, before this erase and format. Run "fastboot -w". Then "fastboot flash recovery recovery.img" and you should be good to reboot, adb transfer ROM.zip and other files to fresh sdcard, etc. There's info on this around to double check, and I just posted a little more detailed walkthrough on this a couple days ago. This definitely saved me though with an identical problem, so if the emmc error check doesn't pan out, I would give this a try. May the fastboot gods be with you.
@desktopfusion -Thanks for your post on the previous page! Copied and saved to mygiant android useful infos text file ... which will one day end up corrupting my userdata partition with my luck.
7175 said:
I had basically the same problem coming from 4.2.2 to 4.3. I'm not sure if it was the bootloader upgrade, 4.3 CM alpha from early August, or the small amount of free space under 5GB, but it was definitely userdata corruption like desktopfusion is saying. I was finally able to fix the problem after a "fastboot -w" userdata and cache*format. This has to be done in fastboot, so hook your computer to your phone in twrp, run "adb pull /sdcard "drive:\pc_backup_location"" to backup your sdcard data (grab what you can if errors come up from badly named or corrupted files). Make sure you got md5verified recovery & bootloader images renamed to recovery.img & bootloader.img, and a rom.zip in your adb folder on the computer. Reboot to bootloader, still connected. **And make sure you're not forgetting any sdcard backup, or twrp backup if still functional, before this erase and format. Run "fastboot -w". Then "fastboot flash recovery recovery.img" and you should be good to reboot, adb transfer ROM.zip and other files to fresh sdcard, etc. There's info on this around to double check, and I just posted a little more detailed walkthrough on this a couple days ago. This definitely saved me though with an identical problem, so if the emmc error check doesn't pan out, I would give this a try. May the fastboot gods be with you.http://forum.xda-developers.com/images/smilies/highfive.gif
@desktopfusion -Thanks for your post on the previous page! Copied and saved to mygiant android useful infos text file ... which will one day end up corrupting my userdata partition with my luck.
Click to expand...
Click to collapse
7175 nailed it. I tried flashing all sorts of different ROMs/gapps/Super SU combinations and tried different wipes/formats to no avail. I wish I would have found the instructions to "fastboot cleanse" the phone 4 or 5 hours ago. I have been reading through forums for several hours today and every suggested fix failed. 7175's fix was spot on for me. My phone was locking up at the Google screen with the lock every time I rebooted after installing a 4.3 ROM.
:highfive:
7175 said:
I had basically the same problem coming from 4.2.2 to 4.3. I'm not sure if it was the bootloader upgrade, 4.3 CM alpha from early August, or the small amount of free space under 5GB, but it was definitely userdata corruption like desktopfusion is saying. I was finally able to fix the problem after a "fastboot -w" userdata and cache*format. This has to be done in fastboot, so hook your computer to your phone in twrp, run "adb pull /sdcard "drive:\pc_backup_location"" to backup your sdcard data (grab what you can if errors come up from badly named or corrupted files). Make sure you got md5verified recovery & bootloader images renamed to recovery.img & bootloader.img, and a rom.zip in your adb folder on the computer. Reboot to bootloader, still connected. **And make sure you're not forgetting any sdcard backup, or twrp backup if still functional, before this erase and format. Run "fastboot -w". Then "fastboot flash recovery recovery.img" and you should be good to reboot, adb transfer ROM.zip and other files to fresh sdcard, etc. There's info on this around to double check, and I just posted a little more detailed walkthrough on this a couple days ago. This definitely saved me though with an identical problem, so if the emmc error check doesn't pan out, I would give this a try. May the fastboot gods be with you.
@desktopfusion -Thanks for your post on the previous page! Copied and saved to mygiant android useful infos text file ... which will one day end up corrupting my userdata partition with my luck.
Click to expand...
Click to collapse
Thanks for this...
First thought it was an issue with SlimRom, tried different kernels, problem wouldn't go away, then realised it was happening with every rom I flashed...
TWRP Recovery for the LG F3Q (codenames: fx3q, d520)
Background story (who ever wants to know):
As I'm currently testing around with flashing etc I hated it to re-flash the stock ROM again and again. It is sooo time consuming..
In that kind of ROM compiling learning process I also was able to build a working TWRP recovery for the LG F3Q so that was such a good feeling But as said the caveat was that because of the locked bootloader we can reach TWRP (or CWM) only when executing "adb reboot recovery" from the running system. That was not really satisfying me though..
Some day I've done a factory reset and well I saw that this is starting my TWRP recovery when executing it! Well it isn't such a surprise as TWRP sits on the recovery partition and will be triggered by the factory reset script but... well do you think what I think? When it would be possible to start TWRP fully and not that factory reset part of TWRP than we would have a workaround to reach the recovery mode without booting the system (which is in fact not possible anymore when flashing of system.img/boot.img fails)
That said.. I was in touch with the TWRP developers bigbiff and Dees_Troy and many thanks for the hint they gave me! I have build a new TWRP version based on that information I got and well the idea of that is:
Vol Down + Power -> LG Factory Reset screen appears
Confirming with power 2 times as asked
Voila: No factory reset anymore but TWRP is here!
Well that will have a caveat - READ CAREFULLY:
As you may think of the factory reset in the boot-up process and within the ROM will not working anymore until you flash another recovery!
But if you know that it is not such a caveat because you can choose the wipe options within TWRP to do a "manual" factory reset.
v2.8.1.0 build 5
USE THAT ON YOUR OWN RISK! BACKUP BEFORE!
Working (quickly tested):
Install (to flash a custom Kernel)
Mounting partitions
Reboot Recovery | System
adb shell (also see known issues)
Backup (compressed | uncompressed | encrypted (!) | unencrypted)
Restore (unencrypted | encypted (!) | compressed | uncompressed)
Internal storage /data/media
MTP which mounts the external storage!
File Manager
Terminal Command
Power charging while in TWRP
Displaying CPU temp
Totally untested:
WIPE (should work)
decrypting /data (but should work as it do so for encrypted backups already)
Every option which is not stated as "Known issue" or "Working"
Known issues (with workarounds):
ADB works only when screen "timed out" (manual locking does not help it must time out) therefore ADB can take up to 1 minute after boot until it becomes available (because screen need to be timed out first)
Workaround: set the time limit in the screen menu to e.g. 10 sec (that is the default value for now)
Timezone is not set correctly (that seems to be a well known bug in several devices using TWRP.... )
Workaround: set a timezone which displays the most accurate timezone
Known issues (without workarounds):
When you use the "Power Off" option in the "Reboot" menu the device will reboot instead of powering off
Wiping /data not possible after "factory reset buttons" used. You need to choose "wipe" and then "format data" manually (or use mke2fs on CLI).
Vibration is not working (I will not fix that atm because I like it that way)
Hardware keys at bottom doesn't work
If you use the factory reset button /data partition will be inaccessible and need to be re-flashed (means you will LOOSE your app and system configs when you use factore reset)
Download:
Attached you will find the TWRP v2.8.1.0 version ready to use even with locked bootloader:
BACKUP EVERYTHING BEFORE USING THIS. USE AT YOUR OWN RISK!
DD Image file:twrp_v2.8.1.0_build5_fx3q_FR-OFF.img.zip = FactoryReset is disabled / TWRP will be loaded instead (also see known issues)
Read the Installation & Usage instructions in this thread on how to install that file.
Installation & Usage instructions
Pre-Requirements
Read the FAQ
YOU NEED ROOT! (check FAQ)
YOU SHOULD do a NANDroid BACKUP! (check FAQ)
You need to boot up, enable USB debugging and then connect USB cable.(check FAQ get ROOT - the link contains a guide on that)
You better doing a NANDroid backup right? (I mentioned that before - but DO it! NOW!)
For the best usage experience install the sediKERNEL or use joel's debloated stock ROM which includes it already
Bulletproof Method 1: "the average user"
Use this guide if you simply want to install & use TWRP like it should be. If you're unsure use this guide!
Install:
Download the TWRP recovery file and unzip it
copy it to your device (e.g. adb push or simply copy & paste by your file browser)
Download the loki_tool (https://github.com/djrbliss/loki/raw/master/bin/loki_tool)
copy loki_tool to your device (e.g. adb push or simply copy & paste by your file browser)
execute:
adb shell
su (you may need to grant permission)
mount -oremount,rw /system
cp /PATH-WHERE-YOU-COPIED/loki_tool /system/bin/ && chmod 755 /system/bin/loki_tool
loki_tool flash recovery /PATH-WHERE-YOU-COPIED/twrp_X.X.X.X_recovery_FRoff/off.img
reboot recovery --> you should see the TWRP screen
Usage (sediKERNEL v2.0 or higher installed):
Power on the device
when you see the LG logo the first time do NOTHING!!
When the screen goes black THEN press Volume UP + Volume DOWN. Both the same time and hold them pressed.
Release the buttons when the screen goes black again
Wait. You will see the LG logo a third time and then you will see the recovery screen!
If you see a kernel crash then you have pressed the magic keys too early! Read and follow the above steps carefully and you should be fine.
Usage (without sediKERNEL v2.0 or higher):
boot into your ROM
execute "adb reboot recovery" from your PC or open a Terminal on your device and execute "su" then "reboot recovery"
Bulletproof Method 2: "developers only"
This is the developers preferred way of installing TWRP. It ensures that even when your ROM or Kernel gets damaged that you still be able to boot into recovery. This is to the developers or heavy testers who are knowing what they do ONLY!
But even when you think this is for you: Read the important hint at the end before deciding if you want to choose this method.
Install:
flash recovery image to your RECOVERY partition:
adb shell su -c dd if=/storage/external_SD/twrp_vXXXXX_fx3q_FR-OFF.img of=/dev/block/platform/msm_sdcc.1/by-name/recovery
adb reboot recovery
A user reports the the by-name does not worked for him but this one:
adb shell su -c dd if=/storage/external_SD/twrp_vXXXXX_fx3q_FR-OFF.img of=/dev/block/mmcblk0p17
-> If you can see TWRP now everything is fine - Otherwise DO NOT continue!
BACKUP YOUR WHOLE DEVICE NOW! I highly recommend to backup everything except /data from within TWRP because it is easy and works (from TWRP v2.8build5 or higher)
BACKUP /data is recommended to be done NOW and this way:
adb shell su -c dd if=/dev/block/platform/msm_sdcc.1/by-name/userdata of=/external_sd/userdata_backup_stock.img
--> This can take a long while but it contains also the backup for the internal storage not only /data and that internal part is not backupable over TWRP
while in TWRP flash the same recovery image to your BOOT partition now (do not think that this is dangerous. The boot partition is not a magic thing or so it is only the partition which will be started from the bootloader thats all about it. So yes you can install a recovery image on the boot partition without any harm.):
adb shell su -c dd if=/external_sd/twrp_vXXXXX_fx3q_FR-OFF.img.loki of=/dev/block/platform/msm_sdcc.1/by-name/boot
watch carefully that the process ended without errors and that the size is exactly the same as it should be (about 1,3GB)
adb shell sync
power off the device by taken out the battery (do not use reboot or something we want to be sure that the next step is absolutely really the normal boot up)
Boot up normally --> you should see TWRP !! You're NOT in recovery mode you're booting the normal boot mode!
Go on with flashing the sediKERNEL into your RECOVERY partition:
Download the sediKERNEL from here (the stock one could work, too but never tested ...)
push it to your device with adb or MTP (since v2.8build5)
Flash the sediKERNEL to your RECOVERY partition:
adb shell su -c dd if=/external_sd/sediKERNEL_JB-vXXXX.img of=/dev/block/platform/msm_sdcc.1/by-name/recovery
Reboot into Recovery by using TWRP GUI or by executing "adb reboot recovery"
Your ROM will boot.
Usage:
From now on every time your device booting up you will see the TWRP screen and need to choose Reboot-->Recovery to boot your ROM.
This is the absolute best way to use TWRP if you want to be sure that you will reach the recovery even when your ROM gets damaged and is confirmed to work very well (as always guarantees are not available )
Important hint:
Be sure that you keep in mind that from now on your recovery and boot partition are not the same anymore (you can always revert back to the normal behaviour, of course!). So if you want to flash a kernel image you need to ensure that it goes to the RECOVERY partition instead of the normal BOOT partition (because on boot partition is TWRP now).
If I got my ROM working I will definitively add an option to the installer where this will be ensured and I asked @joel.maxuel for his stock ROM to add that, too. As for now we are the only ones who are developing for the F3Q so you should be save enough atm but you will need to keep that always in mind when you want to replace the kernel and/or ROM.
What would happen if you forget about that? Well nothing really bad because when you install a kernel or ROM the boot image partition simply gets overwritten and that means only that your TWRP is not there anymore but the system will boot (if the new kernel/ROM is not buggy or damaged). You then could install TWRP by method 1 or using method 2 by using the boot image/Kernel you want to install.
Damage your device - booting (NOT RECOMMENDED will loose /data ):
You probably NEVER want to use this method. It is here for reference only.
I highly recommend to choose one of the above bulletproof versions instead of this one because it WILL damage /data and you need to restore that whole partition afterwards.
All my tests has shown that this comes not from TWRP (in one of my tests I disabled everything in the sourcecode of TWRP which wipes /data) but coming from LG itself. The factory reset button/option do something with the /data partition sturucture and afterwards you cannot use that anymore. I also tried to restore the partition info by trying all backup superblocks but that doesn't worked. No backup superblock is accessible.
Restoring them by mke2fs and e2fsck does not work unfortunately.. (mke2fs -S /dev/block/platform/msm_sdcc.1/by-name/userdata && e2fsck -yf /dev/block/platform/msm_sdcc.1/by-name/userdata)
So if you have loosed your /data and/or internal storage you need to have a DD imaged backup near.
Install:
same as for "Bulletproof Method 1" above
Usage:
When you choosen FR-OFF then TWRP will be able to start without booting up the whole system (also see known issues):
Power Off the device (remove battery)
Vol Down + Power --> Then put the battery back --> LG Factory Reset screen appears
Confirming with power button 2 times as asked - if you downloaded and flashed the FRoff version of TWRP it will NOT open the normal reset procedure but /data and the internal storage are not accessible afterwards (read above about the details). That means your app configs and systems configs get lost that way. You have been warned!
Voila: No (full) factory reset anymore but TWRP is here when you have damaged your ROM or for some dev approach
If you want the factory reset back simply choose the file twrp_2.7.1.0_recovery_FRon.img.lok and follow the above instructions. Afterwards you will have TWRP but it will be reachable only when you execute "adb reboot recovery" from the running system.
XDA:DevDB Information
sediTWRP for LG Optimus F3Q, Tool/Utility for the General Discussion
Contributors
xdajog
Source Code: https://github.com/xdajog/bootable_recovery_twrp_fx3q
Version Information
Status: Stable
Current Stable Version: v2.8.1.0 build 5
Stable Release Date: 2014-11-18
Created 2015-05-19
Last Updated 2015-07-20
FAQ
Frequently Asked Questions (FAQ)
What is that "adb" thing?
adb stands for: Android Debug Bridge and can help a lot when it comes to work with your device. It is not for developers only but they use it a lot of course.
But a normal user can use this to exchange files without the need of mounting, backing up the device, reboot the device and use it as a very comfortable way of having a terminal emulator.
Normally adb itself is not available as a standalone application - it comes with the Android SDK which is very big and heavy if you want to use adb and/or fastboot (another great tool) only.
But we live in a great world with many people wanting to make things easy so here you go when you want/need only adb and fastboot:
download & install adb at lifehacker
(Direct link for Windows users: Go to easy ADB install thread)
How to get root for the F3Q?
Here is the tool and guide: Saferoot
[*]What is a "nandroid" backup?
nandroid means essentially: "a full image of all your partitions" so it is a full snapshot of your ROM including all your apps and contents.
The name NANDroid is a portmanteau of "NAND" (as in Flash memory - NAND flash) and "Android." (Source)
[*]How to create a "nandroid" backup?
(See above for the meaning of "nandroid backup")
You have several options on how to do that.
The normal and absolutely recommended way is to do that "offline" (from within recovery mode) but you can also do it "online" (while Android is running).
.
Offline nandroid backup by using TWRP recovery: Guide
If you have no custom recovery installed read on.
.
Online nandroid backup:
by using an app:
There is 1 (known to me) "online" nandroid backup tool available which will backup from within your running Android: PlayStore.
I tested it and still using it since a while and I really like it but I would not fully resist on it.
I had no problems backing up but sometimes an app is lost when restoring. This may have been fixed but well it is like imaging a running Windows or Linux system:
Do not do it online if you can - it may/will work but there could be problems/inconsistencies later!!
If you never made a nandroid before doing it online will not harm anything and should be your first start. So install the Online Nandroid backup tool and begin.
Check out this guide for some hints: Guide
(If you like the Android app do not hesitate to buy the unlock key to support the developer!)
by using commandline tools:
First of all you need "adb" installed (check out the FAQ answer number 1 above).
Then you need someone who is telling you the device partition table and you need a big sized SD card to hold the images.
The reason is that you will use a special command named "dd" which images the whole partition (not the content only!).
dd is a VERY dangerous tool because if you use it wrong your device may get bricked so it is essential that you are using the
correct command and check that twice!
Check out the next FAQ on how to do this for the F3Q.
[*]How to create a "nandroid" backup for the F3Q - WITHOUT having a custom recovery?
The whole process will take a big amount of time but it is worth to follow each step including the md5sum checks at the end.
Please read the previous FAQ first because there you will find more information about background and other options you may have.
Ensure you have a SD card inserted which is big enough and having enough free space available (4GB at least! I recommend at least 8 GB but this depends on the size of your current data partition. A completely stock ROM with nothing installed and unused will need 3 GB space).
.
Install "adb" on your pc (check out the FAQ #1 above).
root your device (check out FAQ #2 above)
connect with adb to your (running) F3Q:
adb shell
(you should see a prompt)
su
(you need to grant permission if you haven't yet)
Then backup your current ROM and data:
dd if=/dev/block/platform/msm_sdcc.1/by-name/system of=/storage/external_SD/system.2015-07-20.img
dd if=/dev/block/platform/msm_sdcc.1/by-name/boot of=/storage/external_SD/boot.2015-07-20.img
dd if=/dev/block/platform/msm_sdcc.1/by-name/userdata of=/storage/external_SD/userdata.2015-07-20.img
dd if=/dev/block/platform/msm_sdcc.1/by-name/recovery of=/storage/external_SD/recovery.2015-07-20.img
# If you never backed up your EFS you really should do that once:
dd if=/dev/block/platform/msm_sdcc.1/by-name/modemst1 of=/storage/external_SD/modemst1.img
dd if=/dev/block/platform/msm_sdcc.1/by-name/modemst2 of=/storage/external_SD/modemst2.img
Click to expand...
Click to collapse
Just to be sure you can do an online backup now, too ( Guide ) Online Nandroid backup App
.
copy the backup(s) to your device (connect USB cable - open your external storage and drag&drop) <--- DO NOT SKIP THIS STEP!!!! It is absolutely essential!
Check your copy on your device:
md5sum /storage/external_SD/system.2015-07-20.img
md5sum /storage/external_SD/boot.2015-07-20.img
md5sum /storage/external_SD/userdata.2015-07-20.img
md5sum /storage/external_SD/recovery.2015-07-20.img
md5sum /storage/external_SD/modemst1.img
md5sum /storage/external_SD/modemst2.img
Click to expand...
Click to collapse
Download a md5sum checker like this one Windows MD5 and load each file you copied to it (on Linux the "md5sum" command can be used of course).
compare the md5sums from the above output and ensure that they are all matching.
[*]Why is factory reset not working when installing TWRP? (or: AAAAaaaah my /data is inaccessible after doing a factory reset!!!!)
All my tests has shown that this comes not from TWRP (in one of my tests I disabled everything in the sourcecode of TWRP which wipes /data) but coming from LG itself. The factory reset button/option do something with the /data partition sturucture and afterwards you cannot use that anymore. I also tried to restore the partition info by trying all backup superblocks but that doesn't worked. No backup superblock is accessible.
Restoring them by mke2fs and e2fsck does not work unfortunately.. (mke2fs -S /dev/block/platform/msm_sdcc.1/by-name/userdata && e2fsck -yf /dev/block/platform/msm_sdcc.1/by-name/userdata)
So if you have loosed your /data and/or internal storage you need to have a DD imaged backup near. Sorry but you have been warned (known issues) before.
.
if you want the factory reset back simply choose the file twrp_2.7.1.0_recovery_FRon.img.lok and follow the above instructions. Afterwards you will have TWRP but it will be reachable only when you execute "adb reboot recovery" from the running system. v2.7. is not recommended to use but atm the only option if you really want that. Instead I would better try the wipe options from within TWRP and re-installing your ROM of choice or simply using the official LG flashing tool to get your F3Q fully reset.
.
History / Changelog
Previous development (v2.7.1.0)
I HIGHLY RECOMMEND USING v2.8 instead of this version!
You have been warned.. If you still want that buggy version go on here:
USE THAT ON YOUR OWN RISK! I STRONGLY RECOMMEND TO BACKUP EVERYTHING BEFORE PROCEEDING.
Working:
Install (to flash a custom Kernel)
Mounting partitions (see known issues for the internal one)
Reboot Recovery | System
adb shell
File Manager
Terminal Command
Totally untested:
WIPE (may work)
Known issues:
If the device becomes locked and then unlocked by the user adb will restart on the device (or crash and start again. haven't had looked into that yet)
When you use the "Power Off" option in the "Reboot" menu the device will reboot instead of powering off
RESTORE (will NOT work!)
BACKUP (will NOT work!)
You cannot mount the external sd via USB or MTP
Vibration is not working (I will not fix that atm because I like it that way)
Timezone is not set correctly (that seems to be a well known bug in several devices using TWRP....
Internal storage is missing (/data/media)
Hardware keys at bottom doesn't work
If you use the factory reset button /data partition will be inaccessible and need to be re-flashed (means you will LOOSE your app and system configs when you use factore reset)
Download:
Attached you will find the loki'ed TWRP version (v2.7.1.0):
AGAIN: THIS IS A PROOF-OF-CONCEPT only. It definitively WILL have bugs and problems! I want to proof that it will be possible to have TWRP on this device and also have a way to boot up into TWRP without booting the whole system.
twrp_2.7.1.0_recovery_FRoff.img.lok = FactoryReset is disabled / TWRP will be loaded instead
twrp_2.7.1.0_recovery_FRon.img.lok = FactoryReset is enabled / TWRP can be reached with "adb reboot recovery" only
Read the Installation & Usage instructions in the OP on how to install that file.
Awesome work! Saves having to risk modifying the bootloader (for now). :laugh: :highfive: Thanks!
xdajog said:
TWRP Recovery for the LG F3Q / D520
...
Click to expand...
Click to collapse
I'm unable to get logs from TWRP, it does crash reliably when messing about in settings and such.
Timezone fix is needed. (Devices time is set to the correct local time, but TWRPs timezones arent correct.)
Device does not show internal storage.
Wipe menu does not differentiate from internal storage and /data
there's no /mnt, /storage or /sdcard present while in TWRP.
Uhm, I'm sure there's some more I've missed, but that's all I've got for now.
eriklion said:
I'm unable to get logs from TWRP, it does crash reliably when messing about in settings and such.
Click to expand...
Click to collapse
Uhm what do you mean? adb shell and then open /tmp/recovery.log? Clicking on the small mini icon at middle bottom of the screen? Both working for me. Have you tested the above attached version or the one I gave you at dropbox? The above is a more current one!
Timezone fix is needed. (Devices time is set to the correct local time, but TWRPs timezones arent correct.)
Click to expand...
Click to collapse
hm I will look into that
Device does not show internal storage.
Click to expand...
Click to collapse
yeah forgot to mention that. Is that shown in CWM btw?
Wipe menu does not differentiate from internal storage and /data
Click to expand...
Click to collapse
Could you explain what does that means?
there's no /mnt, /storage or /sdcard present while in TWRP.
Click to expand...
Click to collapse
/mnt and /storage are not needed or am I wrong? /sdcard would point to the internal storage I think but I decided to use /external_sd instead which is accessible in the latest version.
Finally got around to test. Looks great, I love having TWRP over CWM!
Unfortunately the backup function is not working. TWRP errors out and reloads itself. I have a pastebin, sorry it's so long but I wanted to try a couple different backup options before I gave up and produced a log file:
http://pastebin.com/QUfNw6Rk
The portions of interest are:
Code:
Backing up Cache...
I:Creating backup...
I:Creating tar file '/external_sd/TWRP/BACKUPS/1db9cba/1970-01-24--22-43-59 JZO54K//cache.ext4.win'
I:addFile '/cache/recovery' including root: 0
Failed to get selinux context: Operation not supported on transport endpoint
I:addFile '/cache/recovery/log' including root: 0
Failed to get selinux context: Operation not supported on transport endpoint
...
Code:
Backing up Data...
I:Creating backup...
I:Creating tar file '/external_sd/TWRP/BACKUPS/1db9cba/1970-01-24--22-43-59 JZO54K//data.ext4.win'
I:addFile '/data/dontpanic' including root: 0
Failed to get selinux context: Operation not supported on transport endpoint
I:addFile '/data/dontpanic/last_kmsg0' including root: 0
Failed to get selinux context: Operation not supported on transport endpoint
I:addFile '/data/dontpanic/next_count' including root: 0
Failed to get selinux context: Operation not supported on transport endpoint
I:addFile '/data/dontpanic/last_kmsg1' including root: 0
Failed to get selinux context: Operation not supported on transport endpoint
I:addFile '/data/dontpanic/last_kmsg2' including root: 0
Failed to get selinux context: Operation not supported on transport endpoint
I:addFile '/data/dontpanic/last_kmsg3' including root: 0
Failed to get selinux context: Operation not supported on transport endpoint
I:addFile '/data/dontpanic/last_kmsg4' including root: 0
Failed to get selinux context: Operation not supported on transport endpoint
I:addFile '/data/dontpanic/last_kmsg5' including root: 0
Failed to get selinux context: Operation not supported on transport endpoint
I:addFile '/data/dontpanic/last_kmsg6' including root: 0
Failed to get selinux context: Operation not supported on transport endpoint
I:addFile '/data/dontpanic/last_kmsg7' including root: 0
Failed to get selinux context: Operation not supported on transport endpoint
__bionic_open_tzdata: couldn't find any tzdata when looking for localtime!
__bionic_open_tzdata: couldn't find any tzdata when looking for GMT!
__bionic_open_tzdata: couldn't find any tzdata when looking for posixrules!
Starting TWRP 2.7.1.0 on Sun Jan 25 03:44:01 1970
I:Single storage only.
I:No internal storage defined.
I:No storage defined, defaulting to /sdcard.
I:Lun file '/sys/devices/platform/usb_mass_storage/lun0/file' does not exist, USB storage mode disabled
I:Found brightness file at '/sys/class/leds/lcd-backlight/brightness'
I:TWFunc::Set_Brightness: Setting brightness control to 255
Starting the UI...Pixel format: 480x800 @ 32bpp
Pixel format: RGBX_8888
Not using qualcomm overlay, 'msmfb43_80201'
framebuffer: fd 4 (480 x 800)
=> Linking mtab
=> Processing recovery.fstab
I:Processing '/boot'
I:Processing '/cache'
I:Processing '/data'
I:Processing '/misc'
I:Processing '/recovery'
I:Processing '/external_sd'
I:Processing '/system'
I:Creating Android Secure: /external_sd/.android_secure
I:Backup folder set to '/external_sd/TWRP/BACKUPS/1db9cba'
I:Settings storage is '/external_sd'
Updating partition details...
I:Unmounting main partitions...
E:Unable to unmount '/data'
I have a stock based ROM to test, and I want to make sure I can enter recovery through the bootloader should things go sour. If TWRP can backup and restore, that allows me to go back to my true stock after the test. Any ideas?
joel.maxuel said:
Finally got around to test. Looks great, I love having TWRP over CWM!
Unfortunately the backup function is not working. TWRP errors out and reloads itself. [.....] Any ideas?
Click to expand...
Click to collapse
Yes.
There are several things coming in place when it comes to backing up out of TWRP atm...
You hopefully have read the big fat red warning ? What I mean is the part regarding /data gets lost when you do a factory-reset
That said if you have entered TWRP by pressing the physical keys your /data partition will be wiped (really bad thing but that it is made for and I haven't had the time to look into that further)
The result is a cleaned /data which is not mountable until you format it with mke2fs.
(e.g.: "adb shell mke2fs -T ext4 /dev/block/mmcblk0p15")
If you do not do that what MAY happens is that TWRP failing because of missing /data (and if not then you should ensure that /data was really backed up)
But as your log told me it seems to be not the problem here 'cause the /data partition is detected by TWRP. so it could be 2)
Mounting points.
As stated the mount points are not fully working in TWRP atm. That means when it comes to /sdcard which is the internal device storage it will fail, too because it cannot be found. The reason for this is that LG mounts /sdcard by the sdcard service but that is somehow tricky thats why it is not working atm.
And on top: the internal storage normally needs to be mounted to "/data/media" especially when we want to use MultiROM later.
So +1 for /sdcard or/and internal storage related
background info: http://teamw.in/DataMedia
The last one I could imagine is "something else" which could be catched by "/proc/last_kmsg"
The important thing is that this file gets written only after a crash and when the battery was not removed. So if the device reboots to TWRP again try to adb shell to the device and then paste the last_kmsg again. Maybe we can find something here.
When I will continue on TWRP I think of upgrading to v2.8 because they enable MTP here which could be good for copying data between device and pc..
BTW:
I have no idea what CWM port which is also be available would do in case of starting a backup especially what will REALLY gets backed up!!!!
IMHO the best way on doing a nandroid backup atm is "adb shell dd ...." Takes a long time but then you can be sure. I can give you all the mountpoints if you need them.
As I currently have not such much success with porting the ROM I will now come back here to TWRP and will finish it to have a hopefully fully working recovery. I cannot say the timeline for this but it will definitively be the next what I want to do because when this is done I can better match the rest for the ROM.
xdajog said:
<SNIP>
IMHO the best way on doing a nandroid backup atm is "adb shell dd ...." Takes a long time but then you can be sure. I can give you all the mountpoints if you need them.
As I currently have not such much success with porting the ROM I will now come back here to TWRP and will finish it to have a hopefully fully working recovery. I cannot say the timeline for this but it will definitively be the next what I want to do because when this is done I can better match the rest for the ROM.
Click to expand...
Click to collapse
This should work (I've done it before for eriklion):
Code:
adb shell
dd if=/dev/block/platform/msm_sdcc.1/by-name/system of=/storage/external_SD/system.2014-11-12.img
dd if=/dev/block/platform/msm_sdcc.1/by-name/boot of=/storage/external_SD/boot.2014-11-12.img
dd if=/dev/block/platform/msm_sdcc.1/by-name/cache of=/storage/external_SD/cache.2014-11-12.img
dd if=/dev/block/platform/msm_sdcc.1/by-name/userdata of=/storage/external_SD/userdata.2014-11-12.img
Now, is there a recommended adb command to wipe data and cache, since factory reset function is not the best choice? I see a few with the following process...
Code:
adb shell
su
format DATA
format CACHE
...but not much commentary on it.
I appreciate the second (third, whatever you are on) crack at TWRP. Hopefully the next version will squash the bugs. Btw, I will see if I can provide a /proc/last_kmsg tonight have posted a last_kmsg here.
joel.maxuel said:
This should work (I've done it before for eriklion):
Code:
adb shell
dd /dev/block/platform/msm_sdcc.1/by-name/system /storage/external_SD/system.2014-11-12.img
dd /dev/block/platform/msm_sdcc.1/by-name/boot /storage/external_SD/boot.2014-11-12.img
dd /dev/block/platform/msm_sdcc.1/by-name/cache /storage/external_SD/cache.2014-11-12.img
dd /dev/block/platform/msm_sdcc.1/by-name/userdata /storage/external_SD/userdata.2014-11-12.img
Click to expand...
Click to collapse
yes thats all you need to backup & restore
joel.maxuel said:
Now, is there a recommended adb command to wipe data and cache, since factory reset function is not the best choice? I see a few with the following process...
Code:
adb shell
su
format DATA
format CACHE
...but not much commentary on it.
I appreciate the second (third, whatever you are on) crack at TWRP. Hopefully the next version will squash the bugs. Btw, I will see if I can provide a /proc/last_kmsg tonight.
Click to expand...
Click to collapse
I always do it that way:
Code:
Starting TWRP
adb shell
("su" in TWRP not needed normally)
mke2fs -T ext4 /dev/block/mmcblk0p15 (for userdata)
mke2fs -T ext4 /dev/block/mmcblk0p14 (for cache)
Then you can be sure it is clean and well formatted. ext4 is for both cache and userdata and works fine for me.
twrp v2.8 with many enhancements and fixes is on its way
Stay tuned ....
if you get bored in the meanwhile ... click thanks
Is someone here with running the stock ROM (or absolutely not modified means formatted! /data partition) who is willing to give me a quick help? It must be stock or placed back to stock by using a backuped image dump if you have one.
The following need to be done in recovery so you need to have CWM or TWRP installed. Boot into recovery (adb reboot recovery) and then use "adb shell" to connect.
I need your output of this command:
Code:
mke2fs -n /dev/block/platform/msm_sdcc.1/by-name/userdata
This will not do/destroy/modify anything.
It should display some information about that partition. Read the details here http://linux.die.net/man/8/mke2fs
The reason is that LG factory reset seems to wipe superblocks (wanted by LG or not - fact is that they are thrown) and THEN forwarding to the recovery tool like TWRP but to be sure I need the above output from 1 or 2 people to be sure enough on how to proceed.
Thanks in advance
As Joel investigated that may destroy /data cause of a buggy version of mke2fs!! Oh man..
-----
Sent from my SGH-I927 using XDA Android mobile app
Ok thx to joel I'm able to investigate the LG facotry reset further.
In parallel I will try another way which will be (if I get it working) absolutely smooth and will not have such workaround character like the current idea (hijacking factory reset).
Give me some time but if that works it would be a great solution for accessing recovery..
Stay tuned some good things may happen...
-----
Sent from my SGH-I927 using XDA Android mobile app
Finally v2.8 for F3Q has arrived !!! I think a very good approach now!
Have fun and as usual any thx click.... and so on
Check out the OP for Download and details:
http://forum.xda-developers.com/showpost.php?p=55239027&postcount=1
UPDATE:
I have completely reworked the "Installation & Usage instructions" section in the OP. PLEASE READ and be happy
xdajog said:
Finally v2.8 for F3Q has arrived !!! I think a very good approach now!
Have fun and as usual any thx click.... and so on
Check out the OP for Download and details:
http://forum.xda-developers.com/showpost.php?p=55239027&postcount=1
UPDATE:
I have completely reworked the "Installation & Usage instructions" section in the OP. PLEASE READ and be happy
Click to expand...
Click to collapse
Great work.
Am looking at method two. If I was to install a ROM, wouldn't the boot partition (thus my new recovery) be overwritten by the ROM package's boot.img? And when I was cooking with the Kitchen, the ROM required a specific mount point for the boot partition. If it is supposed to point to recovery, seems to me that neither would boot (overwritten recovery, ROM pointing in the wrong location).
So, what is this solution getting around? So we have an option to load TWRP before a system we don't necessarily trust will boot? Thus avoiding the bootloader fallback even more? Or is it a broken boot.img breaks TWRP as well so even if we try to go in through the bootloader, TWRP fails to load as well?
Sorry for my confusion, still trying to grasp all this new information.
joel.maxuel said:
Great work.
Click to expand...
Click to collapse
Thanks
Am looking at method two. If I was to install a ROM, wouldn't the boot partition (thus my new recovery) be overwritten by the ROM package's boot.img?
Click to expand...
Click to collapse
Method 2 will suggest that if you install a custom ROM that you are be able to use/choose the boot.img partition (I hoped that the "hint" at the was clear enough but better to ask of course!)
And when I was cooking with the Kitchen, the ROM required a specific mount point for the boot partition. If it is supposed to point to recovery, seems to me that neither would boot (overwritten recovery, ROM pointing in the wrong location).
Click to expand...
Click to collapse
Well yes you either need to point to the recovery partition or (and that would be what I recommend) you let the user choose what he wanted to do.
So, what is this solution getting around?
Click to expand...
Click to collapse
The best we can do here (and that is what I will do for my custom ROM if I get it done some day) to use AROMA installer and ask the user if he has a recovery installed in the boot partition or not. Then you can choose what to do in the updater script.
I uploaded an example of my AROMA installation setup for the "sediROM for Samsung Captivate Glide" in this post. This one is VERY complex but you will get the idea and many input on how to do things.
So we have an option to load TWRP before a system we don't necessarily trust will boot? Thus avoiding the bootloader fallback even more?
Click to expand...
Click to collapse
Yes using method 2 we have always coming TWRP up when powering on the device. We then can choose to do things in there or to boot to "recovery" which will be the ROM. What do you meant with "bootloader fallback"?
Or is it a broken boot.img breaks TWRP as well so even if we try to go in through the bootloader, TWRP fails to load as well?
Click to expand...
Click to collapse
Not sure If I got you. When the boot partition gets overwritten TWRP and any possibility to get into TWRP will be lost because it sits only in the boot partition when using method 2. If you choose to do a factory reset when powering on the device or from within the ROM I have no idea what happens then unfortunately. That is untested but if you willing to test..
Sorry for my confusion, still trying to grasp all this new information.
Click to expand...
Click to collapse
No worry about that happy if that is useful for someone
xdajog said:
I uploaded an example of my AROMA installation setup for the "sediROM for Samsung Captivate Glide" in this post. This one is VERY complex but you will get the idea and many input on how to do things.
Click to expand...
Click to collapse
Thanks! I will take a look at this in the next few days.
xdajog said:
Yes using method 2 we have always coming TWRP up when powering on the device. We then can choose to do things in there or to boot to "recovery" which will be the ROM. What do you meant with "bootloader fallback"?
Click to expand...
Click to collapse
Bootloader fallback as in having to access TWRP via the bootloader. Our regular method is to access form the ROM, but if the ROM is bricked for whatever reason, the fallback is through the bootloader.
xdajog said:
Not sure If I got you. When the boot partition gets overwritten TWRP and any possibility to get into TWRP will be lost because it sits only in the boot partition when using method 2. If you choose to do a factory reset when powering on the device or from within the ROM I have no idea what happens then unfortunately. That is untested but if you willing to test..
Click to expand...
Click to collapse
I was alluding to the scenario if one was to choose method one, installed a ROM, and things got busted badly... Would you even be able to access TWRP with a bad boot partition? I think so, because recovery partition should be self sufficient (I think you proved it by swapping their places by way of method two), it is just getting into recovery by way of bootloader) I don't particularly like.
Had to face that fear last night, and ultimately, TWRP started up fast enough from the bootloader that it seemed like nothing happened, but when i went to dump the log, it could not recognize the sdcard. DD'ing my userdata partition back fixed that issue.
joel.maxuel said:
Bootloader fallback as in having to access TWRP via the bootloader. Our regular method is to access form the ROM, but if the ROM is bricked for whatever reason, the fallback is through the bootloader.
Click to expand...
Click to collapse
You mean "factory-reset" right? By either pressing the factory reset buttons (or by choosing from within the ROM) correct?
I was alluding to the scenario if one was to choose method one, installed a ROM, and things got busted badly... Would you even be able to access TWRP with a bad boot partition? I think so, because recovery partition should be self sufficient (I think you proved it by swapping their places by way of method two), it is just getting into recovery by way of bootloader) I don't particularly like.
Click to expand...
Click to collapse
If you install TWRP with method 1 and your boot partition gets corrupt you still be able to reach TWRP by using the factory-reset buttons. But you will loose /data then.
If you install TWRP with method 2 and your boot partition has gone you can not start TWRP anymore because it sits on there.
So you're more bulletproof by choosing method 1 because you would reach TWRP even when the boot partition gets damaged but you will loose /data then! Mentioned in the known issues in the OP.
Had to face that fear last night, and ultimately, TWRP started up fast enough from the bootloader that it seemed like nothing happened, but when i went to dump the log, it could not recognize the sdcard. DD'ing my userdata partition back fixed that issue.
Click to expand...
Click to collapse
When you have TWRP installed with method 1 you will reach TWRP by factory reset buttons and it will DO NOTHING ! Really! It simply starts TWRP because I patched TWRP that way that it will not wipe anything when triggered by the factory-reset command / button!
I can say that for double sure since today because:
1) In one of my tests I had disabled REALLY EVERY wipe option within TWRP - compiled it - installed it and even then /data gets lost!
2) I have installed the BOOT image means KERNEL on the RECOVERY partition today again and then used the factory-reset buttons again (after I restored /data of course)... and /data gets lost AGAIN--?!!
That means even when there is absolutely no custom recovery in place (like TWRP) which would normally handle wiping /data then nevertheless /data gets corrupted! I have tested that twice so I can say now for sure that this has nothing to do with TWRP but it comes from the LG bootloader instead! That bootloader is CRAP. sorry.
I had tested one approach which is build in boot image RAM disk which catches the keys which are pressed and then reboot into recovery. That would work but only as long as you have a working boot image partition. So that is the same good/bad as having TWRP sitting within the boot partition which is much easier to do so I decided to go this way for now.
One last word about the crappy factory-reset by LG: I have tried a lot to find out what really happens to the partition or partition table of /data when those keys are pressed but the only thing I can say is that the superblocks are inaccessible and the same for the backup superblocks. doing a "mke2fs -S" does not work (and wouldn't fix the root cause of the issue) and I have no idea what LG do here. Therefore cannot fix that ..
so I believe we will need to live with one of the 3 methods described in the OP....
Hope that answered some of your questions...
Bad news..
The Desire Z of my wife is completely broken now.
That means I cannot develop anymore..
- I ported and released the latest TWRP version to the F3Q
- I'm able to build AOSP JellyBean (not booting yet though),
- I compiled and released a custom AOSP Kernel (named sediKERNEL)
.... and a lot more..
I have everything I need to continue here in place...
I have the will and the ability to continue...
But no device anymore..
If someone has a F3Q to give away.. then I will continue but I'm not willing to buy a F3Q for developing only. So if you have an idea how we could continue let me know.
Update:
Check out the following link if you want to help http://forum.xda-developers.com/showthread.php?t=2952919
Otherwise that will end here for me unfortunately...
Hopefully not.
Yours
Xdajog.
-----
Sent from my SGH-I927 using XDA Android mobile app
I will update the installation instructions soon!
Because of the new sediKERNEL v2.0 the instructions will be made bullet proof only .. and i try to do it more detailed @Kediil
-----
Sent from my SGH-I927 using XDA Android mobile app
Firstly, the "system" partition of official LineageOS 18.1 doesn't have enough free space for OpenGapps "stock".
Previously I've been using OpenGapps "pico" instead, then today I want to try to configure "stock" to exclude most of apps, only leaving out several wanted ones. There's an official tutorial for this: https://github.com/opengapps/opengapps/wiki/Advanced-Features-and-Options
I modified the example "Include" mode installation config, replacing "Include" with "Exclude" & commented out apps I want to install.
After several cycles of trial-and-error process, the OpenGapps installation process finally seemed to be complete without error.
However, the phone fell into bootloop after rebooting from TWRP...
Fortunately, I was still able to adb shell into the phone, and then I got these two lines from logcat:
Code:
11-06 10:21:35.139 5990 5990 E AndroidRuntime: *** FATAL EXCEPTION IN SYSTEM PROCESS: main
11-06 10:21:35.139 5990 5990 E AndroidRuntime: java.lang.IllegalStateException: Signature|privileged permissions not in privapp-permissions whitelist: {com.google.android.projection.gearhead (/system/app/AndroidAutoPrebuilt): android.permission.UPDATE_APP_OPS_STATS}
I was confused. I actually excluded "AndroidAuto" and (not mentioned in example config) "AndroidAutoPrebuiltStub" but these two unwanted apps were still automatically reinstalled during boot, even after manually deleting its files under TWRP & deleting its sections in /data/system/packages.xml. I also checked /system_root in TWRP & these two apps didn't show up there.
Finally I gave in. I commented out the lines which previously excluded these two unwanted apps in my OpenGapps config. But then the phone still fell into exactly the same bootloop syndrome.
After some googling, I edited /etc/permissions/privapp-permissions-google.xml - according to official docs, "as of Android 9, implementors must explicitly grant or deny all privileged permissions or the device won’t boot". So I added (seemed to be missing) "android.permission.UPDATE_APP_OPS_STATS" inside the "com.google.android.projection.gearhead" section.
Phew. After editing privapp-permissions-google.xml the phone finally got out of bootloop...
Ah, tried again, with "GearheadStub" included, while both "AndroidAuto" and "AndroidAutoPrebuiltStub" were excluded, this time the unedited privapp-permissions-google.xml didn't trigger a bootloop.