Diagnosing Windows NT boot problems

Archived content. No warranty is made as to technical accuracy. Content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.

By Brien M. Posey, MCSE

Published in TechRepublic's Windows NT Support Professional

Have you ever had a PC running Windows NT fail to boot? If so, you probably found out that the boot process is nothing like the processes DOS and Windows 95/98 use. In this article, we'll explain the Windows NT boot process. As we do, we'll show you several problems that can make Windows NT fail to boot and how to fix them.

The boot process

As we mentioned, the Windows NT boot process is significantly different from that used by other operating systems. If you're familiar with DOS or Windows 95/98, you may know that the computer loads the IO.SYS file followed by the MSDOS.SYS and COMMAND.COM files. However, in Windows NT, none of these files exist (unless you're running a dual-boot system).

When you boot Windows NT, your computer first looks at the boot stamp on your hard disk. This is an area reserved by your computer's BIOS—its primary function is to tell the computer what file to load first. In DOS and Windows 95/98, the boot stamp tells the computer to load IO.SYS. However, on computers running Windows NT, the boot stamp points to the NTLDR file. The NTLDR file begins the boot process. The computer then loads NTDETECT.COM and NTOSKRNL.EXE or BOOTSECT.DOS. It also loads the BOOT.INI file; ours is shown in Figure A. (We'll discuss the BOOT.INI file in more detail later.) Now that you know what files are used during the boot sequence, let's look at some of the problems that can occur during boot and how to fix them.

Figure A The BOOT.INI file specifies the location of the main operating system files.

Cc750073.boota(en-us,TechNet.10).gif

A word about NTFS

Before we begin, we should point out the infamous Windows NT paradox. Many boot problems can be caused by missing or damaged files. However, if your boot partition is formatted with NTFS, Windows NT must be running in order to make changes to files contained within the partition. There are actually several ways of getting around this problem.

We recommend installing DOS or Windows 95/98 prior to installing Windows NT. When you do install Windows NT, you should leave your boot drive in the FAT format (you can still format the partitions containing your data as NTFS). By doing so, you protect your system. If Windows NT ever crashes, you can boot to DOS or to Windows 95/98 to fix the damaged files.

Unfortunately, doing so is impossible in some situations. DOS and Windows 95/98 can't access the hard disk on some PCs with hardware implementations of RAID. In such situations, or in situations where security is a top priority, you can provide yourself with some measure of protection by installing a second copy of Windows NT in a different directory. Sometimes, if Windows NT crashes, you can boot the backup copy and use it to repair the damaged files. This technique doesn't always work, however, because both copies share some of the boot files.

If you run into a situation in which you can't boot Windows NT and you can't access the hard disk to repair the damaged files, try to install a new copy of Windows NT to a different directory. Doing so will refresh most of the files used during boot-up.

No boot menu

One common boot problem is that the boot menu disappears. This problem is almost always self-inflicted. If you want to set up a dual-boot system, you must install the alternate operating system before you install Windows NT. If you install Windows NT first and then install another operating system, it will overwrite the boot sector, and the PC will no longer look for the NTLDR file.

The solution to such a problem is to simply install a new copy of Windows NT to a different directory. Doing so will make NT bootable. You can then edit your BOOT.INI file and remove any references to the new copy.

Problems with NTLDR

Another common problem is that you may boot the system and see the following message:

BOOT: Couldn't find NTLDR

Please insert another disk

If you see this message, your boot sector is okay because it still points to the NTLDR file. However, your NTLDR file is either missing or damaged. To correct this problem, simply copy the NTLDR file from another system or install a new copy of Windows NT to a different directory.

Problems with NTDETECT.COM

When you try to boot, you may receive the following error message:

NTDETECT v1.0 Checking Hardware 'E

NTDETECT v1.0 Checking Hardware 'E

This message means that the NTDETECT.COM file is missing or damaged. To correct the problem, copy the file from another PC or install a new copy of Windows NT to a different directory.

Problems with BOOT.INI

The vast majority of boot problems occur in the BOOT.INI file. As you're probably aware, you can install Windows NT into any directory on any hard disk. The BOOT.INI file specifies the location of the Windows NT operating system. Figure A shows a sample BOOT.INI file. As you can see, the BOOT.INI file also provides the locations of alternate operating systems.

You may notice an entry in our BOOT.INI file pointing to a previous operating system. In our case, this operating system is Windows 98. If you select this option during boot up, Windows NT looks at the BOOTSECT.DOS file for loading instructions. If your computer had an operating system on it prior to Windows NT, the Setup program will copy the original boot sector to the BOOTSECT.DOS file. In the case of Windows 98, the BOOTSECT.DOS file would contain instructions to load IO.SYS.

Now that you know how BOOT.INI works, let's take a look the three basic error messages you may see as a result of an incorrect BOOT.INI file. The first message you may see is:

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

\<winnt root>\system32\ntoskrnl.exe

Please re-install a copy of the above file.

This problem usually occurs because the BOOT.INI file points to the wrong location for the Windows NT operating system. Of course, if your BOOT.INI file looks correct, it's always possible that your NTOSKRNL.EXE file really is corrupt.

The next message you may see is:

I/O Error accessing boot sector file

Multi(0)disk(0)rdisk(0)partition(1):\bootsect.dos

This error indicates that the BOOT.INI file either points to the wrong location for the BOOTSECT.DOS file or that the BOOTSECT.DOS file is corrupt.

The final message you may see is the following:

OS Loader V4.00

Windows NT could not start because of a computer disk hardware configuration problem.

Could not read from the selected boot disk. Check boot path and disk hardware.

Please check the Windows NT documentation about hardware disk configuration and your hardware reference manuals for additional information.

This message means that the location BOOT.INI points to doesn't contain a valid file system—at least, not one that Windows NT can read. This error can be caused by an incorrect location specified in BOOT.INI.

For example, if the BOOT.INI file points to a volume that's unformatted, you'll receive this error. It can also be caused by a crashed hard disk, or a hardware-implemented RAID device that's dropped off-line.

Windows 2000

While discussing various boot problems, it seems only appropriate to mention Windows 2000 (the operating system formerly known as Windows NT 5.0). Beta 2 contains a menu much like the one found in Windows 95 and Windows 98 that will allow you to boot to safe mode or to a command prompt. Having this feature should make correcting boot problems in future versions of Windows much easier than it is today.

Conclusion

In this article, we've looked at various problems that can cause a Windows NT boot failure. As we did, we showed you how to correct these problems.

Brien Posey is an MCSE and a freelance technical writer. He also works as a network engineer for the Department of Defense. You can contact him via E-mail at Brien_Posey@xpressions.com.

For more information or to subscribe, go to the TechRepublic web site at
https://www.techrepublic.com.

We at Microsoft Corporation hope that the information in this work is valuable to you. Your use of the information contained in this work, however, is at your sole risk. All information in this work is provided "as -is", without any warranty, whether express or implied, of its accuracy, completeness, fitness for a particular purpose, title or non-infringement, and none of the third-party products or information mentioned in the work are authored, recommended, supported or guaranteed by Microsoft Corporation. Microsoft Corporation shall not be liable for any damages you may sustain by using this information, whether direct, indirect, special, incidental or consequential, even if it has been advised of the possibility of such damages.