• We’re currently investigating an issue related to the forum theme and styling that is impacting page layout and visual formatting. The problem has been identified, and we are actively working on a resolution. There is no impact to user data or functionality, this is strictly a front-end display issue. We’ll post an update once the fix has been deployed. Thanks for your patience while we get this sorted.

I thought I could fix the boot order in GRUB . . . oh, dear.

Felecha

Golden Member
I'm in the middle of my learning about linux and dual booting. Still banging into things in the dark. Two 80GB hard drives, XP Pro SP2 on the first, the second is partitioned into the first 40 for plain Windows storage, the back half is where I put Linux.

I had RedHat 9 a while back and then in the late fall I tried Fedora Core 4. They had GRUB with grub.conf, which I finally sort of figured out. I learned how I could change the order of what showed at the GRUB window at boot. But that was long ago.

Then I had troubles with FC and tried SUSE ( this is largely trying linux, I still mostly live in Windows). SUSE of course wrote its own GRUB, and put itself at #1 and Windows at #2. That was OK, when I was exploring SUSE it was convenient to have it at #1. Then maybe 2 months ago I left off, and havent had to go back to SUSE for a while. On my rare reboots I would just navigate down to Windows and go on in.

Today I thought Hey, lets go in and just edit the grub.conf to make Windows #1 in the list, I used to know how to do that in FC. So I looked for grub.conf and it didnt seem to be there, but I found menu.lst, which looks an awful lot like it. I did a quick google for menu.lst and concluded that SUSE uses that to onfigure GRUB rather than grub.conf. I didn't see the same contents as I was used to in grub.conf, and was puzzled, and since it simply looked like the order was whatever the order was in the file, I moved Windows up above the SUSE entry. Well, that didn't do too well, so I managed to get back to SUSE and went in and I'm very sure all I did was reset the menu.lst file to the way it was before, and now its a mess.

When it boots and comes to the screen that says GRUB loading . . . instead of going next to the nice blue and white choice screen I get a very fast look at a screen that has a list in a format that resembles the BIOS screens. It shows

SUSE
Windows
Floppy
Failsafe

and gives me no time to try to navigate up from the highlighted Windows entry to the SUSE entry. Bang - I'm into the DOS screen asking me if I want SAFE MODE or last good config and all that.

I cant find any way to get back to SUSE to try to get a good menu.lst.

And windows boots to my desktop but with no taskbar, no shortcuts, just the blank wallpaper.

I'm really stumped.

I've considered FIXMBR, but that would cut me out of SUSE for good, wouldnt it? And I'm not sure what the Windows would be when I'm done.

How can messing up the MBR cause Windows to come up sort of crippled like that?

 
Oh yes, along with it, when it does boot to Windows, after the Splash screen I get a blank screen for MINUTES before the Welcome screen comes up
 
Oh yes, along with it, when it does boot to Windows, after the Splash screen I get a blank screen for MINUTES before the Welcome screen comes up
 
moving right along

I finally realized I could probably use the SUSE install CD (I downloaded SUSE long ago and copied it to CD). So I set BIOS to boot the CD, and was able to use that to get back into SUSE. I looked long and hard at the menu.lst, and there's just nothing wrong with it that I can figure.

After much playing around I remembered that the last time I got out of SUSE before the trouble, I used the menu option to Restart > Windows. Now that I can get back into SUSE I tried Restart > SUSE 10. Now instead of giving me no real choice, just running straight to Windows, when I boot it runs straight to SUSE, with that same half-second flash of the BIOS-looking screen.

So I figured that SUSE's response to using the menu option for Restart was locking something in. This time I just hit Restart, and presto! I get the normal GRUB blue and white choice screen. OK, I'm partway back.

But Windows still boots to a crippled state - I would call it one where explorer.exe is dead. No buttons, no taskbar, the Windows key does nothing, no right click on the desktop does anything, I can't see how to DO anything with what I see on the screen.

So somehow the initial mistake I did, whatever it did to windows, something is screwed. I guess that is now something separate from how I get to windows through GRUB. Looks like a reinstall of Windows. But I can't imagine how messing with menu.lst could do anything to Windows itself.
 
No clue at all on how to fix your problem but was wondering if you have tried to repair SUSE with your dvd?

I'm not sure if that will fix it or even not damage Windows more but that's what I would do. I also don't care about screwing up my OS as I will just reinstall everytihng as I don't have anything important. I also learn more from trying new things out so maybe you'll want to wait before trying my methods and se what others have to say.

You can change the boot order more easily in YaST. Go to System>Bootloader then click on whatever you want to start up and click "Set as Default". I know it's no help now but maybe for future use.

Edit: I guess I'm a slow typer. Your last post wasn't there when I started. 🙂
 
Well, I tried YAST and when I got to the System area and clicked on Boot loader it did nothing. All the other icons did things but not that. I was hoping it would let me choose what I wanted and then IT would write the new configuration to menu.lst.

But the more I play with this the more I figure XP really is messed up, whether I ever learn why or not.

But am I right - if I get out the XP disk and go to Setup and all that i can just rewrite the windows system files and outside of losing personal settings like Desktop scenery and appearance settings i will be cleaned up?

 
The simple hacky way is to boot from your SuSE dvd and select the upgrade option. It'll go through and re-write your grub stuff. That's how I fixed many grub/lilo mess ups when I was first learning.

I'm not too familiar with SuSE myself...
 
yeah, this can be really frustrating, one time, i screwed up grub, and just did a format. but, it still lived! i couldnt boot the drive. so, then i did a zero-fil. and that didnt do anything! it just kept coming up with some weird Grub error when i tried to boot the drive. so, i had to run about 2 straight days of DBAN to get rid of that sucker.
 
That's really strange how you can't get in the bootloader item in Yast.. Verify that the yast2-bootloader package is installed, login as root, and run "yast2 bootloader" and tell us what happens.
 
I don't think the grub config being messed up is related to your windows stuff being messed up, unless you have a stale version of Windows or something that it's trying to boot into or something weird like that.

If you want to be absolutely sure you can boot up in your Windows XP install disk in 'recovery mode' and run the fixmbr stuff.

This will blow away your grub install. This will make the Suse system unbootable, but it isn't that horrible since you can use a live cdrom to reinstall the bootloader. Only try the Windows fixmbr stuff though if your comfortable about restoring the grub stuff later. I am not exactly sure about how to do it with Suse's dvd or Yast, which would be the prefered method.

the way I'd do it myself when running most Linux installs is to run from a chroot'd enviroment.

I'd boot up from a live cdrom like the latest knoppix cdrom.

For example if your running a install on /dev/hda2...

mkdir /harddrive
mount /dev/hda2 /harddrive
mount -t proc proc /harddrive/proc
mount -t sysfs sys /harddrive/sys # only if your running 2.6 series kernel on the live cdrom
cd /harddrive
chroot ./ su -


Now you can run commands as if you were actually running the OS from the disk. Most distros have a grub-install program to install grub. You can edit the menu.lst file easily. That sort of thing. You only need to run the grub-install script if you are reinstalling grub. If your simply making a change to the configuration file then changes are automatic and you don't have to run the grub-install stuff.

This sort of thing works for other bootloaders such as lilo.. even though after making a configuration change you have to run the lilo command, unlike you have to do with grub.

Some variations you may run into are things like if you have a seperate /boot partition your going to have to use some options for the grub-install script and have /boot mounted in your chroot enviroment. Read the grub-install man page and such.

Sometimes you have to mount /dev/ directory to get access to certain hardware resources in the chroot enviroment...
You'd go something like the following before entering the chroot enviroment...
mount -o bind /dev/ /harddrive/dev
or
mount -o bind /KNOPPIX/dev /harddrive/dev
Usually you don't have to do something like that.

For Suse they should have a version of yast that can be run from the command line, but I am not familar with it and haven't used Suse for a good long time.

After your finished with your chroot enviroment then you go:
exit
cd /
umount /harddrive/dev
umount /harddrive/proc
umount /harddrive/sys
umount /harddrive

then you should be able to reboot.
If you installed software or run a bunch of commands from the chroot enviroment there maybe some programs running in the background that may prevent you from easily umounting everything. You can use commands like 'lsof |grep harddrive' to find those programs out and then you can use the kill command to stop them.

If that doesn't work then just go ahead and run the 'sync' command a few times over 10 seconds or so then go ahead and reboot.


Knowing how to run in a chroot enviroment is very handy.. It can be used to run commands, install software, recover from bad kernel installs and all sorts of stuff. I use it for backing up my OS sometimes.

For future reference in your menu.lst file all you have to edit to change your boot order is find a line looking like:
default 0

and change that default entry to point at the correct entry in your grub menu setup. 0 is the first entry, 1 is the second, 2 is the third, in programming style were the first number is 0.

You can add that line if it's missing, details are in the menu.lst man file usually.

Hope that helps and is not to confusing.
 
Originally posted by: SleepWalkerX
That's really strange how you can't get in the bootloader item in Yast.. Verify that the yast2-bootloader package is installed, login as root, and run "yast2 bootloader" and tell us what happens.


that command will probably work from a chroot'd enviroment also.. for rescue purposes. (I am not that familar with Suse, unfortunately.)
 
you can remove grub by booting off a 98se or me disc or startup disc.

run from promt ( fdisk /mbr)

 
Originally posted by: RPB
you can remove grub by booting off a 98se or me disc or startup disc.

run from promt ( fdisk /mbr)

That will blow away everything. Make Suse unbootable, make Windows unbootable. Plus it does a incomplete job, lilo and boot-style viruses can survive that easily and cause boot up problems later on if you try to reinstall Windows.

There is a very very good reason why Microsoft never documented that command. It's bad.

The correct method is to boot from a Windows XP install cdrom from the recovery console and run the fixmbr command.
http://www.microsoft.com/resources/docu...ll/proddocs/en-us/bootcons_fixmbr.mspx

That will make it so that it restores the Windows bootloader back to it's defaults and removes the Linux bootloader. You do that if you want to uninstall Linux.
 
Originally posted by: drag
Originally posted by: RPB
you can remove grub by booting off a 98se or me disc or startup disc.

run from promt ( fdisk /mbr)

That will blow away everything. Make Suse unbootable, make Windows unbootable.
Not necessarily. The default MBR installed by "fdisk /mbr" should pass boot control to the partition marked "bootable" in the partition table. This is most likely the Windows partition, since Windows will set the "bootable" flag for its partition during installation. In that case, Windows should boot properly.

But I agree that using the recovery console's "fixmbr" command is the more reliable choice.

 
Back
Top