disk 0 and disk 1 roles reversed

Allen Lau

Member
I upgraded Dell 1747 with second SATA 500GB HDD. Windows marked the second disk as disk 0 (the original Windows is disk 1). Both Windows Manage and easyBCD list contents of each disk correctly.
Problem is picking a partition in "add new entry" from disk 0 ends up booting a disk 1 partition.

Disk 0 has linux Fedora13 and disk 1 Windows 7, booting a linux entry from disk 0 fails because ntfs is found. I also tried new entry "auto configured linux" but both easyBCD discovered Windows and Linux partitions roles are reversed.

I am running BCD 2.0.2. The last thing I tried is "NeoGrub" and editing menu.lst (hd1,1) which allows easyBCD to find a partition with ext2fs. However, it cannot find the root partition. Is it necessary to add "/boot" in "kernel /vmlinuz" in menu.lst? Without "/boot". neoGrub fails with "kernel /vmlinuz-2.6.33.3-85.fc13.i686.PAE not found". The actual linux menu.lst does not need "/boot" but assumes /boot is that path.

Windows adds new disk as disk 0 but Linux sees the new disk 0 as hd1. Any suggestion on adding a new boot entry for linux from disk 0?

My c:\NST\menu.lst
-------------------------------------
default=0
timeout=5
splashimage=(hd1,1)/boot/grub/splash.xpm.gz
hiddenmenu
title Fedora13 (hd1,1) (2.6.33.3-85.fc13.i686.PAE)
root (hd1,1)
kernel /boot/vmlinuz-2.6.33.3-85.fc13.i686.PAE ro root=/dev/mapper/vg_bigun2-lv_root rd_LVM_LV=vg_bigun2/lv_root rd_LVM_LV=vg_bigun2/lv_swap rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us rhgb quiet
initrd /boot/initramfs-2.6.33.3-85.fc13.i686.PAE.img



moz-screenshot.png
moz-screenshot-1.png
 
If you boot from disk 0, it should read (hd0,1) in your menu.lst. Check your BIOS boot order/physical connections, and adjust as needed.
 
When the new disk was added, bios listed the new disk first in boot order. Would that caused the new linux disk to be disk 0 and old Windows 7 disk to be disk 1?

1) I reported a problem of "add new entry" -> linux/BSD in the easyBCD menu and linux partition from easyBCD drop down and resulted in that linux entry attempted to boot but failed due to NTFS filesystem type 0x08 found. So, problem was boot entry on disk 0 part 2 was booting disk 1 part 2.

2) I reinstalled linux to the first partition of disk 0 and add new entry with "MBR not installed to bootsector". This entry showed up as "auto configure". Booting this entry found the linux boot record. DOSGRUB showed it was using device (hd0,0) but failed because it found VFAT of the windows disk. It gave me the idea of editing the boot device in DOSGUB prompt to (hd1,0). it worked!!!!!!! After the boot, I checked the real /boot/grub/menu.lst and the real root is "root (hd0,0)". So, booting (hd0,0) went to (hd1,0) and editing in DOSGRUB prompt to use (hd1,0) succeeded in booting (hd0,0).

Having to edit the boot device every boot is not good. I was hoping that neoGrub
can save the day with c:\NST\menu.lst but neoGrub developed persistent memory of previous failed config. I tried removing menu.lst from c:/NST and "remove/ reconfigure" from menu. A new neoGrub entry name was listed but upon boot into the new entry, DOSGRUB was displaying stale failed config.

Is there anyway to refresh just the neoGrub config? I am hesistent to discard the "auto configure" entry which works half way. Thanks.



to match
 
Instead of trying to make grub or EasyBCD fiddle with disk numbers, change your BIOS boot sequence to put the W7 HDD back on top, so that windows sees itself as Disk 0 again.
 
Back
Top