Windows XP – NTLDR Is Missing

Windows XP

The information in this article applies to:

  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Professional


When you attempt to install Windows XP or to upgrade to Windows XP on a computer that runs Microsoft Windows Millennium Edition (Me), you may receive the following error message after the first restart during the installation process:

NTLDR is missing

Press any key to restart This behavior occurs only if Windows Me is installed on a large-capacity drive that uses the FAT32 file system.


This behavior can occur if your existing Windows Me installation was cloned and then applied to a drive that has a different geometry from that of the source drive of the cloned copy.

One possible scenario is as follows: You are running Windows on a 4-gigabyte (GB) drive. After you upgrade, for example to a 30-GB hard disk, you use a third-party disk-imaging utility to make a mirror image of your Windows installation and apply the image to the new drive. At a later time, you then upgrade to Windows XP, installing Windows XP over the cloned image of Windows .

For this behavior to occur, the following conditions must exist:

  • The system/boot partition is formatted with the FAT32 file system.
  • The computer boots by using INT-13 extensions (a partition larger than 7.8 gigabytes with a System-ID type of 0C in the partition table).
  • Because of the cloning procedure, the Heads (sides) value in the FAT32 BIOS Parameter Block (BPB) does not match the geometry of the physical drive.

The Windows Me boot code ignores the Heads value in the BPB and starts those programs even though the value is invalid. However, the boot code in Windows 2000 and Windows XP needs this value, and the boot process does not succeed if the value is invalid.


To resolve this behavior, correct the invalid Heads (sides) value in the FAT32 BPB to enable the Windows XP boot process to continue. The easiest way to update the field is to rewrite the Windows Me boot code by using the following procedure:

  1. Restart the computer by using a Windows Me startup disk that contains the file (this file is included by default).
  2. Make a backup copy of the msdos.sys file in the root directory of your system drive. To do this, type the following commands from the command prompt:
    attrib -h -r -s c:msdos.sys
    rename msdos.sys *.ysy
  3. At a command prompt, type sys c:. This command rewrites the Windows Me boot code with accurate BPB information. If this command runs successfully, skip to step 4.

    If you are using a Windows Me startup disk and you receive an error message, “Cannot find the system file in the standard locations on drive C:”, one or more files in the Windows Me installation have been removed. Use the following steps to place the correct files on the drive so that the sys command can locate them:
    1. Start a command prompt by using the following commands (that is, type the commands and press ENTER after each command): c:
      cdwindowsIf Windows is installed in a folder other than the Windows folder, adjust the commands accordingly.
    2. Try to switch to the Command folder by using the following command: cd command If an error message indicates that the path is not found, use the following command to create the Command folder, and then run cd command again: md command
    3. Switch to the EBD folder by using the following command: cd ebd If an error message indicates that the path is not found, use the following command to create the EBD folder, and then repeat the cd ebd command: md ebd
    4. In the EBD folder, use the following commands to copy the Io.sys file from the root of the hard drive and to rename the Io.sys file as Winboot.sys: attrib -s -h -r c:io.sys
      copy c:io.sys winboot.sysWinboot.sys is the file that needs.
    5. Switch back to drive A, and then run the following commands:
  4. a:
    sys c:
    Type the following commands, and press ENTER after each command, to restore the original msdos.sys:
    attrib -s -h -r c:msdos.sys
    copy c:msdos.ysy c:msdos.sys
    Press Y to overwrite the existing MSDOS.SYS file. You should receive a “1 FILE(S) COPIED” verification that the file was overwritten.
  5. Restart the computer to Windows Me, and then try the Windows XP installation or upgrade procedure again.

    NOTE: Alternatively, after you run the sys c: command, you can boot to the Recovery Console, and then use the fixboot command to rewrite the Windows XP boot code. This procedure enables the original installation to proceed typically.


Microsoft has confirmed this to be a problem in the Microsoft products that are listed at the beginning of this article.

Be the first to comment

Leave a Reply