This may be slightly off topic, and I'd like to apologize in advance for being so long-winded. But yea... here goes...
I was changing some BIOS settings (AGP aperature size) today when I noticed my system ram was running at 333, instead of it's rated 400. I changed it as well. I then saved the settings rebooted. It didn't reboot. Instead it continued to beep at me. Well after plenty of being frustrated I removed all of my RAM sticks except 1. (I have 4 512MB sticks of DDR400) It booted this time. I turned it off, inserted another stick and booted again. It worked. I insert the 3rd stick and it starts to beep again. I take the 3rd out and try the other. It beeps. I try all 4, it beeps. I take 2 out, change it back to 333, put all 4 back in... and it works. Is there some reason it would have to bump down to 333 with >2 sticks?
OK, so now the computer boots, but I get a message that the system is running in failsafe and to check my BIOS. I do, and I reset everything to "failsafe defaults." (ram still at 333) It boots, with no failsafe message. However, when I get to the bootloader (I ahve a multi OS system) I am told the partition does not exist when I try to boot Win XP, and file not found when I try to boot Ubuntu. after a little toying I find that I can boot Ubuntu up by manually changing hd0,0 in the boot sequence to hd1,0. However, when I change the Windows boot sequence from hd0,1 to hd1,1 I get an error about an invalid boot.ini file. I tried top use the windows recovery console to repair my boot.ini. bootcfg /rebuild reports some kind of failure when scanning for windows. When I went to reinstall windows, it only recognized the drive I use for storage!
One perculiar thing is that there is a screen that displays during boot-up that I am am almost positive I haven't seen before. I reads as follows:
VIA Technologiesm INC VIA VT8237 SATA Raid BIOS Setting Utility V2.21
Scan Devices, Please wait...
Press <Tab> Key into User Window
Serial_Ch0 Master: ST3200822AS
Serial_Ch1 Master: No Device
Maybe it's trying to read it as a RAID set-up? That would explain why Windows doesn't recognize it, it has no RAID drivers by default iirc. Why would it do that now though? Default settings have never produced a problem before.
Btw, it's a Serial ATA drive, but I've never had the slightest problem with it being recognized before.
Looking forward to hearing your thoughts.
So yea... I checked my fstab and the Windows partition reads sda2 instead of sda1, as it has always read before. I guess Linux was smart enough to figure out it moved on it's own... but yea. Any ideas guys? I'd rather get it back registering as hd0 / sda1... but I'll settle for getting windows to recognize the damn thing.
OK, now I'm even more confused. I switched the SATA cable to the second plug and booted. Linux still would not boot with out the Grub loader being edited to hd1,1 and Windows still mounted as sda2. However, I turned the computer off again and moved the SATA cable back to it's original place. This time Linux booted without manually editing Grub menu. Oddly enough, Windows still mounted as sda2 during boot. Upon rebooting the computer I discovered Windows still did not load, and Linux would once again not load without changing the grub menu to hd1,1...
I tried moving the SATA cable again. I started the computer and booted into Windows no problem. I rebooted the computer to make sure all was still good, when I did so I could no longer load Windows and Linux were registering on hd1 again.
Then, out of curiosity I switched the SATA cable yet again. (so it's now back in original configuration) Apparently every time I switch the cable I can boot into either OS once with no hassle. After that it goes back.
Also, one correction. Gparted tells me that Windows is on sda2 while linux is on sda1. It's always been that way, I just didn't remember. It's only hd0/hd1 which is changing. Windows won't boot if the drive is being recognized as hd1. Any more ideas?
I have figured out my problem, and just wanted to relate it here for archival purposes.
When I set my BIOS back to default, the onboard raid controller was activated. My boot priority for for hard disk used to be SATA then IDE. When the raid controller was activated SATA got knocked off and the RAID controller was tacked onto the bottom. This resulted in the IDE drive booting first, and therefore being asigned to hd0, leaving the SATA to hd1. You can correct this by either a) moving the RAID contrroller to the top, or b) disabling the RAID controller and puting the SATA drive on top.
Also, the reason the RAM runs at 333 with >2 sticks is because the motherboard is designed that way. It can only run DDR400 with 1 or 2 sticks. It sucks, but at least I know.