On Saturday, February 04, 2012 10:16 PM James Knott wrote:
Dennis Gallien wrote:
When you tried using the /boot PBR sector, what did you do with the code in the MBR?
????
All I did was change the configuration in Yast.
Whatever code that gets installed to the MBR stays there until it is over- written with different code. The BIOS always calls the code in the MBR in the designated boot disk. If there is no code in the MBR the disk cannot boot unless a PBR is called from some other boot loader. The boot sequence works in one of 2 ways: There is grub stage1 code in the MBR which has a pointer to that partition on which to find its grub stage2; it hands off to that partition's stage2 code. Or, there is generic (actually DOS) code in the MBR which reads down the partition table for the active flag, the first it finds it then calls the grub stage1 in that PBR (this is also how Windows works) which will again have a pointer to locate stage2 which is usually on that same partition but can also be on another partition (so e.g., grub stage1 in the extended primary PBR can point to stage2 in one of the logicals within the extended). AFAIK if YaST installs grub to the MBR and later is instructed to install grub to a PBR but the generic code is not installed to the MBR at that step, the original grub in the MBR will remain there. There can be a legitimate reason to have grub in both the MBR and the PBR, e.g., where there are more than one Linux instances on the disk and the MBR boots the primary instance which on its grub menu has a chainloader stanza to boot the second instance from its PBR. To see what is in the MBR, I do: dd if=/dev/sd<x> of=mbr bs=440 count=1 xxd mbr That gives a hex dump of the code. You see if code is installed and from the literal displayed, which boot loader code it is. -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse+owner@opensuse.org