[opensuse] how to remove extra grub from a tertiary disk?
I have a machine with a third / add-on controller. On that controller there is a drive that has a copy of an old windows OS that I need to keep. When I boot normally from my primary drive, grub2 currently offers a boot option for that tertiary drive partition as a 'windows loader' and if I choose it I go right into that windows OS. That's fine. But, when I make that tertiary drive the boot drive (through bios selection) I don't go directly into that windows OS but instead get a grub from an old opensuse 12.3 installation. The 12.3 OS is gone but its grub is still there. So, question is, how do I get rid of that old extra grub on the tertiary disk and replace it with generic code so that it boots whatever the active partition is? FWIW, this machine has many OS installed but main OS boot is Leap 42.1 and DE is LXDE (gtk). Thanks in advance, especially if this is a dumb question :-/ Ralph -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse+owner@opensuse.org
On 15/05/17 09:57, listreader wrote:
I have a machine with a third / add-on controller. On that controller there is a drive that has a copy of an old windows OS that I need to keep. When I boot normally from my primary drive, grub2 currently offers a boot option for that tertiary drive partition as a 'windows loader' and if I choose it I go right into that windows OS. That's fine. But, when I make that tertiary drive the boot drive (through bios selection) I don't go directly into that windows OS but instead get a grub from an old opensuse 12.3 installation. The 12.3 OS is gone but its grub is still there. So, question is, how do I get rid of that old extra grub on the tertiary disk and replace it with generic code so that it boots whatever the active partition is?
FWIW, this machine has many OS installed but main OS boot is Leap 42.1 and DE is LXDE (gtk).
Thanks in advance, especially if this is a dumb question :-/
No it's not a dumb question. It always used to be "fdisk /mbr" in windows, but I don't think you can do that now. If you've got a Windows install CD/DVD it can be done from recovery mode easily enough. I'd google for "Windows repair mbr" or something like that. How to make sure it overwrites the correct mbr is the problem ... (MS will assume they can overwrite them all :-) Cheers, Wol -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse+owner@opensuse.org
On Monday, May 15, 2017 3:57:06 AM EDT listreader wrote:
I have a machine with a third / add-on controller. On that controller there is a drive that has a copy of an old windows OS that I need to keep. When I boot normally from my primary drive, grub2 currently offers a boot option for that tertiary drive partition as a 'windows loader' and if I choose it I go right into that windows OS. That's fine. But, when I make that tertiary drive the boot drive (through bios selection) I don't go directly into that windows OS but instead get a grub from an old opensuse 12.3 installation. The 12.3 OS is gone but its grub is still there. So, question is, how do I get rid of that old extra grub on the tertiary disk and replace it with generic code so that it boots whatever the active partition is?
Your 42.1 grub2 is booting windows by chain loading from the grub code installed on your primary drive boot partition to the windows partition boot sector on the tertiary drive where its boot code and OS lives. The MBR on eiher drive is not in this equation as far as windows is concerned. I presume that on the tertiary drive you have tried setting the active/boot flag on the windows boot partition, and that does not work. I.e., regardless where you set the flag, you get the dead 12.3 grub every time. That suggests that grub was installed to the MBR with a hard-coded pointer to the partition boot sector of whatever partition you had 12.3 previously installed on. If you simply want to replace the tertiary MBR, install the "master-boot-code" package and as root do: dd if=/usr/lib/boot/MBR of=/dev/sdx bs=440 count=1 (where x is the tertiary drive). The will overwrite the code but not disturb the partition table or disk signature. If you want the tertiary windows to boot, all that should be needed now is to set the boot/active flag on that partition. If you want to multi-boot from the tertiary drive, you also can of course install opensuse to another partition with grub installed in that partition's boot sector, and chainload from it to windows on that drive plus directly boot (or chainload) 42.1 on your primary drive. -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse+owner@opensuse.org
On Mon, 15 May 2017 19:26:51 +0100
Wols Lists
Windows install CD/DVD it can be done from recovery mode easily
How to make sure it overwrites the correct mbr is the problem ... (MS will assume they can overwrite them all :-)
Indeed. And THAT is exactly why I needed a linux method. Thanks. Ralph -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse+owner@opensuse.org
On Mon, 15 May 2017 14:35:25 -0400
Dennis Gallien
On Monday, May 15, 2017 3:57:06 AM EDT listreader wrote:
If you simply want to replace the tertiary MBR, install the "master-boot-code" package and as root do: dd if=/usr/lib/boot/MBR of=/dev/sdx bs=440 count=1 (where x is the tertiary drive).
Excellent. Thank you very much. Will try this overnight. Ralph -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse+owner@opensuse.org
participants (3)
-
Dennis Gallien
-
listreader
-
Wols Lists