[Nook Color Q&A, Help & Troubleshooting] MaGoober:
Strange, today when I opened adb, it appears that some of the entries in /dev/block have changed. mmcblk0p1 is gone and replaced with mmcblk1p1.

Yesterday I saw this

/dev/block # ls
ls
loop0 loop4 mmcblk0 ram1 ram13 ram3 ram7
loop1 loop5 mmcblk0p1 ram10 ram14 ram4 ram8
loop2 loop6 platform ram11 ram15 ram5 ram9
loop3 loop7 ram0 ram12 ram2 ram6

This is what I see today:

/dev/block # ls
ls
loop0 loop4 mmcblk0 ram0 ram12 ram2 ram6
loop1 loop5 mmcblk1 ram1 ram13 ram3 ram7
loop2 loop6 mmcblk1p1 ram10 ram14 ram4 ram8
loop3 loop7 platform ram11 ram15 ram5 ram9
/dev/block #

If my understanding is correct (and it's usually not) the "P1" indicates that this is "partition one" on the "mmcblock one" device. (or 'disk'). I'm further assuming that of the two devices shown (mmcblk0, and mmcblk1) one of them is my 8gb microsd card, and the other is the NC's internal 8gb memory. Which makes me wonder why yesterday's "ls" did not show both devices. Also makes me wonder what the 'p1' partition is, which disk it's really on, and why it appears to have moved.

I took a look at the geometries of the disks and the partition using fdisk again, I dont know what I should be looking for here, and dont know whats relevant and what isn't. I can see I have two disks of slightly different sizes, and a mystery partition of some sort that doesnt seem like it should fit on either of the two disks.

/dev/block # fdisk -l /dev/block/mmcblk0
fdisk -l /dev/block/mmcblk0

Disk /dev/block/mmcblk0: 7734 MB, 7734296576 bytes
4 heads, 16 sectors/track, 236032 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Disk /dev/block/mmcblk0 doesn't contain a valid partition table
/dev/block # fdisk -l /dev/block/mmcblk1
fdisk -l /dev/block/mmcblk1

Disk /dev/block/mmcblk1: 7948 MB, 7948206080 bytes
255 heads, 63 sectors/track, 966 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/block/mmcblk1p1 * 1 38 305203+ b Win95 FAT32
/dev/block # fdisk -l /dev/block/mmcblk1p1
fdisk -l /dev/block/mmcblk1p1

Disk /dev/block/mmcblk1p1: 312 MB, 312528384 bytes
4 heads, 16 sectors/track, 9537 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Device Boot Start End Blocks Id System
/dev/block #

Ok. I feel real stupid, obviously the mmcblk1 device is the sdcard and the p1 partition on it is the fat32 partition on it. Still leaves me wondering what happened to the geometry on the internal memory. CHS looks way off. shouldn't it be more like that of my sdcard?

*** Second Update***

I'm pulling my hair out here. I tried to correct the CHS values...no love there, even after rebooting it remains unchanged.

~ # fdisk -C 965 -H 255 -S 63 /dev/block/mmcblk0
fdisk -C 965 -H 255 -S 63 /dev/block/mmcblk0
Device contains neither a valid DOS partition table, nor Sun, SGI, OSF or GPT disklabel
Building a new DOS disklabel. Changes will remain in memory only,
until you decide to write them. After that the previous content
won't be recoverable.

Command (m for help): w
w
The partition table has been altered.
Calling ioctl() to re-read partition table
~ # fdisk -l /dev/block/mmcblk0
fdisk -l /dev/block/mmcblk0

Disk /dev/block/mmcblk0: 7734 MB, 7734296576 bytes
4 heads, 16 sectors/track, 236032 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Disk /dev/block/mmcblk0 doesn't contain a valid partition table

After trying to fix the geometry several times, and failing. I said Eff this, and tried living with the incorrect values and creating the partitions anyway. I keep getting fdisk: short write, when creating partition 8.

Anway....from start to finish here - notice the # of cylinders as I progress.

~ # fdisk -l /dev/block/mmcblk0
fdisk -l /dev/block/mmcblk0

Disk /dev/block/mmcblk0: 7734 MB, 7734296576 bytes
4 heads, 16 sectors/track, 236032 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Disk /dev/block/mmcblk0 doesn't contain a valid partition table
~ # fdisk -C 965 -H 255 -S 63 /dev/block/mmcblk0
fdisk -C 965 -H 255 -S 63 /dev/block/mmcblk0
Device contains neither a valid DOS partition table, nor Sun, SGI, OSF or GPT disklabel
Building a new DOS disklabel. Changes will remain in memory only,
until you decide to write them. After that the previous content
won't be recoverable.

Command (m for help): n
n
Command action
e extended
p primary partition (1-4)
p
p
Partition number (1-4):
Value is out of range
Partition number (1-4): 1
1
First cylinder (1-940, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-940, default 940): 9
9

Command (m for help): n
n
Command action
e extended
p primary partition (1-4)
p
p
Partition number (1-4): 2
2
First cylinder (10-940, default 10):
Using default value 10
Last cylinder or +size or +sizeM or +sizeK (10-940, default 940): 18
18

Command (m for help): n
n
Command action
e extended
p primary partition (1-4)
p
p
Partition number (1-4): 3
3
First cylinder (19-940, default 19):
Using default value 19
Last cylinder or +size or +sizeM or +sizeK (19-940, default 940): 56
56

Command (m for help): n
n
Command action
e extended
p primary partition (1-4)
e
e
Selected partition 4
First cylinder (57-940, default 57):
Using default value 57
Last cylinder or +size or +sizeM or +sizeK (57-940, default 940):
Using default value 940

Command (m for help): n
n
First cylinder (57-940, default 57):
Using default value 57
Last cylinder or +size or +sizeM or +sizeK (57-940, default 940): 114
114

Command (m for help): n
n
First cylinder (115-940, default 115):
Using default value 115
Last cylinder or +size or +sizeM or +sizeK (115-940, default 940): 236
236

Command (m for help): n
n
First cylinder (237-940, default 237):
Using default value 237
Last cylinder or +size or +sizeM or +sizeK (237-940, default 940): 281
281

Command (m for help):

at this point, I'll stop and review the changes before I commit (w) them to disk...

Command (m for help): p
p

Disk /dev/block/mmcblk0: 7734 MB, 7734296576 bytes
255 heads, 63 sectors/track, 940 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/block/mmcblk0p1 1 9 72261 83 Linux
/dev/block/mmcblk0p2 10 18 72292+ 83 Linux
/dev/block/mmcblk0p3 19 56 305235 83 Linux
/dev/block/mmcblk0p4 57 940 7100730 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

Okay, Now the number of cylinders originally being reported was 236032, I specified 965 using the -C switch, and somehow ended up with a value of 940 - still leaving the geometry out of whack. Before I go any further I will commit and (w) the pending partition table here ...

Command (m for help): w
w
The partition table has been altered.
Calling ioctl() to re-read partition table
~ # fdisk -l /dev/block/mmcblk0
fdisk -l /dev/block/mmcblk0

Disk /dev/block/mmcblk0: 7734 MB, 7734296576 bytes
255 heads, 63 sectors/track, 940 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/block/mmcblk0p1 1 9 72261 83 Linux
/dev/block/mmcblk0p2 10 18 72292+ 83 Linux
/dev/block/mmcblk0p3 19 56 305235 83 Linux
/dev/block/mmcblk0p4 57 940 7100730 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
~ #

So it appears my partition table has been written successfully. I just need to create partition 8. ... before I do that, I will reboot the NC to make sure the partition table is persistent...

fdisk -l /dev/block/mmcblk0

Disk /dev/block/mmcblk0: 7734 MB, 7734296576 bytes
4 heads, 16 sectors/track, 236032 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Disk /dev/block/mmcblk0 doesn't contain a valid partition table

...and that's a big fat fail.

At this point, It looks like my only option to ever use this NC again, is to have a stand alone bootable sd card. If anybody has a suggestion, please throw it my way.