Showing posts with label hardware. Show all posts
Showing posts with label hardware. Show all posts

Monday, April 07, 2008

How To Recover from "Windows could not start because the following file is missing or corrupt"

Or "How I Spent My Weekend".

Myron turned on the home PC Saturday morning and was greeted with this:
Windows could not start because the following file is missing or corrupt

C:\windows\system32\config\system missing or corrupt

You can attempt to repair this file by starting windows setup using the original setup CD-Rom. Select "r" at the first screen to start repair.

Luckily I have a laptop, so I Googled the error and found what looked like a very nice writeup at Help2Go. As I started reading it I got bogged down in the links that kept getting deeper and deeper, eventually going back to an article about backing up your hard drive using a Knoppix Live CD. Here's what I did that eventually fixed the issue. This is the abridged version, I tried lots of other things and didn't finally get the computer up and running until around 8:00 Sunday night.
  1. Insert the Windows XP CD and boot from it. I'm using an ASUS motherboard so this meant pressing F8 for the boot menu, then selecting my DVD drive. Another option is to go into your BIOS settings and change your boot order, if it's not already set to boot from CD.
  2. Start the Recovery Console by pressing R from the Welcome screen.
  3. Select your installation of Windows XP. Unless you're using dual boot there should only be one.
  4. Wait for the console to load, then enter chkdsk /p /f . The article on Help2Go says to just use the /p switch, but after looking at the parameters of chkdsk I realized that only tells you if there are problems. You need /f to fix them.
  5. Reboot the computer from the XP CD again. At the screen where you pressed R before (for the recovery console), press Enter.
  6. Accept the license agreement. Now you should see a list of Windows XP installations. Again, unless you have a dual boot configuration there should only be one. Make sure it is selected, then press R to start the repair.
  7. IF REPAIR IS NOT AN OPTION, STOP! Read this. I had to use the tip from Alex Nichol, but I'm not going to post it here because it's definitely an edge case.
After I did all this I was able to boot into Windows XP, but I was still curious what had happened. The chkdsk utility said it found and corrected errors, but what exactly? My PC was powered off, so what caused it to fail during startup? I'm using Seagate hard drives, so I downloaded the SeaTools utility, burned it to a CD from my laptop, and booted from it. I ran their long tests and that turned up no errors on my C drive, but 31 errors on my D drive. It also said that my D, which is where I keep my Windows page file, had hit a temperature in excess of 70C. I'm not sure how that's possible when the two drives are millimeters apart and the other one is perfectly fine. I'm also not sure how a failure of my D drive would cause my C drive to go wonky, either. Perhaps something was being written to the page file, the second drive died, and it caused data corruption on the first drive.

Needless to say I'll be replacing both drives as soon as I can. In all the time I've been using Windows this is the first time anything like this happened to me. I can't say it's entirely Windows' fault, either.

Wednesday, October 24, 2007

Recipe for Exchange Flambe

A flambe consists of a filling of some sort, something flammable, and an ignition source.

Ingredients



The gooey filling
2 Windows 2003 Servers running Exchange 2003 SP2, clustered
1 shared external hard drive array (RAID 5)

The flammable parts
0 IT staff who were involved in setting up current environment
0 documentation of current environment

The ignition source
1 recently hired Network Administrator who is on his way out after three months because he's a dumbass
1 new Network Administrator (to replace the above)
1 incompetent support person

Assembly Instructions



We're going to assemble our flambe in layers. First a bit of prep work
  1. Old Network Administrator gives new Network Administrator access to the domain administrator account. On his first day.
  2. Old Network Administrator leaves New Network Administrator to poke around Active Directory to learn the structure of things.
  3. It is Old Network Administator's last day, so he is gone. Old Network Administrator didn't set up any of the current environment, but he had some knowledge of it.
  4. New Network Administrator realizes most servers have some level of local security implemented, so he downloads and installs a software package on all the servers.
At this point we have an unstable environment, and nobody but the New Network Administrator has any idea that anything has changed. So now we need to start working on the gooey filling.
  1. Something in the software breaks the driver for the card that connects the Exchange server to the external RAID array.
  2. The RAID array starts flashing a light indicating a connectivity error.
There are a few directions to go from here:
  • Call support
  • Reboot the servers, then call support if it doesn't reconnect
  • Power down the servers, reboot the array, reboot the servers, then call support if it doesn't reconnect
Sometimes the obvious choice is the worst. Time to add some fuel.
  1. New Network Administrator calls HP Support.
  2. Support identifies one drive has a significant number of errors.
  3. New Network Administrator is instructed to upgrade the firmware on the drive.
  4. After the firmware is upgraded the drive is offline.
  5. It is pulled and reseated to allow the array to reinitialize it.
  6. The RAID controller doesn't recognize the new firmware, and it is flagged as failed.
Connectivity to the RAID array is spotty, and the servers are failing back and forth every few seconds. The Quorum, Transaction and Data drives are on different arrays and end up getting mismatched. Let's add another layer of fuel.
  1. New Network Administrator discovers the hardware failure in Device Manager and applies all outstanding Windows Updates.
  2. Because the servers are failing back and forth at a rate of about every five seconds, the connectivity to the array is sporadic and this causes the drives to start thrashing.
  3. With one drive already in a failed state, another one starts flashing a warning.
The only thing left to do is light it up!
  1. New Network Administrator pulls the drive flashing a warning. While another drive is offline.
And there you have it: one very dead Exchange 2003 cluster! All it takes is a little bit of knowledge, a lot of ignorance, and an incompetent support person.

An HP support rep finally came on site, dug through some logs, and determined that the firmware that was installed was completely wrong for our environment. Also, there is a known problem with one particular Windows update that breaks the installer for the drivers, so new drivers can't be installed and the old ones can't be reinstalled.

He replaced the failed drive, let the array rebuild, replaced the drive that had the bad firmware, and by some miracle we were able to recover three of our five Exchange storage groups. Now the New Network Administrator and the PC Tech are piecing together backups and trying to reconstruct messages from logs on our SMTP relay.

Wednesday, May 02, 2007

hardware upgrades...

I'm really not much of a geek, as those things go. I don't have a wireless network at home. I don't dismantle security tags for the fun of it. Twice. However I did build my own computer, and I am very proud of what I have achieved with my SFF cube computer I built it September 2006, then upgraded the monitor and video card in December.

I'm running a Dell Precision 470 workstation at work with dual Xeon CPU's and the performance difference between that an my Athlon 3500+ at home is tremendous. I'm going to be doing more work from home soon, so I need something that doesn't bog down quite so much. Currently making its way to me: AMD ATHLON 64 X2 5600+. This, combined with the new car, and another soon-to-be-announced surprise, and I'm a very happy camper. :-)