The below post is actually a PM I sent to ros87, but it look like he hasn't been on the forums in a while, so I thought I'd ask the general populous. Besides, if I manage to get out of this one, then it might help someone else.
--------------------------
To make a long story short, I have a NST that will not boot from the internal memory. I can boot from SD card images no problem (noogie, cwm, n2T-Recovery). When I boot from noogie, I can see the internal storage.
How I managed to get here:
- tried to follow the "Backup/Restore N2E" instructions from Windows, so used MiniTool Partition Wizard to delete the NST partitions
- THEN I realized the backup I took a long time ago wasn't a full device backup, but individual partition backups:
Code:
07/14/2011 09:09 PM 79,675,392 nook_backup_BOOT.img
07/14/2011 09:41 PM 251,641,856 nook_backup_CACHE.img
07/14/2011 09:58 PM 840,941,568 nook_backup_DATA.img
07/14/2011 09:30 PM 301,973,504 nook_backup_DISK.img
07/14/2011 09:22 PM 199,229,440 nook_backup_FACTORY.img
07/14/2011 09:04 PM 251,641,856 nook_backup_NOOK.img
07/14/2011 09:19 PM 16,777,216 nook_backup_ROM.img
I wasn't having any luck with Windows-based tools, so I switched to Linux. I've attempted to rebuild the partitions and copy over the data from my backups using dd:
Code:
dd if=/home/kenny/host/Nook\ Backup/nook_backup_BOOT.img of=/dev/sdb1 bs=1M
dd if=/home/kenny/host/Nook\ Backup/nook_backup_ROM.img of=/dev/sdb2 bs=1M
dd if=/home/kenny/host/Nook\ Backup/nook_backup_FACTORY.img of=/dev/sdb3 bs=1M
dd if=/home/kenny/host/Nook\ Backup/nook_backup_DISK.img of=/dev/sdb5 bs=1M
dd if=/home/kenny/host/Nook\ Backup/nook_backup_NOOK.img of=/dev/sdb6 bs=1M
dd if=/home/kenny/host/Nook\ Backup/nook_backup_CACHE.img of=/dev/sdb7 bs=1M
dd if=/home/kenny/host/Nook\ Backup/nook_backup_DATA.img of=/dev/sdb8 bs=1M
The commands seemed to work and I do see the right kind of data in the partitions, but it still won't boot.
Here's a dump of the current state of things:
Code:
fdisk -l /dev/sdb
Disk /dev/sdb: 1958 MB, 1958739968 bytes
128 heads, 32 sectors/track, 934 cylinders
Units = cylinders of 4096 * 512 = 2097152 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000001
Device Boot Start End Blocks Id System
/dev/sdb1 * 1 38 77808 c W95 FAT32 (LBA)
/dev/sdb2 39 46 16384 c W95 FAT32 (LBA)
/dev/sdb3 47 141 194560 83 Linux
/dev/sdb4 142 934 1624064 5 Extended
/dev/sdb5 142 285 294896 83 Linux
/dev/sdb6 286 405 245744 c W95 FAT32 (LBA)
/dev/sdb7 406 525 245744 83 Linux
/dev/sdb8 526 926 821232 83 Linux
--------------------------
df -h
/dev/sdb5 279M 183M 94M 67% /media/boot
/dev/sdb7 233M 6.2M 224M 3% /media/cache
/dev/sdb2 16M 119K 16M 1% /media/rom
/dev/sdb3 184M 106M 77M 58% /media/factory
/dev/sdb8 790M 20K 782M 1% /media/boot_
/dev/sdb6 237M 104M 133M 44% /media/NOOK
/dev/sdb1 75M 58M 18M 78% /media/boot__
I'm not entirely sure I got the partitions created in the format or order the nook wants. Luckily, since I do have the contents of the partitions, I do feel like I can get out of this mess, but just haven't managed to find the right sequence yet.
What I'd love to try is using a good, full backup that someone else has made, and then use my individual partition backups to rewrite the sections that are unique to my nook. Unfortunately, the torrent containing the one full backup that someone posted is long dead.
So, If there's anything anyone can think of that will help me revive this thing, I'd be ever so grateful. If you need more information, I'll get it.
Thanks!!!
"What I'd love to try is using a good, full backup that someone else has
made, and then use my individual partition backups to rewrite the
sections that are unique to my nook. Unfortunately, the torrent containing
the one full backup that someone posted is long dead."
You can boot into CWR, and you can probably pull a copy of the factory.zip file from one of your restored partitions.
But I think that where you are is a fixable point at this time - somehow (perhaps because you restored partition by partition and thus weren't able to get a correct set of names tied to them) the names are wrong on some pretty important partitions - system, data and boot!
The partitions at a very fast glance look OK to me in terms of size, number and order.
This, though:
/dev/sdb5 279M 183M 94M 67% /media/boot
/dev/sdb8 790M 20K 782M 1% /media/boot_
/dev/sdb1 75M 58M 18M 78% /media/boot__
/sdb5 should be /system;
/sdb8 should be /data (I seem to remember that Linux calls it 'userdata' when the disk is mounted)
/sdb1 should be boot -- no terminal underscores.
You can rename the partitions using parted in Linux. I would start there - boot noogie, use linux parted to address the problem with partition 1. Try renaming 5 as system and 8 as userdata (I don't have the output to hand to show you exactly what this will look like in parted)
the syntax at the CLI is
(parted) name 1 boot
(parted) quit
for partition 1 to get the name boot
(but also use the parted print command to look to see what the partitions are being called by the disk. There may be others that need tuning, but it looks as if the df command actually did find out what the disk was calling the partitions, which is helpful.)
gparted may work also, and it's a little less intimidating to use if there's a rename partition command in it.
If you can get it to boot even enough to fail, your restore image should be visible to the device and it will eventually see that it's failed enough times to force a reset.
Thanks for the detailed reply!
Since I wrote the above message, I did play with the partitions a little more to get the order to better match what I found in the Nook Touch Partition Hacking thread. Here's how it looks in gParted, after I did the labeling (parted wouldn't name a FAT32 partition):
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Still no luck trying to boot after the renaming.
Then I tried using CWM to flash the factory.zip I was able to extract from my backup. It flashed successfully, but still no boot.
I still question my partition table a bit simply because I haven't been able to find a really good reference as to what the table on a stock Nook should look like.
Kaishio said:
I still question my partition table a bit simply because I haven't been able to find a really good reference as to what the table on a stock Nook should look like.
Click to expand...
Click to collapse
That's what I see:
fdisk -l /dev/block/mmcblk0
Code:
Disk /dev/block/mmcblk0: 1958 MB, 1958739968 bytes
128 heads, 32 sectors/track, 934 cylinders
Units = cylinders of 4096 * 512 = 2097152 bytes
Device Boot Start End Blocks Id System
/dev/block/mmcblk0p1 * 1 38 77808 c Win95 FAT32 (LBA)
/dev/block/mmcblk0p2 39 46 16384 c Win95 FAT32 (LBA)
/dev/block/mmcblk0p3 47 141 194560 83 Linux
/dev/block/mmcblk0p4 142 926 1607680 5 Extended
/dev/block/mmcblk0p5 142 285 294896 83 Linux
/dev/block/mmcblk0p6 286 405 245744 c Win95 FAT32 (LBA)
/dev/block/mmcblk0p7 406 525 245744 83 Linux
/dev/block/mmcblk0p8 526 926 821232 83 Linux
mount
Code:
rootfs / rootfs ro 0 0
tmpfs /dev tmpfs rw,mode=755 0 0
devpts /dev/pts devpts rw,mode=600 0 0
proc /proc proc rw 0 0
sysfs /sys sysfs rw 0 0
tmpfs /sqlite_stmt_journals tmpfs rw,size=4096k 0 0
/dev/block/mmcblk0p2 /rom vfat rw,sync,noatime,nodiratime,uid=1000,gid=1000,fmask=0117,dmask=0007,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,errors=remount-ro 0 0
/dev/block/mmcblk0p5 /system ext2 ro,errors=continue 0 0
/dev/block/mmcblk0p8 /data ext3 rw,nosuid,nodev,noatime,nodiratime,errors=continue,data=ordered 0 0
/dev/block/mmcblk0p7 /cache ext3 rw,nosuid,nodev,noatime,nodiratime,errors=continue,data=ordered 0 0
Really appreciate the responses.
...but I'm still stuck. I made my partitions match exactly what ApokrifX posted, restored from my backups, but no boot. So strange. I'll keep messing with it though.
Maybe I'll have to ninja into barnes and noble and take a full device backup of one of the display units.
Don’t really know what to suggest...
Do you see anything on the screen when it fails to boot?
Were you able to find someone else full backup?
Can you boot noggie, take full backup and try to understand what’s messed up in it by comparing?
I have a theory that all the B&N Nook products have some sort of unbrick mode built in. I have not had a chance to try with a NST but it works fine for my Nook tablet.
1. Create partition table and format partitions see how I did this here http://forum.xda-developers.com/showthread.php?t=1225196
2. set up the first partition with MLO uboot uImage and recovery
3. Get hold of a update file from B&N Site and strip the leading signapk bits and put it on a blank sdcard after renaming it as gossamer_update.zip
4 Start up the nook it should boot from internal emmc see the presence of the special update.zip on sdcard and upgrade / downgrade reinstall etc
just look at some of the posts in the B&N Tablet threads and all this stuff works on that, grepping the source for uboot on the NST gives the gossamer name
meghd00t said:
I have a theory that all the B&N Nook products have some sort of unbrick mode built in. I have not had a chance to try with a NST but it works fine for my Nook tablet.
1. Create partition table and format partitions see how I did this here http://forum.xda-developers.com/showthread.php?t=1225196
2. set up the first partition with MLO uboot uImage and recovery
3. Get hold of a update file from B&N Site and strip the leading signapk bits and put it on a blank sdcard after renaming it as gossamer_update.zip
4 Start up the nook it should boot from internal emmc see the presence of the special update.zip on sdcard and upgrade / downgrade reinstall etc
just look at some of the posts in the B&N Tablet threads and all this stuff works on that, grepping the source for uboot on the NST gives the gossamer name
Click to expand...
Click to collapse
Cool.
OR he can actually use your approach and his backup of all partition to create whole nook image as well! :good:
Thanks m. I only had a few minutes today to mess with it, and while I didn't have any success, it wasn't the best attempt. I'll do more when I have more time.
That being said, to answer ApokrifX's earlier question, I don't see anything change on the screen for a failed boot. If it said Rooted Forever before, that's what stays. If it was CWM's "rebooting" message, that's what stays.
At this point, I'm wondering, rather than trying for a full restore, if I should just focus on getting any sort of boot from emmc. So far, I've had not been able to get any response with a SD card removed. What's the simplest way to show/test any sort of boot from internal memory?
Kaishio said:
At this point, I'm wondering, rather than trying for a full restore, if I should just focus on getting any sort of boot from emmc. So far, I've had not been able to get any response with a SD card removed. What's the simplest way to show/test any sort of boot from internal memory?
Click to expand...
Click to collapse
I wish I can answer that.
Might be coping noogie.img content to first nook partition?
I would PM to mali100 to get clarification first.
ApokrifX said:
Might be coping noogie.img content to first nook partition?
Click to expand...
Click to collapse
That should work, but the boot partition has to start on the correct sector.
mali100 said:
That should work, but the boot partition has to start on the correct sector.
Click to expand...
Click to collapse
Mali,
Do you mean alignment, or something else?
I thought, it is same way everywhere:
“Disk boot sector” (Partition loader) finds first/last active partition, loads its first sector and jumps to it.
“Active partition boot sector” finds boot file by name or have its offset, loads it (partially) and jumps to it.
No idea how it works with noogie, but gotta be something similar?
Another Q:
In Kaishio case, could it be that partitions have correct sizes, but wrong offsets, thus booting process fails?
As I understand it the restrictions are
1. Geometry 128Heads * 32Sectors per track
2. 1st partition has to be type Win95 LBA
3. 1st partition has to be bootable
4. MLO has to be uppercase and the first file on the file system
I had to fiddle a long time with sfdisk to get these rules right.
Kaishio said:
Code:
fdisk -l /dev/sdb
Disk /dev/sdb: 1958 MB, 1958739968 bytes
128 heads, 32 sectors/track, 934 cylinders
Units = cylinders of 4096 * 512 = 2097152 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000001
Device Boot Start End Blocks Id System
/dev/sdb1 * 1 38 77808 c W95 FAT32 (LBA)
/dev/sdb2 39 46 16384 c W95 FAT32 (LBA)
Click to expand...
Click to collapse
meghd00t said:
As I understand it the restrictions are
1. Geometry 128Heads * 32Sectors per track
2. 1st partition has to be type Win95 LBA
3. 1st partition has to be bootable
4. MLO has to be uppercase and the first file on the file system
I had to fiddle a long time with sfdisk to get these rules right.
Click to expand...
Click to collapse
Looks like he had satisfied first 3 conditions.
IMO, if "MLO has to be uppercase", then bootloader is searching for it by name, so it doesn’t have to be "the first file on the file system"
---------- Post added at 04:36 PM ---------- Previous post was at 04:25 PM ----------
Funny: http://overoinfo.blogspot.com/2010/03/creating-bootable-microsd-card.html
It is very important that these three files have precisely these names and are loaded into the boot partition in a very specific order. The Overo boot loader does not use the names per-se but instead loads the FIRST installed file on the boot partition (MLO) which does look for specific name 'u-boot.bin' when it is time to load the boot loader. The boot loader also looks for the specific name uImage to load the Linux kernel.
Click to expand...
Click to collapse
I.e. only u-boot.bin and uImage names are important.
MLO has to be FIRST installed file on the boot partition.
It can have any name.
Related
I was using win32DiskImager to write cm7 to an sd card. I had my Nook connected to my computer and accidentally wrote to the Nook instead of the SD card. Now, every time I boot up the Nook, I get a message that says the Nook encountered a problem and needs to be rebooted.
Which steps should I take to write the stock firmware to the Nook?
First, ask a mod to move this post to General or Q&A.
Second, provide details about what exactly you had and were trying to do, including OS versions and other relevant info.
I had stock 1.2 with CWR. I was trying to get my Nook back to complete stock (Like just out of the box) and run a separate firmware from my SD. I used a zip to remove CWR from the nook emmc. I was trying to write the CM7 SD image to my SD card, but forgot my Nook was still connected to my PC. Instead of choosing the SD card to write to with Win32DiskImager, I chose the Nook to write to. Now I can't even view the file folders on my Nook while connected to my PC. I have an SD card with CWR on it. If I need to flash something to the emmc I can do it that way.
There are stock images. People have them and will post. Don't panic.
Sent from my Samsung-SPH-D700 using XDA App
I've tried flashing some of the stock images I've seen. I still get the reboot message.
natoe33 said:
I've tried flashing some of the stock images I've seen. I still get the reboot message.
Click to expand...
Click to collapse
Man, sounds like you wiped your partitions. Let's hope that you only wiped your /media partition.
-Get a bootable CWM sdcard.
-Boot to CWM Recovery
-Connect nook to pc
-Assuming you have adb up and running. Run the following commands:
Code:
$ adb shell
# fdisk -l /dev/block/mmcblk0
That should give you a print out of your partition layout. Post here so we can see where you're at.
-Racks
How do I insert code like you did?
This is what I got. (I think I did this right)
Code:
~ # fdisk -l /dev/block/mmcblk0
fdisk -l /dev/block/mmcblk0
Disk /dev/block/mmcblk0: 7944 MB, 7944011776 bytes
255 heads, 63 sectors/track, 965 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/block/mmcblk0p1 * 1 9 72261 c Win95 FAT32 (LB
A)
/dev/block/mmcblk0p2 10 18 72292+ c Win95 FAT32 (LB
A)
/dev/block/mmcblk0p3 19 56 305235 83 Linux
/dev/block/mmcblk0p4 57 935 7060567+ 5 Extended
/dev/block/mmcblk0p5 57 114 465853+ 83 Linux
/dev/block/mmcblk0p6 115 236 979933+ 83 Linux
/dev/block/mmcblk0p7 237 281 361431 83 Linux
/dev/block/mmcblk0p8 282 935 5253223+ c Win95 FAT32 (LB
A)
~ #
Well thats a good sign. All your partitions are still intact. Have you tried the 8-Failed reboots? Then clearing data by holding "Power & Home" Until the clearing data screen comes up?
natoe33 said:
This is what I got. (I think I did this right)
Code:
~ # fdisk -l /dev/block/mmcblk0
fdisk -l /dev/block/mmcblk0
Disk /dev/block/mmcblk0: 7944 MB, 7944011776 bytes
255 heads, 63 sectors/track, 965 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/block/mmcblk0p1 * 1 9 72261 c Win95 FAT32 (LB
A)
/dev/block/mmcblk0p2 10 18 72292+ c Win95 FAT32 (LB
A)
/dev/block/mmcblk0p3 19 56 305235 83 Linux
/dev/block/mmcblk0p4 57 935 7060567+ 5 Extended
/dev/block/mmcblk0p5 57 114 465853+ 83 Linux
/dev/block/mmcblk0p6 115 236 979933+ 83 Linux
/dev/block/mmcblk0p7 237 281 361431 83 Linux
/dev/block/mmcblk0p8 282 935 5253223+ c Win95 FAT32 (LB
A)
~ #
Click to expand...
Click to collapse
I tried the 8 failed reboot thing. Now I'm stuck at "Read Forever".
EDIT: I got it to work. Thanks. <======= noooooooooooooob
natoe33 said:
I tried the 8 failed reboot thing. Now I'm stuck at "Read Forever".
EDIT: I got it to work. Thanks. <======= noooooooooooooob
Click to expand...
Click to collapse
Good to hear. Now unplug your nook before you burn another image to it! .
Racks
Sent from my NookColor using Tapatalk
Post your final solution for future reference
daemonfly said:
Post your final solution for future reference
Click to expand...
Click to collapse
Nothing too exciting. I must have messed something up while trying to 8 failed boot reset.
Made a second run at the 8 fails and did the BN update to 1.2. Pretty anti-climactic.
racks11479 said:
Good to hear. Now unplug your nook before you burn another image to it! .
Racks
Sent from my NookColor using Tapatalk
Click to expand...
Click to collapse
Yeah. Fool me once...
http://forum.xda-developers.com/showthread.php?t=945838
Keep this handy for next time. It's a CWR SD card image of stock 1.1
Burn to SD card and boot, it will do everytihng for you.
get an SD card reader, dont rely on your nook as the reader..... You can get USB SD readers for like 20 bucks
It sounds like you didn't overwrite any of your firmware, but rather you ran the disk imager on the /media partition of your Nook. Your firmware stayed intact, but when you tried to boot the device it saw the bootable partition information on internal storage and got confused. That would explain why none of your fixes from CWR appeared to help, because CWR usually doesn't touch the /media partition.
Help - I did the same thing but I don't think I was so lucky!
My Nook Color boots - but when I connect it to my PC the size of the USB drive reads as only 1 GB. I'm afraid I messed up the partitions.
I tried the 8-reboots, but I still have the wrong disk size.
Tried getting ADB to work earlier today but was not able to recognize the nook.
I would really appreciate some help.
vgramatges said:
My Nook Color boots - but when I connect it to my PC the size of the USB drive reads as only 1 GB. I'm afraid I messed up the partitions.
I tried the 8-reboots, but I still have the wrong disk size.
Tried getting ADB to work earlier today but was not able to recognize the nook.
I would really appreciate some help.
Click to expand...
Click to collapse
The "new partitioned" Nook Colors have only a 1 GB /media storage space, and a 7 GB system+data+apps partition. The old ones were the other way around.
It seems to be working fine in every other respect - I got the upgrade to 1.3 to work, and then got it rooted, so I will try to get ADB working and then will check the partitions using the command suggested earlier in this thread.
Thank you for the quick reply!
** MUCH RELIEVED **
I run a pure ICS ROM, with all the Samsung apps and addons removed.
But I still have a 500Mb partition mounted under "/preload". Samsung stuff.
This renders 500Mb of RAM useless since the "pure" ICS does not store anything there. This could be used for /data instead.
Now, can anyone point me to a .pit file I can use that does not have that partition included, or better still, how do I edit or create my own .pit file. I tried fdisk but with no luck.
[email protected]:/ # df -kh
Filesystem Size Used Available Use% Mounted on
tmpfs 415.3M 32.0K 415.3M 0% /dev
tmpfs 415.3M 0 415.3M 0% /mnt/asec
tmpfs 415.3M 0 415.3M 0% /mnt/obb
/dev/block/mmcblk0p9 503.9M 282.1M 221.8M 56% /system
/dev/block/mmcblk0p7 98.4M 4.1M 94.4M 4% /cache
/dev/block/mmcblk0p1 19.7M 8.2M 11.5M 42% /efs
/dev/block/mmcblk0p10 2.0G 368.6M 1.6G 18% /data
/dev/block/mmcblk0p12 503.9M 8.4M 495.6M 2% /preload
You shouldn't be trying to mess with PIT. Believe me.
Also, you misspelled Storage. That's not RAM.
Sent from my GT-I9100 using XDA App
Sorry, storage ofcourse.
My basic plan was to just backup /data, remove the /preload & /data partition and recreate /data with a size of 2.5Gb. But nooo... fdisk does not want me to do this.
Been using Linux for 15 years so I thought that would work.
Are there no recoveries with partitioning tools out there? Like CWM but not only with sdcard-partitioning.
This kind of worries me too, it seldom is good... fdisk output:
The number of cylinders for this disk is set to 1923584.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Command (m for help): p
Disk /dev/block/mmcblk0: 15.7 GB, 15758000128 bytes
1 heads, 16 sectors/track, 1923584 cylinders
Units = cylinders of 16 * 512 = 8192 bytes
Device Boot Start End Blocks Id System
/dev/block/mmcblk0p1 1 1923456 15387647+ ee EFI GPT
Partition 1 does not end on cylinder boundary
Command (m for help): v
Partition 1 does not end on cylinder boundary
Partition 1: sector 0 greater than maximum 16
2048 unallocated sectors
Command (m for help):
Let me explain it straight : Bootloader and PIT are tightly linked together. PIT is set by samsung and mapped directly to the bootloader initialization. If you bork the PIT, the bootloader is borked too, leading to device not booting at all (even in download mode).
Just leave that partition alone and enjoy your phone. You certainly won't even use those 500MB.
And by the way, a phone's storage partitionning is not a hard drive. You don't just fdisk like on a computer.
bodhisattva99 said:
Sorry, storage ofcourse.
My basic plan was to just backup /data, remove the /preload & /data partition and recreate /data with a size of 2.5Gb. But nooo... fdisk does not want me to do this.
Been using Linux for 15 years so I thought that would work.
Are there no recoveries with partitioning tools out there? Like CWM but not only with sdcard-partitioning.
This kind of worries me too, it seldom is good... fdisk output:
The number of cylinders for this disk is set to 1923584.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Command (m for help): p
Disk /dev/block/mmcblk0: 15.7 GB, 15758000128 bytes
1 heads, 16 sectors/track, 1923584 cylinders
Units = cylinders of 16 * 512 = 8192 bytes
Device Boot Start End Blocks Id System
/dev/block/mmcblk0p1 1 1923456 15387647+ ee EFI GPT
Partition 1 does not end on cylinder boundary
Command (m for help): v
Partition 1 does not end on cylinder boundary
Partition 1: sector 0 greater than maximum 16
2048 unallocated sectors
Command (m for help):
Click to expand...
Click to collapse
If it were that easy, someone would have done it already. I suggest just symlinking the partition to a folder if you really want to use the extra space... If you're adventurous, find a way of using it for Dalvik.
XpLoDWilD said:
Let me explain it straight : Bootloader and PIT are tightly linked together. PIT is set by samsung and mapped directly to the bootloader initialization. If you bork the PIT, the bootloader is borked too, leading to device not booting at all (even in download mode).
Just leave that partition alone and enjoy your phone. You certainly won't even use those 500MB.
And by the way, a phone's storage partitionning is not a hard drive. You don't just fdisk like on a computer.
Click to expand...
Click to collapse
Thanks for a great answer. Case closed I guess.
I moved dalvik there by soft linking it and so far everything seems to work fine.
After a reboot the filesystem is mountrd RO. Not quite sure where to change that. Something like /etc/fstab.... Anyone?
EDIT: Found it, init.rc....
OK, next dumb question, as the init.rc gets overwritten on reboot, where is the original?
bodhisattva99 said:
OK, next dumb question, as the init.rc gets overwritten on reboot, where is the original?
Click to expand...
Click to collapse
I believe it's in initramfs packed with the kernel.
oinkylicious said:
I believe it's in initramfs packed with the kernel.
Click to expand...
Click to collapse
OK, that sucks since I cannot recompile it.
I solved it by a script in /system/etc/init.d/ , its an ugly 5-minuter but it does the job.
Works on every reboot, if the dalvik is already moved nothing happens, I just get some stderr. Takes a few seconds the first time.
Will extend tomorrow if a "wipe dalvik-cache" is done from recovery. It wont handle that right now.
----- script -----
mount /preload -o remount,rw,nosuid,nodev,noatime,noauto_da_alloc
chmod 0771 /preload
mv /data/dalvik-cache /preload/
ln -s /preload/dalvik-cache /data/dalvik-cache
----- script -----
Ahh, no more wasted space!
bodhisattva99 said:
OK, that sucks since I cannot recompile it.
Click to expand...
Click to collapse
Sure you can, it's pretty straightforward. [GUIDE]Unpack/Repack initramfs in zImage (i9100)
XpLoDWilD said:
You shouldn't be trying to mess with PIT. Believe me.
Also, you misspelled Storage. That's not RAM.
Sent from my GT-I9100 using XDA App
Click to expand...
Click to collapse
You can tell people this multiple times mate but they tend not to listen until one day you see a post: "Halp, ma fone.. it b0rk"
oinkylicious said:
Sure you can, it's pretty straightforward. [GUIDE]Unpack/Repack initramfs in zImage (i9100)
Click to expand...
Click to collapse
Many thanks! Some play for to tomorrow then.
Intratech said:
You can tell people this multiple times mate but they tend not to listen until one day you see a post: "Halp, ma fone.. it b0rk"
Click to expand...
Click to collapse
OK, OK, I got the message...
Sorry wasn't directed at you... was just a general statement.
Intratech said:
Sorry wasn't directed at you... was just a general statement.
Click to expand...
Click to collapse
No prob, better than I learn it the hard way...
You boy have a heart of a Jedi. Full respect. Hopefully no one will cry like an Ewok soon
Sent from my GT-I9100 using xda premium
Sorry for all the stupid questions but I only had the S2 for three days.
OK, here goes... nothing...
Seems to repack fine. Lets just hope I did the scripting OK.
Will upload once I've tried it out myself...
[email protected] ~/work/android/initramfs-tools $ ./repack boot.img initramfs-bodhisattva99_v1.0.cpio
---------------------------kernel repacker for i9100---------------------------
Extracting gzip'd kernel from boot.img (start = 17972)
CPIO compression type detected = gzip | offset = 193180
CPIO image MAX size:1921884
Head count:2115064
Making head.img ( from 0 ~ 193180 )
Making a tail.img ( from 2115064 ~ 10031364 )
Current ramdsize using cat : 3272192 with required size : 1921884 bytes
Current ramdsize using gzip -f9 : 1916756 with required size : 1921884 bytes
gzip -f9 accepted!
Merging [head+ramdisk] + padding + tail
Now we are rebuilding the zImage
Image ---> piggy.gzip
piggy.gzip ---> piggy.gzip.o
Compiling head.o
Compiling misc.o
Compiling decompress.o
Compiling lib1funcs.o
Create vmlinux.lds
head.o + misc.o + piggy.gzip.o + decompress.o + lib1funcs.o---> vmlinux
vmlinux ---> zImage
New zImage size:5740672
Padding new zImage to 8388608 bytes
Padding sufiles to new_zImage
new_zImage has been created
Cleaning up...
finished...
Haha... lets try it!
Well,all this is nice and you have my respect for being fearless with these matters,but some months ago there was another interesting idea for the proper use of the hidden partition.A hidden porn stash.Works like a charm.
I don't remember who proposed that,but kudos to him.
OK, can someone explain to me how to build a CWM flashable .zip with the new zImage?
Been searching forum for 2 hours and I can only find how to build application zips, not kernel...
It should also prefferably have a script in it that runs the following after updating the kernel/boot.img
rm -rf /data/dalvik-cache
ln -s /preload/dalvik-cache /data/dalvik-cache
bodhisattva99 said:
OK, can someone explain to me how to build a CWM flashable .zip with the new zImage?
Been searching forum for 2 hours and I can only find how to build application zips, not kernel...
It should also prefferably have a script in it that runs the following after updating the kernel/boot.img
rm -rf /data/dalvik-cache
ln -s /preload/dalvik-cache /data/dalvik-cache
Click to expand...
Click to collapse
Flash with mobile odin
Sent from my GT-I9100 on CM9 using Tapatalk
Anyway, I was using Miui V3 2.4.20 [2.6.35], and Google maps wasn't very happy with it. So I decided it was time to move on to the .32 kernal version, since the developer was going that way too. Downloaded a stock rom with .32 kernal, went to the pink screen and flashed, and then boot loop.
Luckily, I'm awesome, so my phone won't die on me. Tried flashing some roms through clockwork, no bootloop, just stuck at huawei logo. Tried flashing some stock roms, and at about 98% done flashing it goes error. Some parts get flashed causing my recovery reverts to stock, but I'm still stuck at the huawei logo.
Also, in clockworkmod I get errors mounting data and emmc, so that might be a problem. Other partitions mount fine.
I'm sure I'll find a solution eventually, so there's no rush. I've been in similar situations before. Just wanted to see what other people had used for similar situations. So if you know of something that would help, please let me know.
Found these through search (I'll do a better search again later), i will try them tomorrow:
http://forum.xda-developers.com/showpost.php?p=18944228&postcount=4
http://forum.xda-developers.com/showthread.php?t=1683249
http://forum.xda-developers.com/showthread.php?t=1689469
http://forum.xda-developers.com/showthread.php?t=1682501
http://forum.xda-developers.com/showthread.php?t=1011527
After reading a lot of threads, attempting to flash a lot of roms (stock and others), replacing all kinds of images, and offering a sacrifice to the cellphone gods, still at the same problem:
To reiterate problem:
1) Stuck/reboots at Huawei logo
2) Flashing stock roms via pink screen never finish installing, get error message at ~95% finished (During install, unpacks fine)
3) Flashing roms via recovery say they installed, but still boot problem
4) This problem occurred while trying to downgrade from .35 to .32
My next step is to try using Linux to put the Dload folder on the internal SD card and try installing from there. I have a feeling it is related to the partitions having problems. I used both the "get back pink screen" and "data partition resize," maybe something went wrong with them that only appeared when I tried to go back to stock. I'll find out more when I install linux and can see if the partitions are OK or not.
I've always wanted to try linux, and now that my phone is broke I have found the motivation to do so. So a word of advice for people for people wanting to try linux but are too lazy to download the linux file: Soft-brick your phone, it gives you motivation.
UPDATE: I'm pretty sure my partition table is broke pretty bad. In adb shell, df gives me:
Filesystem Size Used Free
/dev 173M 64K 172M
/system 203M 200M 2M
/cache 127M 4M 123M
and that's it. No /HWUserData, /.cust_backup, /mnt/asec, /mnt/obb, or /data.
Would someone be as kind as to tell me how to fix the partition table? I've got a soldering iron, duct tape and super glue. Also, I'm not afraid to buy a "box" to do some Jtag stuff.
Anybody know what Blefish uses to format the phone memory? I read on his tumbler page and his github that he has altered the partition table (he split the /hwuserdata into three sections, which means he has the ability to create partitions) If I can get that tool, then I have a plan:
0) If my understanding is correct, the updates don't install because the needed partitions are missing, which causes an error. I guess the updates won't create partitions, just alter them.
1) Use the tool blefish used to setup the partition table as described in this thread: http://forum.xda-developers.com/showthread.php?t=1504488
2) Once the partitions are back, i should at least be able to get the blue screen, if I'm good, then I can put all right files in /dev/sdb1, which will get me the pink screen.
3) Using the blue/pink screen, I can install stock firmware, which should correct any problems that the partition table has. Maybe even install android.
4) Do the happy dance
5) ???
6) Profit
I've done my homework, searched the forums, made a plan, and cleaned my room. Someone please give me some feedback and at least let me know if I'm heading in the right direction.
typci said:
Anybody know what Blefish uses to format the phone memory?
Click to expand...
Click to collapse
I am using fdisk, the main partitioning tool for MBR table. You can check the table by doing fdisk /dev/block/mmcblk0 and then "p" which should print the current partition table. From there, you can also modify the partitions.
Sent from my U8800 using Tapatalk 2
Blefish said:
I am using fdisk, the main partitioning tool for MBR table. You can check the table by doing fdisk /dev/block/mmcblk0 and then "p" which should print the current partition table. From there, you can also modify the partitions.
Sent from my U8800 using Tapatalk 2
Click to expand...
Click to collapse
Awesome. I used to use fdisk back in the dos days, so I just need to brush up on my skills and learn the adb specifics. I really need to take the time to go learn all the commands associated with adb.
INTERESTING UPDATE: If I flash a rom with locked boot loader, I still get the pink screen but it doesn't work, i.e. I can't access the image folder via windows. If I flash a rom without a locked boot loader, pink screen works. Granted none of these roms actually fully flash, I still get the error near the end.
Fdisk = Permission denied, su = permission denied. Rooted boot image prevents me from getting into recovery, which means adb won't work. Any other way to get root? I'll try flashing a custom rom when I can get clockworkmod working again. For some reason I can't get recovery to load via vol+ & power.
Also something weird is going on. When it boots, it reboots once, then goes to stock recovery, tries to do a factory reset, gets errors on formating. Also in windows two removable disks appear, but I can access them. I take it that they represent the internal SD card and maybe the pink screen image folder partition. Tomorrow I'll try linux and see what happens.
UPDATE:
1) I can't use FDISK because SU won't work. I'm not sure how SU/root works on a software/partition bricked phone.
2) Rooted boot.img won't boot into recovery. SuperOneClick won't work because it can't find the data partition (probably because I don't have one).
3) I was going to try flashing a custom rom but for some reason I can't get clockworkmod working again. The phone will boot into stock recovery on it's own, after a couple of reboots. However, if I change the boot.img or recovery.img to anything else, it gets stuck at huawei logo or boot loop.
4) Unbuntu LiveCD won't work (says it can't find the kernal) even though I used the installer from the website and tried it both via cd and flash drive. Working on installing a dual-boot system now.
I'm really striking out here. Couple of questions if anyone would care to answer.
1) Besides recovery, how else can I establish an adb connection? Pink screen and huawei logo give me device not found.
2) Is there a root exploit available that doesn't require a data partition or is there a root exploit I can modify so it doesn't require a data partition? It's OK if it's a manual exploit, while I'm new with android/adb, I got plenty of experience with command prompt input from back in the dos days.
Also learned there is a HuaWei office in my town. Don't know what they do there, but if I don't make any progress after I couple more days, I'll go find out.
typci said:
UPDATE:
1) I can't use FDISK because SU won't work. I'm not sure how SU/root works on a software/partition bricked phone.
2) Rooted boot.img won't boot into recovery. SuperOneClick won't work because it can't find the data partition (probably because I don't have one).
3) I was going to try flashing a custom rom but for some reason I can't get clockworkmod working again. The phone will boot into stock recovery on it's own, after a couple of reboots. However, if I change the boot.img or recovery.img to anything else, it gets stuck at huawei logo or boot loop.
4) Unbuntu LiveCD won't work (says it can't find the kernal) even though I used the installer from the website and tried it both via cd and flash drive. Working on installing a dual-boot system now.
I'm really striking out here. Couple of questions if anyone would care to answer.
1) Besides recovery, how else can I establish an adb connection? Pink screen and huawei logo give me device not found.
2) Is there a root exploit available that doesn't require a data partition or is there a root exploit I can modify so it doesn't require a data partition? It's OK if it's a manual exploit, while I'm new with android/adb, I got plenty of experience with command prompt input from back in the dos days.
Also learned there is a HuaWei office in my town. Don't know what they do there, but if I don't make any progress after I couple more days, I'll go find out.
Click to expand...
Click to collapse
On pink screen, your device is just like any other mass storage device. So you can still use fdisk on ubuntu with the correct /dev/sdX path. You can also format the data/system/cache using other tools if you need to.
Sent from my U8800 using Tapatalk 2
Sweet, so I just need to get Unbuntu working. I still can't figure out why the live CD/flash drive didn't work. Oh, well. When I get off of work I'll get to installing the dual-boot system. Thanks for your help.
typci said:
Sweet, so I just need to get Unbuntu working. I still can't figure out why the live CD/flash drive didn't work. Oh, well. When I get off of work I'll get to installing the dual-boot system. Thanks for your help.
Click to expand...
Click to collapse
i actually understood nothing from your posts but i would like to congratulate you for being a user who does research before asking ppl something
and I gladly give you a bump
JaymzBond said:
i actually understood nothing from your posts but i would like to congratulate you for being a user who does research before asking ppl something
and I gladly give you a bump
Click to expand...
Click to collapse
Thanks. Unfortunately the project is on hold for a couple of days. My electric motorcycle has been having some problems and I've been repairing it. Also, I think I found out why linux wasn't working. Apparently the "alternative" downloads aren't useable as a live CD, which is why the kernal wasn't there. Anyway, it's been a great learning experience. Maybe after I "break" my phone enough times I'll learn enough to become a developer.
Doing some research before getting back to working on the phone.
Looks like Blefish is talking about using linux's fdisk, when I was trying to use adb's fdisk. That would certainly allow me to bypass the su problem with adb. I think I got all the correct files for my linux livecd, so that shouldn't be a problem. After I'm done with my workout, I'll try it out and see how it goes. It's time to learn how to use linux.
Update: Got unbuntu working. Storage devices are all /media instead of /dev like I was expecting. But I think I'm not looking in the right place.
Plugged in phone via pink screen and 3 drives came up:
System - has system stupp (app, bin, etc, fonts, ...) - sdb12
256 MB File system - image folder with all the .img and .mbn files - sdb1
136 MB File system - has fotapkg, lost+found, recovery folders- filesystem type ext3/ext4 - I'm not sure what this is, maybe sdb6? If it was data (sdb13) then I wouldn't get the error in recovery, If it was the internal SD card the filesystem should be vfat. If someone knows better, please let me know.
For some reason I don't have permission to access the lost+found folder, or so Unbuntu tells me.
Tried to used fdisk with system, got error: I don't know how to handle files with mode 40755
Also found some recovery log files in the fotapkg and recovery folders. I'll post it here incase someone can get some more useful information out of it. Does anyone know what all these (null) mean?
Tomorrow I'll get to work on learning how to use unbuntu and fdisk.
Starting recovery on Sun Jan 6 00:03:50 1980
can't open /dev/tty0: No such file or directory
framebuffer: fd 3 (480 x 800)
recovery filesystem table
=========================
0 /tmp ramdisk (null) (null)
1 /boot vfat /dev/block/mmcblk0p1 (null)
2 /fat vfat /dev/block/mmcblk0p1 (null)
3 /cache ext4 /dev/block/mmcblk0p6 (null)
4 /data_pseudo ext4 /dev/block/mmcblk0p13 (null)
5 /misc emmc /dev/block/mmcblk0p7 (null)
6 /recovery vfat /dev/block/mmcblk0p1 (null)
7 /HWUserData vfat /dev/block/mmcblk0p14 (null)
8 /system ext4 /dev/block/mmcblk0p12 (null)
9 /sdcard vfat /dev/block/mmcblk1p1 /dev/block/mmcblk1
I:cmdline: console=ttyDCC0 androidboot.hardware=huawei androidboot.localproppath=hw/default androidboot.emmc=true androidboot.image=recovery androidboot.mode=user androidboot.baseband=msm
Ita_move_command_file
I:Got arguments from boot message
Command: "recovery" "--wipe_data" "--wipe_cache"
Formatting /cache...
Creating filesystem with parameters:
Size: 136314880
Block size: 4096
Blocks per group: 32768
Inodes per group: 4160
Inode size: 256
Journal blocks: 1024
Label:
Blocks: 33280
Block groups: 2
Reserved block group size: 15
Created filesystem with 11/8320 inodes and 1585/33280 blocks
E:failed to mount /data_pseudo (No such file or directory)
E:failed to mount /data_pseudo (No such file or directory)
Formatting /data...
Need size of filesystem
E:format_volume: make_extf4fs failed on /dev/block/mmcblk0p13
E:failed to mount /data_pseudo (No such file or directory)
E:failed to mount /data_pseudo (No such file or directory)
Formatting /cache...
Creating filesystem with parameters:
Size: 136314880
Block size: 4096
Blocks per group: 32768
Inodes per group: 4160
Inode size: 256
Journal blocks: 1024
Label:
Blocks: 33280
Block groups: 2
Reserved block group size: 15
Created filesystem with 11/8320 inodes and 1585/33280 blocks
Data wipe failed.
wipe internal sdcard fail.
It could be that the data partition (originally mmcblk0p13) got wiped out and now mmcblk0p13 is internal sd card. Here's the original partition table:
Code:
Disk /dev/block/mmcblk0: 3959 MB, 3959422976 bytes
1 heads, 16 sectors/track, 483328 cylinders
Units = cylinders of 16 * 512 = 8192 bytes
Device Boot Start End Blocks Id System
/dev/block/mmcblk0p1 1 30721 245760 b Win95 FAT32 CUST
Partition 1 does not end on cylinder boundary
/dev/block/mmcblk0p2 * 30721 30783 500 4d Unknown SBL1
Partition 2 does not end on cylinder boundary
/dev/block/mmcblk0p3 30783 31158 3000 46 Unknown TZ
Partition 3 does not end on cylinder boundary
/dev/block/mmcblk0p4 31158 483328 3617363+ 5 Extended EBR
Partition 4 does not end on cylinder boundary
/dev/block/mmcblk0p5 32769 34304 12288 59 Unknown OEMINFO/BOOTLOADER IMAGES
/dev/block/mmcblk0p6 40961 57600 133120 4c Unknown CACHE
/dev/block/mmcblk0p7 65537 65599 500 5a Unknown MISC
/dev/block/mmcblk0p8 73729 74112 3072 58 Unknown FSG?
/dev/block/mmcblk0p9 81921 82795 7000 50 Unknown ADSP
/dev/block/mmcblk0p10 90113 90496 3072 4a Unknown MODEM_ST1
/dev/block/mmcblk0p11 98305 98688 3072 4b Unknown MODEM_ST2
/dev/block/mmcblk0p12 106497 134656 225280 83 Linux SYSTEM
/dev/block/mmcblk0p13 139265 216064 614400 83 Linux USERDATA
/dev/block/mmcblk0p14 221185 483328 2097152 69 Unknown INTERNAL_SD
The sdb6 is indeed cache, and it is used for recovery communication between Android.
If everything would be ok, it would mount sdb1, sdb6, sdb12, sdb13 and sdb14 inside Ubuntu, so it seems that something is wrong at the end.
If you have 14 partitions, use disk utility from Ubuntu and try manually formatting the 13 for ext4 and 14 for vfat. Taking ownership is not needed, it should work either way.
Blefish, thanks for the help. Got unbuntu up and working along with fdisk and identified the phone.
I have 13 partitions (including one empty one) , not 14. Here's the print out:
[email protected]:~$ sudo fdisk /dev/sde
omitting empty partition (13)
Command (m for help): p
Disk /dev/sde: 3959 MB, 3959422976 bytes
1 heads, 62 sectors/track, 124729 cylinders, total 7733248 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Device Boot Start End Blocks Id System
/dev/sde1 1 491520 245760 b W95 FAT32
/dev/sde2 * 491521 492520 500 4d QNX4.x
/dev/sde3 492521 498520 3000 46 Unknown
/dev/sde4 498521 7733247 3617363+ 5 Extended
/dev/sde5 524288 548863 12288 59 Unknown
/dev/sde6 655360 921599 133120 4c Unknown
/dev/sde7 1048576 1049575 500 5a Unknown
/dev/sde8 1179648 1185791 3072 58 Unknown
/dev/sde9 1310720 1324719 7000 50 OnTrack DM
/dev/sde10 1441792 1447935 3072 4a Unknown
/dev/sde11 1572864 1579007 3072 4b Unknown
/dev/sde12 1703936 2154495 225280 83 Linux
Comparing with your partition table I see two differences:
1) the ending block of sde1 is 491520 on mine and on the original it is 30721, however the blocks are the same, so that is probably not a problem
2) sde13 is empty, and sde14 is missing.
This actually makes sense. When I was using MIUI, I reduced the size of the internal sd to near zero, since MIUI could only either the internal or external sd, not both. After trying to downgrade, I had a problem, so I tried to restore the internal sd card back to stock size, just to bring my phone back to stock. Something must have gone when I did that.
So if I understand the problem correctly, to fix this I need to:
1) Split sde13 into 2 partitions
2) Format sde13 to ext4 and sde14 to vfat
3) Try installing adroid again
Do I need to name the partitions a certain name or do anything else?
In the mean time I'll be looking into how to use disk utility and fdisk to deal with sde13 and sde14.
Had an idea that I only need sde13 (data) to get things working again, the system shouldn't need sde14 (internal sd) to work.
So I went to disk utility, found Qualcomm MMC storage and tried to format the free 2.9GB at the end. Got an error:
Error creating partition: helper exited with exit code 1: In part_add_partition: device_file=/dev/sde, start=1103101952, size=2856000000, type=0x83
Entering MS-DOS parser (offset=0, size=3959422976)
MSDOS_MAGIC found
looking at part 0 (offset 512, size 251658240, type 0x0b)
new part entry
looking at part 1 (offset 251658752, size 512000, type 0x4d)
new part entry
looking at part 2 (offset 252170752, size 3072000, type 0x46)
new part entry
looking at part 3 (offset 255242752, size 3704180224, type 0x05)
Entering MS-DOS extended parser (offset=255242752, size=3704180224)
readfrom = 255242752
MSDOS_MAGIC found
readfrom = 255243264
MSDOS_MAGIC found
readfrom = 255243776
MSDOS_MAGIC found
readfrom = 255244288
MSDOS_MAGIC found
readfrom = 255244800
MSDOS_MAGIC found
readfrom = 255245312
MSDOS_MAGIC found
readfrom = 255245824
MSDOS_MAGIC found
readfrom = 255246336
MSDOS_MAGIC found
readfrom = 1140842496
No MSDOS_MAGIC found
Exiting MS-DOS extended parser
Exiting MS-DOS parser
MSDOS partition table detected
containing partition table scheme = 1
got it
Error: Invalid partition table on /dev/sde -- wrong signature 0.
ped_disk_new() failed
So, my partition table is corrupt? I'll need to figure out how to fix this.
Here's some options I've found:
http://forum.xda-developers.com/showpost.php?p=21572216&postcount=12
ksatta mentions a couple of ideas:
1) If someone backed up their phone using dd, I could use that to restore my phone.
Here's a link on how to do it: http://linuxpoison.blogspot.com/2009/04/creating-backuprestore-images-using-dd.html
dd if=/dev/sdX | gzip > /home/sdX.bin.gz
where sdX is the U8800
2) I could clone someone's partition table. If someone could give me a copy of their MBR that should work.
Here's a link on how to do it: http://embraceubuntu.com/2005/10/20/backing-up-the-mbr/
Create a backup of your MBR by doing a:
dd if=/dev/sdX of=MBR-backup bs=512 count=1
That should read “create a disk dump of the input file, which is /dev/sdx (change to hda, or hdb or sda, depending on where the MBR is on your computer), and save it in the output-file MBR-backup in the directory from where the command is issued. Backup the first sector only, while you are at it”.
3) gparted - it's some kind of partition tool. Might be able to use it to fix the error. Not sure how to use it though.
For now I'm going to look into gparted for Ubuntu. If someone can help me out with a dd backup or cloning the partition table that would be awesome.
UPDATE: For people following this thread, and to keep me more organized, I'll start adding more of the important resources I find. They may one day help you fix your phone.
https://bugs.launchpad.net/ubuntu/+source/gparted/+bug/434463
Seems a guy fixed his the same error with gparted. However it wasn't on a phone. Also I'm seem a lot of people refer to sfdisk. I'll need to learn more about it.
https://answers.launchpad.net/ubuntu/+question/113539
"I got an answer in a forum, which looks easy.
Do a
sudo fdisk /dev/sda
then type
w
to write partition table, without any modification of it.
The signature should be fixed."
Is this safe to do to my phone? I know I'll have to write the MBR eventually, but I have to get it right the first time. If I screw up, I may not be able to connect to ubuntu anymore. Anyway, the guy said it fixed the error with his harddrive, so it's worth a try.
http://www.thegeekstuff.com/2010/09/linux-fdisk/
How to use fdisk, in case anyone needs to know
So my new plan is to:
1) dd Backup and MBR backup - in case I break it worse than it is
2) try to fix with fdisk w or gparted
I think the change in start and end is caused by Ubuntu using cylinders/sectors/blocks. Should not too much difference though.
Using MBR restore would not work here, as it restores the main 4 partitions list. MBR uses EBR aswell, which is located at the beginning of every extended partition. So we would have to copy the EBR of every partition.
I'd suggest deleting sde13, adding sde13 and sde14.
When adding sde13, note that starting block should be at the end of sde12, so simply insert last block of sde12 there. If it gives error, simply press enter as it automatically finds free block after the last one. End block could be for example +500M so fdisk automatically finds the correct end block. Do the same for sde14, but note the start block again. sde14 end block should be the last block there is on the card.
After you've done that, do w to write and if it tells you to restart or something, unplug the phone, take out the battery and restart to pink screen again. Then try to use disk utility again or gparted (have not tested this) to reformat sde13 and sde14 to ext4 and vfat.
You should be safe until you don't mess with the primary partitions, especially the mmcblk0p2 and mmcblk0p3.
Thanks again for the reply, Blefish. I may have just fixed it. I'll know soon enough.
I did two things:
1) sudo fdisk /dev/sde12 followed by w
2) sudo fdisk /dev/sde followed by w
After that it enabled me to add the 13 and 14 partition. I used disk utility so I didn't have to worry about the blocks. Afterwards they mounted in ubuntu like they should.
UPDATE: Not quite fixed, but the rom installed without error. So I think the partition problem is fixed.
Now I just have a boot loop. I'll go back to ubuntu, clear the cache, and try installing from the internal sdcard
2nd UPDATE: Stock recovery gives and error about mounting the cache partition. However CWM mounts it fine. My partition problems may not be over.
3rd UPDATE: genokolar's "Custom you partition" file to return to stock file deletes my partition 13 and 14. Had 13 and 14 back working, used the file as per instructions, afterwards ubuntu drive utililty shows 13 and 14 as "free." So that is where part of my problem comes from.
4th UPDATE: Fixed the problem with stock recovery. Turns out froyo doesn't like ext4 partitions. Changed cache partition to ext3, no more error.
Here are some exerts from the CMW log when I tried to flash cyanongen. Can anyone tell me if any of these errors are problems, and if they are what they mean?
W:Unable to get recovery.fstab info for /datadata during fstab generation!
W:Unable to get recovery.fstab info for /sd-ext during fstab generation!
I:Checking for extendedcommand...
I:Skipping execution of extendedcommand, file not found...
failed to open /sys/class/android_usb/android0/state: No such file or directory
-- Installing: /sdcard/CM7-070512.zip
Finding update package...
I:Update location: /sdcard/CM7-070512.zip
Opening update package...
Installing update...
unmount of /system failed; no such volume
package_extract_file: no backup_initd.sh in package
set_perm: chown of /tmp/backup_initd.sh to 0 0 failed: No such file or directory
set_perm: chmod of /tmp/backup_initd.sh to 777 failed: No such file or directory
about to run program [/tmp/backup_initd.sh] with 2 args
run_program: execv failed: No such file or directory
run_program: child exited with status 1
Pass 5: Checking group summary information
/dev/block/mmcblk0p12: 11/56448 files (0.0% non-contiguous), 7142/225280 blocks
mount: failed to mount /dev/block/mmcblk0p12 at /system: Invalid argument
set_perm: chown of 0750 to 0 2000 failed: No such file or directory
set_perm: chmod of 0750 to 755 failed: No such file or directory
set_perm: chown of /system/etc/init.qcom.post_boot.sh to 0 2000 failed: No such file or directory
set_perm: chmod of /system/etc/init.qcom.post_boot.sh to 555 failed: No such file or directory
set_perm: chown of /system/xbin/apply_firewall to 0 0 failed: No such file or directory
set_perm: chmod of /system/xbin/apply_firewall to 6755 failed: No such file or directory
set_perm: chown of /system/xbin/apply_theme to 0 0 failed: No such file or directory
set_perm: chmod of /system/xbin/apply_theme to 6755 failed: No such file or directory
set_perm: chown of /system/xbin/dumplog to 0 0 failed: No such file or directory
set_perm: chmod of /system/xbin/dumplog to 6755 failed: No such file or directory
set_perm: chown of /system/xbin/mv2sd to 0 0 failed: No such file or directory
set_perm: chmod of /system/xbin/mv2sd to 6755 failed: No such file or directory
set_perm: chown of /system/xbin/ota to 0 0 failed: No such file or directory
set_perm: chmod of /system/xbin/ota to 6755 failed: No such file or directory
Updating BOOT Image...
about to run program [/tmp/backup_initd.sh] with 2 args
run_program: execv failed: No such file or directory
run_program: child exited with status 1
Installation complete!script result was [Installation complete!]
Install from sdcard complete.
failed to open /sys/class/android_usb/android0/state: No such file or directory
My phone is fixed. I have no idea how it became fixed, but it is fixed.
I placed b518 on the internal sd card, and installed it. Then bootloop. So I held both volume keys+power to try another rom. It installed again. Went to recovery, it did a factory reset. Bootloop. Went back to recovery to see if I could wipe the sd card. No option for it, so I did another factory reset and rebooted my phone. I left my phone bootlooping for a minute while I looked online for a Huawei service center, and then my phone booted. I gues it got scared and didn't want to go to a service center.
This been a great learning experience, although at times a major headaches. I want to thank blefish for all his help. Thanks to this, i've bee reading his blog and other stuff, and now will follow some of his other projects.
Now to downgrade back to 2.2!!!!
UPDATE: All official roms are working correctly (b136, b138, b518, b528), recovery (5.0.2.6) works. However I haven't been able to get a single custom rom to work. Tried a couple .32 MIUI and CM, but they all stick at the huawei logo. Did factory reset and dalvik wipe, get error can't mount /sd-ext during dalvik wipe, and still doesn't boot.
Maybe I need to try a newer verison of CWM? I tried the newer versions before, and I didn't like them. Buggy and often wouldn't find my sd card.
This thread must be made sticky because it consists of pure information about dealing with soft-bricks. Thanks a lot for your curiosity, you're my hero.
I am trying to resize the sdcard partition on the bootable cm7 sd card image. I am able to resize it using Windows and Linux, but haven't found an easy way to do it via Mac OS using the built in sdcard reader. Does anyone know how to accomplish this?
Have you tried disk utility?
Sent from my NookColor using XDA
I have. It doesn't allow me to change the size of the last partition on the card.
You can use the Sudo command to format your card on the mac from the command line. Just type Type sudo or su -
fdisk /dev/sda
mkfs -t vfat /dev/sda1
That should format your card. Just partition with fdisk. Be sure to choose the whole device (/dev/sdc), not a single partition (/dev/sdc1).
fdisk is started by typing (as root) fdisk device at the command prompt. device might be something like /dev/hda or /dev/sda.
To check the list of devices available type fdisk -l
The basic fdisk commands you need are:
p – Print the partition table.
n – Create a new partition.
d – Delete a partition.
q – Quit without saving changes.
a – Make a partition bootable.
w – Write the new partition table and exit.
Changes you make to the partition table do not take effect until you issue the write (w) command. Here is a sample partition table:
Disk /dev/sdb: 64 heads, 63 sectors, 621 cylinders
Units = cylinders of 4032 * 512 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 * 1 184 370912+ 83 Linux
/dev/sdb2 185 368 370944 83 Linux
/dev/sdb3 369 552 370944 83 Linux
/dev/sdb4 553 621 139104 82 Linux swap
Hi,
I succesfullly rooted my Nook glowlight, but when I tried to go back to stock with my nook backup I found the backup was not ok (just 77MB) and now I have a bricked NSTG that won't get past the "Install Failed" screen.
I've tried almost every method I could find in the forums, but none worked for me.
Is there anything else beside n2T and Alpha-Format I could try to revive my device?
TIA
I think the most careful way to proceed here is to get a shell going and inspect the damage.
If you were lucky you just wiped out the first partition and the partition tables.
Reinstating the partition tables might make undamaged partitions visible.
It's important to preserve the device dependent info on the /rom partition.
If you copy over ClockworkRecovery onto an SD card you should be able to boot that.
Without selecting anything on the menus you should be able to get ADB working.
With an ADB shell you can run fdisk -l /dev/block/mmcblk0
As soon as you can get access to /rom I'd suggest that you back that up.
I'm sure somebody has other ways to get shell access.
Renate NST said:
I think the most careful way to proceed here is to get a shell going and inspect the damage.
If you were lucky you just wiped out the first partition and the partition tables.
Reinstating the partition tables might make undamaged partitions visible.
It's important to preserve the device dependent info on the /rom partition.
If you copy over ClockworkRecovery onto an SD card you should be able to boot that.
Without selecting anything on the menus you should be able to get ADB working.
With an ADB shell you can run fdisk -l /dev/block/mmcblk0
As soon as you can get access to /rom I'd suggest that you back that up.
I'm sure somebody has other ways to get shell access.
Click to expand...
Click to collapse
thanks for that I'll give it a try...
Sadly, I'm on a W7 box (not mine) and all I can see in the device manager is a nook with a yellow sign in it
ADB devices returns a blank list....
I tried updating the drivers for the nook: first uninstalled anything nooklike with usbdeview, and then pointed W7 to a folder where I had downloaded usbdrivers from this thread http://forum.xda-developers.com/showthread.php?t=1354487 but W7 keeps telling there are no drivers for nook in that folder.
If I boot without SD then the nook is recognized and USB drivers install fine. It's booting with CWM that the device is not recognized.
Stuck
There are drivers and drivers.
As a composite USB device the Nook uses both the stock Windows Mass Storage driver and the Google ADB driver.
See: http://forum.xda-developers.com/wiki/BN_Nook_Simple_Touch/Installing_ADB
Renate NST said:
There are drivers and drivers.
As a composite USB device the Nook uses both the stock Windows Mass Storage driver and the Google ADB driver.
See: http://forum.xda-developers.com/wiki/BN_Nook_Simple_Touch/Installing_ADB
Click to expand...
Click to collapse
It worked:
D:\nook_root\adbshell>adb devices
List of devices attached
11223344556677 recovery
D:\nook_root\adbshell>adb shell
~ # fdisk -l /dev/block/mmcblk0
fdisk -l /dev/block/mmcblk0
Disk /dev/block/mmcblk0: 1958 MB, 1958739968 bytes
4 heads, 16 sectors/track, 59776 cylinders
Units = cylinders of 64 * 512 = 32768 bytes
Device Boot Start End Blocks Id System
~ #
completely noob with the nook, can't seem to find /rom and Win32DiskImager does not find a device to read from to perform said backup
The best bet would be to check with somebody with a Glow to see if the partitioning is the same as the Touch.
They could have even changed the exact size of partitions over time for the same model.
In any case, here are my partitions. You might try partitioning and not formatting and see if all the pieces fit properly.
Code:
Disk /dev/block/mmcblk0: 1958 MB, 1958739968 bytes
128 heads, 32 sectors/track, 934 cylinders
Units = cylinders of 4096 * 512 = 2097152 bytes
Partition Format Id Start End Size (bytes) Mount
--------- ------ -- ----- --- ------------- --------
Total 0 933 1,958,739,968
mmcblk0p1 vfat 0c 1 38 79,691,776 /boot
mmcblk0p2 vfat 0c 39 46 16,777,216 /rom
mmcblk0p3 ext2 83 47 141 199,229,440 /factory
mmcblk0p4 05 142 926 1,646,264,320
mmcblk0p5 ext2 83 142 285 301,989,888 /system
mmcblk0p6 vfat 0c 286 405 251,658,240 /media
mmcblk0p7 ext3 83 406 525 251,658,240 /cache
mmcblk0p8 ext3 83 526 926 840,957,952 /data
Unused 927 933 14,680,064
Renate NST said:
The best bet would be to check with somebody with a Glow to see if the partitioning is the same as the Touch.
They could have even changed the exact size of partitions over time for the same model.
In any case, here are my partitions. You might try partitioning and not formatting and see if all the pieces fit properly.
Code:
Disk /dev/block/mmcblk0: 1958 MB, 1958739968 bytes
128 heads, 32 sectors/track, 934 cylinders
Units = cylinders of 4096 * 512 = 2097152 bytes
Partition Format Id Start End Size (bytes) Mount
--------- ------ -- ----- --- ------------- --------
Total 0 933 1,958,739,968
mmcblk0p1 vfat 0c 1 38 79,691,776 /boot
mmcblk0p2 vfat 0c 39 46 16,777,216 /rom
mmcblk0p3 ext2 83 47 141 199,229,440 /factory
mmcblk0p4 05 142 926 1,646,264,320
mmcblk0p5 ext2 83 142 285 301,989,888 /system
mmcblk0p6 vfat 0c 286 405 251,658,240 /media
mmcblk0p7 ext3 83 406 525 251,658,240 /cache
mmcblk0p8 ext3 83 526 926 840,957,952 /data
Unused 927 933 14,680,064
Click to expand...
Click to collapse
mmmm, a bit risky isn't it ?
I think I'll read the rest of the internets before proceeding I need to understand this.....
thanks again
srgarfi said:
mmmm, a bit risky isn't it ?
Click to expand...
Click to collapse
Well, you don't have anything at all in your partition table, not even the correct CHS.
If you tried this configuration and you can't mount the partition, then no harm is done.
It will only mount if the partition formatting makes sense.
Renate NST said:
If you tried this configuration and you can't mount the partition, then no harm is done.
It will only mount if the partition formatting makes sense.
Click to expand...
Click to collapse
Oh, ah, that changes everything! It's worth a try.
I need to find a dummy guide to perform this operations, any clues?
Edit: Found this, looks like a start http://forum.xda-developers.com/showthread.php?t=1279091
thanks again
booted in gparted live and took a peek at the Nook. This is what I found (sorry I don't know yet how to post images):
Device information
Model: B&N Ebook Disk
Size: 182 GiB
Path: /dev/sdb
Partition table: msdos
Heads: 255
Sectors/track: 63
Cylinders: 238
Total sectors: 3825664
Sector size: 512
Physical characteristics being so different I'm affraid trying to convert heads/cylinders from Renate's Touch to my Glo schema would be useless.
Could someone with a NSTG please share partition information?
Thank you all,
srgarfi said:
Physical characteristics being so different...
Click to expand...
Click to collapse
Well, they are not real physical differences.
You can juggle heads and sectors/track as long as the size of a cylinder stays the same.
It may be that the Glow has gone to a bigger cylinder, but it's suspicious that it's not a power of two.
Renate NST said:
You can juggle heads and sectors/track as long as the size of a cylinder stays the same.
Click to expand...
Click to collapse
Not good at math, I can't get an exact match
Here is a script that will partition your Nook internal SD card like the listing above.
You can either copy this to the SD card, chmod 777 it and run it
or just copy and paste it to the Windows command line window running ADB.
Then you can try some mounts and see what you've got.
(nookpart.sh is zipped.)
was about to try the script (thanks again!) but nook is stuck at "rooted forever" screen and nothing I do awakes it: power on, power on 30 sec, power on and n, plug it to pc, and every combination. Took off the sd and tried combinations again, nothing. I've searched a bit and all other cases resumed to reboot by pressing long power. Not this one....no hard reset available? Every piece of equipment must have a big red switch =)
Should I stop messing around and buy another one? (not in the states anymore, it will take like 40+ days to deliver here...)
EDIT: false alarm, battery was too low to power on. Where did the full charge go? I dunno....30 more minutes before I can try
Renate NST said:
Here is a script that will partition your Nook internal SD card like the listing above.
You can either copy this to the SD card, chmod 777 it and run it
or just copy and paste it to the Windows command line window running ADB.
Then you can try some mounts and see what you've got.
(nookpart.sh is zipped.)
Click to expand...
Click to collapse
Executed the script:
Code:
D:\nook_root\adbshell>adb shell sh /sdcard/nookpart.sh
Command (m for help): Command action
e extended
p primary partition (1-4)
Partition number (1-4): First cylinder (1-934, default 1): Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-934, default 934):
Command (m for help): Command action
e extended
p primary partition (1-4)
Partition number (1-4): First cylinder (39-934, default 39): Using default value
39
Last cylinder or +size or +sizeM or +sizeK (39-934, default 934):
Command (m for help): Command action
e extended
p primary partition (1-4)
Partition number (1-4): First cylinder (47-934, default 47): Using default value
47
Last cylinder or +size or +sizeM or +sizeK (47-934, default 934):
Command (m for help): Command action
e extended
p primary partition (1-4)
Selected partition 4
First cylinder (142-934, default 142): Using default value 142
Last cylinder or +size or +sizeM or +sizeK (142-934, default 934):
Command (m for help): First cylinder (142-926, default 142): First cylinder (142
-926, default 142): Using default value 142
Last cylinder or +size or +sizeM or +sizeK (142-926, default 926):
Command (m for help): First cylinder (286-926, default 286): First cylinder (286
-926, default 286): Using default value 286
Last cylinder or +size or +sizeM or +sizeK (286-926, default 926):
Command (m for help): First cylinder (406-926, default 406): First cylinder (406
-926, default 406): Using default value 406
Last cylinder or +size or +sizeM or +sizeK (406-926, default 926):
Command (m for help): First cylinder (526-926, default 526): First cylinder (526
-926, default 526): Using default value 526
Last cylinder or +size or +sizeM or +sizeK (526-926, default 926):
Command (m for help): Partition number (1-8): Hex code (type L to list codes): C
hanged system type of partition 1 to c (Win95 FAT32 (LBA))
Command (m for help): Partition number (1-8): Hex code (type L to list codes): C
hanged system type of partition 2 to c (Win95 FAT32 (LBA))
Command (m for help): Partition number (1-8): Hex code (type L to list codes): C
hanged system type of partition 6 to c (Win95 FAT32 (LBA))
Command (m for help): Partition number (1-8):
Command (m for help):
Disk /dev/block/mmcblk0: 1958 MB, 1958739968 bytes
128 heads, 32 sectors/track, 934 cylinders
Units = cylinders of 4096 * 512 = 2097152 bytes
Device Boot Start End Blocks Id System
/dev/block/mmcblk0p1 * 1 38 77808 c Win95 FAT32 (LB
A)
/dev/block/mmcblk0p2 39 46 16384 c Win95 FAT32 (LB
A)
/dev/block/mmcblk0p3 47 141 194560 83 Linux
/dev/block/mmcblk0p4 142 926 1607680 5 Extended
/dev/block/mmcblk0p5 142 285 294896 83 Linux
/dev/block/mmcblk0p6 286 405 245744 c Win95 FAT32 (LB
A)
/dev/block/mmcblk0p7 406 525 245744 83 Linux
/dev/block/mmcblk0p8 526 926 821232 83 Linux
Command (m for help): The partition table has been altered.
Calling ioctl() to re-read partition table
D:\nook_root\adbshell>
From CWM tried to mount /boot and failed. Took off the SD, booted nook (fingers crossed) and it displayed the "install failed" screen.
Nice try, thanks for the patience :good:
No, that's what I expected.
The partitioning worked fine
You had already bashed the boot partition.
Now try:
Code:
mkdir /rom
mount -t vfat /dev/block/mmcblk0p2 /rom
ls -l /rom
Looks like there was already a /rom
Code:
D:\nook_root\adbshell>adb shell
~ # mkdir /rom
mkdir /rom
mkdir: can't create directory '/rom': File exists
~ # mount -t vfat /dev/block/mmcblk0p2 /rom
mount -t vfat /dev/block/mmcblk0p2 /rom
mount: mounting /dev/block/mmcblk0p2 on /rom failed: Device or resource busy
~ # ls -l /rom
ls -l /rom
-rwxrwxrwx 1 root root 1088 Jan 1 02:30 bcb
drwxrwxrwx 2 root root 2048 Jan 1 02:30 devconf
~ #
Hmm, I thought of that at the last moment.
Code:
mkdir /stuff
mount -t vfat /dev/block/mmcblk0p2 /stuff
ls -l /stuff
Renate NST said:
Hmm, I thought of that at the last moment.
Code:
mkdir /stuff
mount -t vfat /dev/block/mmcblk0p2 /stuff
ls -l /stuff
Click to expand...
Click to collapse
yes, works, but I don't get it?
Code:
~ # mkdir /stuff
mkdir /stuff
~ # mount -t vfat /dev/block/mmcblk0p2 /stuff
mount -t vfat /dev/block/mmcblk0p2 /stuff
~ # ls -l /stuff
ls -l /stuff
-rwxrwxrwx 1 root root 1088 Jan 1 02:30 bcb
drwxrwxrwx 2 root root 2048 Jan 1 02:30 devconf
~ #
in the meantime I booted noogie and did a backup of the semibricked nook just in case.... =)
Now I'll write CWM to the SD and boot again
That means that the partitioning is correct and that your /rom is intact.
Make a good backup of your personalized stuff:
Code:
adb pull /stuff
Now you have to fix up the boot partition.
I'd probably try to install the factory.zip
Code:
mkdir /fact
mount -t ext2 /dev/block/mmcblk0p3 /fact
ls -l /fact
Code:
adb pull /fact/factory.zip
adb pull /fact/rombackup.zip
Then copy factory.zip to the external SD card and do a CWR update with that.