OpenSuse 11.0 Destroyed my Boot Sector

GRRRR >:(
I tried installing on a WinXP machine dual boot. Worked on it for hours, got everything working nicely, sound, DVDs, etc. Then, when I needed to restart, it hung “no operating system”. OK, no panic, put in the SUSE disk (yes, I purchased it from Novell), went through the various menus, reinstalled the boot loader, etc. Nothing.

I had a WinXP boot CD and I put that in, it boots fine, just the way it did before - except that the boot sector is gone. I tried using the WinXP disk console, fixbr, but that also didn’t work. Tried using a Win98SE disk, fdisk/mbr, also no good. So, my machine now is limping along on WinXP with a boot disk.

Obviously GRUB destroyed the boot sector. Not the first time either. I guess I’m a glutten for punishment.

How do I restore the mbr on a WinXP (SP3) machine. By the way, when I restarted in OpenSuse, I KDE did not start - no GUI.

Frustrating.

Thanks

Are you sure it is the boot sector? Is the partition set as active in fdisk? What error are you getting?

A likely scenario is that the active partition marking has shifted from the windows bootfile partition, presumably sda1, to a higher partition. If that happened then “fixmbr” correctly rewrites the generic code to the mbr but since that generic code essentially says “go find the active partition”, booting will fail because the active partition is not correct for windows any more.

Anyway, to check where the active flag is located now, put in the Suse boot dvd, boot and select to “Rescue System”.
Then log in using name: root.
Then enter the command: fdisk -l (that’s the letter l, not the numeral 1).
The console returns a list that has the active partition marked by an asterisk. The windows line should look a bit like this:

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1        1306    10490413+   7  HPFS/NTFS

Note the asterisk. It marks the active partition. Where is your asterisk?

The * is at /dev/sda1 which is listed as W95 FAT32 (LBA).

There are 4 partitions listed, I used my Win98SE disk and fdisk. I changed the active partition to all 4 partitions, just to check. It does boot at the Windows partition noted above, but it loads OpenSuse 11.0 in a non-GUI. Windows is not one of the options and I cannot get the GUI to load using sax2. Something is really weird here.

I think you are saying something like this:

Because the Grub code has been removed from the MBR and windows generic code placed there instead, the booting follows the windows style of booting and boots the active partition. so you can boot Suse or windows by moving the asterisk between partitions with the win98 fdisk utility.

But when you boot Suse, there’s no entry in the loader for windows.

And when you boot Suse, there’s no GUI.

Question 1: Is that right?

If that’s right then this is the way to go:
Step 1: restore the GUI
Step 2: restore the full Grub bootloader

Question 2: Does this look right so far?
Question 3: What is your video card?
Question 4: Have you installed any special video drivers, and if so, what?

Well, I guess I was somewhat unclear. So, I’ll try to answer line by line clearly this time. I also did some stuff last night so I’ll bring you up to date.

Because the Grub code has been removed from the MBR and windows generic code placed there instead, the booting follows the windows style of booting and boots the active partition. so you can boot Suse or windows by moving the asterisk between partitions with the win98 fdisk utility.

==> I moved the asterisk to each of the 4 partitions, only one partition is bootable, that’s the one with the asterisk which appears to be the original WinXP partition.

But when you boot Suse, there’s no entry in the loader for windows.

==> I resolved that last night. There was a post from 3/31/09 #1-5 (permalink) which I followed along. I booted up in Linux, started Yast2, and found the Windows XP section, made it the default. When I rebooted, yes, both WinXP and OpenSuse 11.0 appear (as well as another entry) but WinXP did not boot, it just restarted the menu. I also made sure that the boot is from the MBR as set forth there.

And when you boot Suse, there’s no GUI.

Question 1: Is that right?

==> Correct
If that’s right then this is the way to go:
Step 1: restore the GUI
Step 2: restore the full Grub bootloader

Question 2: Does this look right so far?
==> Sounds good, but I have been unable to restore the GUI.

Question 3: What is your video card?
==> Nvidia GeForce 8400 GS

Question 4: Have you installed any special video drivers, and if so, what?

==> No. Ahh, come to think of it, now I’m starting to see. Perhaps I can hook it up as an analog instead of digital format if necessary.

Thanks for your help.

Thanks for the clear explanation.
Let’s have a go at installing Nvidia drivers and getting the GUI going. Boot into Suse and log on as root. Be very careful operating as root. you’ll be in a console.

Enter this command: yast
A text-based version of the Yast system configurator will open. Use the tab and arrow keys to navigate. Go to Software → Software Repositories and press Enter to get the screen for Configured Software Repositories.

Tab to Add and press Enter. Arrow to Community Repos and press Enter tpo get the X in the (x) thingy. Tab to Next and Enter. After a while the screen is List of Online repositories.

Tab and arrow your way to NVIDIA repository and Enter the x into “[x] NVIDIA Repo”. Tab to OK and Enter. When asked about the Key, select [Import] and press Enter.

When you’re back at the screen Config Software Repositories, press OK and you’ll be back at Yast2 Control Centre. Select Software Management and allow it all to load fro a few minutes.

Use the search phrase nvidia. Locate in the list on the right hand side the x11-video-nvidiaG02 and press Enter to put a + sign beside it. That should (must) also put the add symbol (a+) beside one of the “kpm” packages. Check that it does. Then Tab to Accept and press Enter and follow the bouncing ball to the end of the installation.

When the drivers have been installed, get the initial Yast screen up again and select Hardware → Graphics card and Monitor and press Enter. You should now be able to configure the video.

See how that goes and if it works we can proceed to the bootloader thing.

1 more thing. Here is the output when I try to get Sax2 to open an GUI:

Sax: no X-Server is running
Sax: will start own server if needed
Sax: ups lost card during probing… abort
Sax: something went wrong while X was called with probeonly
Sax: try to call ‘sax2 -p’ and select a single device

Hope this helps. I do not that when I call sax2 -p, I get 2 video cards, which is consistent with my computer (it has the on-board video and the additional NVidia card.

Thanks
Alan

Disable the onboard video in the bios if you can.

Doesn’t let me install the Nvidia driver. Here’s what I get:

nothing provides kernel-lockdep needed for nvidia-gfxG02-kmp-loc
possible solution:
do not install x11-video-nvidaG02-180.29-0.1.i586

Stuck again.

And why are you using such an exotic kernel?

Use kernel-default or kernel-pae, nvidia does not provide kmp-packages for kernel-lockdep, the error message is crystal clear on that.

When you choose this: x11-video-nvidaG02-180.29-0.1.i586
The Yast software should choose this as a companion: nvidia-gfxG02-kpm-xxxx
and those should be the only two that are chosen. The “xxxx” can be either “default” or “pae”.
So two things:

  1. Can you make that happen?
  2. What do you get when you enter this command into the console: uname -r

Still no good. Results of uname -r:
2.6.25.5-1.1-pae

When I choose x11-video-nvidiaG02-180.29-0.1.i586 I get :
Error #1: “nothing provides kernel-lockdep needed by nvidia-gfxG02-kmp-loc”

If I try installing nvidia-gfxG02-kmp-lockdep I get the same Error #1

I tried nvidia-gfxG02-kmp-pae, got Error #1 PLUS: nothing provides kernel (pae:vmlinux)=19ac3fde1eb13345 needed.

Thanks for your help.

You are a victim of a bug in openSUSE 11.0. I don’t understand the bug except in the most nebulous way. Here are a few quotes from Novell Bugzilla for openSUSE 11.0 re this bug:

The package “kernel-source-2.6.25.16-0.1” doesn’t contain the include files
required to build modules against the realtime kernel, therefore it is not
possible to use the realtime kernel and custom built modules (such as NVidia’s
display driver) at the same time…

and

A guy on IRC reported that installing kernel 2.6.25.18 required him to remove
nvidia 173.14.12 packages …etc…etc… Actually this update breaks all kmp-Packages, which were not explicitly built against 2.6.25.5.1…

What this means for you: you are trying to install a kpm package (nvidia-gfxG02-kmp-pae) – so because of the bug it will fail.

So you have installed the RPM kernel-source at some stage and got caught. Not your fault. Can you post the version of kernel-source that is installed. You can discover the version this way: open a console and enter this command:

rpm -qa | grep kernel-source

It’s very difficult for you to proceed without a GUI. I would try for a complete update of all packages for which there were updates or newer version available. But I’ve cruised around the text-mode version of Yast’s package management module and it’s very hard.

Hopefully, while you’re getting the kernel-source version, someone will chime in on how to do the update with a single command or a couple of commands with the Zypper updater.

I did have this thought: what about you take the nvidia card out of the chassis, temporarily run with the on-board video card, fix the bootloader, fix the kernel-source bug. Then reinstall the nvidia card in the chassis. At that point, installing the nvidia drivers should work OK.

Hi,

Doesn’t

zypper up

perform the update you spoke of?

regards,
Barry.

Thanks, I tried this (seemed like the easiest thing to do). It looks like the repositories were checked and the message was: “Nothing to do”.

:frowning:

The result was: “grep-2.5.2-73.1”

Hope this helps. I have always been considered the neighborhood “geek”, but this stuff is getting way too geeky even for me!

You have a typo – the command is (note the vertical bar/pipe symbol):

 rpm -qa | grep kernel-source

But instead of that, run this version (note the vertical bar/pipe symbol):

 rpm -qa | grep kernel

And the more I think of it, the more I like this option, do you think you can do this:

…what about you take the nvidia card out of the chassis, temporarily run with the on-board video card. That should give you a GUI with which you can fix the bootloader and fix the kernel-source bug. Then reinstall the nvidia card in the chassis. At that point, installing the nvidia drivers should work OK.