Possible brick. Can't mount /system. Any thoughts?

denshigomi

Well-known member
Feb 14, 2011
117
12
0
Here's what I did:
  1. make adb cat images of mtd0 through mtd8 on a stock Optimus V (cat /dev/mtd/mtd0 > /sdcard/mtd0.img ... etc.)
  2. boot a second Optimus V into Custom Recovery (using this recovery: Custom Recovery Optimus V - Android Forums)
  3. adb flash_image each mtd image from the first phone to the second phone (except for mtd2[recovery])
When I tried to boot the flashed phone, it stuck at the Virgin Mobile logo.
I tried wiping all user data from custom recovery, still hung.
I installed custom recovery on the first phone, made a Nand backup + .android_secure, then tried doing a Nand restore on the second phone. It gave me this error:
"Error : run 'nandroid-mobile.sh restore' via adb!

So I did, and I accepted the default options. Then I got this error:
"error: unable to mount /system, aborting"

So I tried mounting /system manually with:
"mount -o remount,rw -t yaffs2 /dev/block/mtdblock5 /system"

But it returns:
"mount: mounting /dev/block/mtdblock5 on /system failed: Invalid argument"

Any thoughts?

Edit: Oh, and selecting "Mount /system" from the custom recovery menu does nothing.
 
  • Like
Reactions: AVanover5
If you're able to get into recovery then it means you're not permanently bricked (since you're able to use adb while in recovery). It looks to me like you've got a malformed system partition. I did a similar thing like this except that I got malformed boot partition! That's why I know how to use KDZ. I'm not sure what causes these issues but I recommend you never do this again. If all else fails, you can take it back to your provider and say you were accepting an OTA update or something, you might get lucky and they'll give you a new one. Also, some plans/warranties allow you to pay like $25 to get a new phone if there are issues like this.

I was thinking about what to do here. In my understanding of things. The LG Optimus Partitions are set up like so:
dev: size erasesize name
mtd0: 00700000 00020000 "boot"
mtd1: 07c20000 00020000 "cache"
mtd2: 00700000 00020000 "recovery"
mtd3: 00140000 00020000 "splash"
mtd4: 00700000 00020000 "FOTA_STO"
mtd5: 09e80000 00020000 "system"
mtd6: 0a4e0000 00020000 "userdata"
mtd7: 00080000 00020000 "misc"
mtd8: 00180000 00020000 "persist"

It's imperative that each partition is the correct size as well. If one is off then the succeeding one will also be off. Now, if you simply flash erase "system" and it's succeeding partitions then you'll simply be left with blank partitions. Although, flash erasing misc and persist can fix certain booting issues; I don't think that's the case here.

Also, you said you flashed mtd0 but you can't flash that unless you're in safe-mode. It'll simply return random-characters. So perhaps you didn't actually flash mtd0 (probably a good thing). I'm led to therefore believe that mtd0, mtd1, and mtd2 are all fine since you can, at the very least, boot into recovery. If not "system", then the error could very well be in "splash" or "FOTA_STO" since you cannot mount "system" and these two partitions precede it. The rest may be irrelevant.

I'm not sure exactly how to fix this issue but that's my thinking process basically laid out for you. Hopefully it will help you. I'm also wondering if the name of the image files affects how they're flashed to the partition. For example: perhaps rather than using mtd5.img, it's proper to use system.img which suites the name of the partition itself. I haven't worked in this area of development much so I couldn't be sure. I would talk to people in a developers forum (like xda) about it, they'll likely know the precise issue rather than the general issue (and therefore be able to solve it).
 
  • Like
Reactions: denshigomi

Forum statistics

Threads
952,324
Messages
6,956,152
Members
3,162,624
Latest member
moldman