First, some information about how the boot process works. When you power up a computer, the system BIOS tells the computer which drive to boot from. The computer then tries to read the Master Boot Record from the designated drive. The code stored in the Master Boot Record then searches the drive for the active partition.
Once the active partition has been loaded, the system locates the boot sector. The system then begins executing the file that the boot sector points to. In Windows operating systems that are based on the NT kernel (Windows NT, 2000, XP, Vista and Windows Server 2003), the boot sector causes the system to execute the NT Loader (Ntldr) file. In older versions of Windows not based on the NT Kernel (MS DOS, Windows 95, 98, ME), the boot sector points to IO.SYS.
That's the boot process in a nutshell. Two main things can go wrong with the boot process.
1. If the Master Boot Record looks for the active partition and the boot sector, and no active partition exists; or if the system cannot locate a boot sector on the active partition, the boot process will come to a grinding halt. The exact error message displayed will vary from one system to another, but is typically one of the following:
- Invalid partition table
- Error loading operating system
- Missing operating system
2. The boot sector is found, but the Ntldr file is missing or damaged. If that happens, the exact symptoms of the problem will vary. The system may lock up or it may display an error message similar to one of the following:
- Ntldr is missing
- Ntldr is compressed
- A disk read error occurred
Several circumstances can cause this problem. It can occur if the Ntldr file is deleted, moved or renamed, or if the Ntldr file is damaged, or if the boot sector itself becomes damaged (or infected by a virus) so that it points to the wrong location.
The problem can also occur if you were to install an NT Kernel-based operating system, then later installed an operating system not based on the NT Kernel, i.e., if you were to install Windows XP, then later installed Windows 98 on the same system. In a situation like this, Windows 98 would overwrite the boot sector, and the boot sector would no longer point to the Ntldr file as a result.
Repair techniques for boot problems
There are two basic techniques for repairing these types of boot problems: using the Recovery Console and manually repairing the disk's partition table.
The preferred method for fixing boot problems involves using the Recovery Console to boot the system to a command-line environment. You can then employ a utility called FIXMBR to repair the Master Boot Record. Although this technique rebuilds your Master Boot Record, it has no effect on the partition table. If the partition table was damaged by a virus or otherwise corrupted, this technique probably won't work.
Warning: If you use the above technique, you can further damage the system if any of three conditions exist:
- The system is infected by a boot sector virus, and a non-Microsoft operating system is also installed on the system.
- You used a third-party disk utility to create a non-standard Master Boot Record.
- The system has hardware problems that have not yet been corrected.
The actual repair technique varies slightly from one version of Windows to another. What follows is the technique for repairing the Master Boot Record on a system running Windows XP, since that seems to be the operating system most in use today. But the technique should be very similar for any version of Windows.
- Boot the system from the Windows installation CD.
- When prompted, press R to repair the system. Setup may prompt you as to which installation you want to repair. If you have more than one copy of Windows installed, be sure to select the copy that you are having problems with.
- At this point, the Recovery Console will load and will prompt you to enter the local administrator's password. Keep in mind this is often different from the domain administrator's password.
- Once you enter the password, you'll be taken to a command prompt. Type FIXMBR and press enter.
Once you've performed these steps, you can use the FIXBOOT command to write a new boot sector to the system partition. Be sure to specify the drive letter for the drive that you want to repair (FIXBOOT C: ).
About the author: Brien M. Posey, MCSE, is a Microsoft Most Valuable Professional for his work with Windows 2000 Server, Exchange Server and IIS. He has served as CIO for a nationwide chain of hospitals and was once in charge of IT security for Fort Knox. He writes regularly for SearchWinComputing.com and other TechTarget sites.