Monday, 24 December 2012

Repairing Windows XP in Eight Commands

Windows could not start because the following file is missing or corrupt:

\\WINDOWS\\SYSTEM32\\CONFIG\\SYSTEM

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.

Which renders your PC inaccessible from the standard boot procedures of Windows XP. You try safe mode, to no avail. You’re particularly savvy and try issuing the FIXBOOT and FIXMBR commands in the Windows recovery console, but after each reboot, you’re merely greeted with the same obnoxious and terrifying blue screen of death that’s preventing you from accessing your precious data.

Perhaps you’ve also seen these error screens:

Windows NT could not start because the below file is missing or corrupt:

X:\\WINNT\\System32\\Ntoskrnl.exe
_________________

Windows NT could not start because the below file is missing or corrupt:

X:\\WINNT\\System32\\HAL.dll
_________________

NTLDR is Missing
Press any key to restart
_________________

Invalid boot.ini
Press any key to restart



Allow me to build tension by prefacing the end-all/be-all solution with my background: Having worked for the now-incorporated Geek Squad branch of Best Buy Corporation for the better part of eight months, I have seen dozens upon dozens of systems come through our department with any one of these errors, brought in by customers who are afraid they did something, have a virus, or are in jeopardy of losing their data. Prior to my discovery of an invaluable sequence of commands, our standard procedure was to hook the afflicted drive to an external enclosure, back up a customer’s data and then restore the PC with the customer’s restore discs or an identical copy of Windows with the customer’s OEM license key. If the customer wasn’t keen on the applicable charges for the data backup, we informed them of the potential risks for a Windows repair installation (Let’s face it, they don’t always work right), had them sign a waiver, and we did our best.

Neither of these procedures are cheap in the realm of commercial PC repair, nor do they inspire a tremendous level of confidence in the technician or the hopeful client.

In an effort to expedite our repair time and retain the sanity of myself and other technicians, I received permission to undertake a case study on a variety of PCs currently in service that exhibited any of the aforementioned symptoms, and I took it upon myself to find a better solution. After crawling through the MSKB, Experts Exchange, MSDN and sundry websites all extolling the virtues of a solution to these problems, I only found one that worked, and it has been reliably serving me for the better part of two weeks on seventeen PCs to date. The process is simple: Get to the Windows Recovery Console for your particular Windows installation, navigate to the root letter of your installation (C: in most cases), issue eight commands, and reboot. The cornerstone of this process is a command called “BOOTCFG /Rebuild” which is a complete diagnostic of the operating system loaded into the recovery console; the purpose of the command is to remove/replace/repair any system files that were preventing the operating system from loading correctly. Amongst the files it fixes are:

Windows Hardware Abstraction Layer (HAL)
Corrupt registry hives (\\WINDOWS\\SYSTEM32\\CONFIG\\xxxxxx)
Invalid BOOT.INI files
A corrupt NTOSKRNL.EXE
A missing NT Loader (NTLDR)
The command process may apply to other types of blue screens or Hive/HAL/INI/EXE/DLL-related stop errors, but I have not had the luxury of computers in this type of disrepair. The process I am about to outline is virtually harmless, and if you feel you may be able to correct your PC’s boot-time blue screens and stop errors with the sequence, feel free to try. Let us now begin with a step-by-step instruction for correcting these issues.

GETTING TO THE WINDOWS RECOVERY CONSOLE
Insert your Windows XP CD into your CD and assure that your CD-ROM drive is capable of booting the CD. Configuring your computer to boot from CD is outside of the scope of this document, but if you are having trouble, consult Google for assistance.
Once you have booted from CD, do not select the option that states: “Press F2 to initiate the Automated System Recovery (ASR) tool.” You’re going to proceed until you see the following screen, at which point you will press the “R” key to enter the recovery console:

After you have selected the appropriate option from step two, you will be prompted to select a valid Windows installation (Typically number “1″). Select the installation number, (As mentioned, “1″ in most cases), and hit enter. If there is an administrator password for the administrator account, enter it and hit enter. You will be greeted with this screen, which indicates a recovery console at the ready:

PROCEEDING WITH THE REPAIR FUNCTIONS
There are eight commands you must enter in sequence to repair any of the issues I noted in the opening of this guide. I will introduce them here, and then show the results graphically in the next six steps. These commands are as follows:
C: CD ..
C: ATTRIB -H C:\\boot.ini
C:ATTRIB -S C:\\boot.ini
C:ATRIB -R C:\\boot.ini
C: del boot.ini
C: BOOTCFG /Rebuild
C: CHKDSK /R /F
C: FIXBOOT
To “Go up a directory” in computing is to revert back to the directory above the current folder you’re operating in. If, for example, I’m in the C:WINDOWSSYSTEM32 directory, and I want to get at a file in the WINDOWS directory, I would merely type CD .. and I would be taken out of the SYSTEM32 folder and up one level to WINDOWS. We’re going to do the same thing here from the WINDOWS folder to get to the basic root of C:

Now that we are at C: we can begin the process of repairing the operating system
and that begins with modifying the attributes of the BOOT.INI file. Briefly, BOOT.INI controls what operating systems the Windows boot process can see, how to load them, and where they’re located on your disk. We’re going to make sure the file is no longer hidden from our prying eyes, remove the flag that sets it as an undeletable system file, and remove the flag that sets it as a file we can only read, but not write to. To do this, we will issue three commands in this step:

C:ATTRIB -H C:\\BOOT.INI
C:ATTRIB -R C:\\BOOT.INI
C:ATTRIB -S C:\\BOOT.INI
to remove the Hidden, System and Read Only flags.

Now that we’ve modified the attributes for the BOOT.INI file, it’s up for deletion. The syntax for it is simple: { DEL | FILE NAME }, e.g., C:DEL BOOT.INI deletes the BOOT.INI file.

Now for the most important step of our process, the BOOTCFG /REBUILD command which searches for pre-existing installations of Windows XP and rebuilds sundry essential components of the Windows operating system, recompiles the BOOT.INI file and corrects a litany of common Windows errors. It is very important that you do one or both of the following two things: First, every Windows XP owner must use /FASTDETECT as an OS Load Option when the rebuild process is finalizing. Secondly, if you are the owner of a CPU featuring Intel’s XD or AMD’s NX buffer overflow protection, you must also use /NOEXECUTE=OPTIN as an OS Load Option. I will demonstrate both commands for the purpose of this guide, but do not set NOEXECUTE as a load option if you do not own one of these CPUs. For the “Enter Load Identifier” portion of this command, you should enter the name of the operating system you have installed. If, for example, you are using Windows XP Home, you could type “Microsoft Windows XP Home Edition” for the identifier. This gives the process some authenticity, if you’re keen on being a perfectionist.

This step verifies the integrity of the hard drive containing the Windows XP installation. While this step is not an essential function in our process, it’s still good to be sure that the drive is physically capable of running windows, in that it contains no bad sectors or other corruptions that might be the culprit. No screenshot necessary here! Just type CHKDSK /R /F at the C:> prompt. Let it proceed; it could take in excess of 30 minutes on slower computers, when this is finished move on to the seventh and final step.

This last step also requires no screenshot. When you are at the C:> prompt,
simply type FIXBOOT. This writes a new boot sector to the hard drive and cleans up all the loose ends we created by rebuilding the BOOT.INI file and the system files. When the Windows Recovery Console asks you if you are “Sure you want to write a new bootsector to the partition C: ?” just hit “Y,” then enter to confirm your decision.

RESULTS AND WRAP-UP
It’s time to reboot your PC by typing EXIT in the Windows Recovery Console and confirming the command with a stroke of the enter key. With any luck, your PC will boot successfully into Windows XP as if your various DLL, Hive, EXE and NTLDR errors never existed. You’ve just saved yourself from many hours of work, frustration, potential data loss and shelling out your hard-earned greenbacks at a brick’n'mortar operation.

0 comments:

Post a Comment