Windows NT Does Not Boot with Highly Fragmented MFT

Article translations Article translations
Article ID: 228734 - View products that this article applies to.
This article was previously published under Q228734
Expand all | Collapse all

On This Page

SYMPTOMS

When attempting to boot a Windows NT 4.0 computer you may encounter one of the following issues:

You get a blinking or flashing cursor in the upper-left corner of the screen
-or-
You only get a black blank screen.

NOTE: This may occur after installing a Service Pack or while attempting to upgrade to the next version of Windows.

CAUSE

This issue can occur when the NTFS bootsector code contained in logical sector zero of an NTFS volume is unable to locate and load NTLDR into memory due to the Master File Table (MFT) being highly fragmented.

NOTE: In the case of the upgrade boot failure, we cannot load the file called $LDR$ from the root of system partition used to boot the computer.

RESOLUTION

How to Resolve Issue If The Computer Cannot Start

  1. Obtain the Bcupdate.exe program, which updates the boot code of the NTFS boot sector. For information on obtaining the individual software update, contact Microsoft Product Support Services. For a complete list of Microsoft Product Support Services phone numbers and information on support costs, please go to the following address on the World Wide Web:
    http://support.microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMS
  2. Once you have obtained the software update create a Windows NT startup floppy disk and boot Windows NT using this disk.
  3. Extract Bcupdate.exe and NTLDR from the software update.
  4. Run Bcupdate.exe C: /F. Other command line parameters supported:

    /q - Quiet mode (must include /y).
    /y - Don't confirm.
    /f - Force update of in use volume.
    /t - Only test for old boot code.
  5. Some systems with particular partition layouts may experience issues unless NTLDR is also updated. Therefore, Microsoft recommends that you replace NTLDR on the system with the one in this software update in conjunction with running Bcupdate.exe.
WARNING: If you reinstall Service Pack 5 after you replace the NTLDR with the one from BCUPDATE (SP6), you may render the system unstartable.

To Prevent This Issue

Follow the instructions in the "Resolution" section for obtaining and for running the bcupdate.exe utility. Then obtain and install the latest service pack.

Note You must run bcupdate.exe to prevent this issue in the future.

Windows NT Server or Workstation 4.0

Obtain the latest service pack for Windows NT 4.0. For information on obtaining the latest service pack, please go to:
152734 How to Obtain the Latest Windows NT 4.0 Service Pack

Windows NT Server 4.0, Terminal Server Edition

To prevent this problem from occurring, obtain the latest service pack for Windows NT Server 4.0, Terminal Server Edition. For additional information about the latest Windows NT 4.0 service pack, click the article number below to view the article in the Microsoft Knowledge Base:
152734 How to Obtain the Latest Windows NT 4.0 Service Pack

WORKAROUND

To work around this issue, a discussion of MFT fragmentation, together with one method of preventing excessive MFT fragmentation, is presented in the following Microsoft Knowledge Base article:
174619 How NTFS Reserves Space for its Master File Table (MFT)
After the system drive is sufficiently fragmented such that the system cannot start directly from the hard disk drive, it is still possible to start through a Windows NT startup floppy disk. This is possible because the floppy disk contains its own copy of NTLDR.

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article. This problem was first corrected in Windows NT Server version 4.0, Terminal Server Edition Service Pack 6.

MORE INFORMATION

This issue occurs only on computers whose system partition is formatted with NTFS. Windows 2000 contains both the updated bootsector code and the updated NTLDR so it is not susceptible to this issue. The NTFS bootsector code's job is to locate and load NTLDR into memory. To perform this function, the code must recognize NTFS data structures well enough to locate NTLDR on the disk. This task involves reading the volume's MFT in order to obtain the root directory, which in turn contains the information necessary to locate the MFT for the NTLDR file itself. The NTFS bootsector code runs in "real mode" and therefore cannot address large amounts of memory. When the MFT is highly fragmented the code may run out of memory to store all the necessary records for the MFT. To prevent excessive MFT fragmentation see the following KB article:
174619 How NTFS Reserves Space for its Master File Table (MFT)

Properties

Article ID: 228734 - Last Review: February 27, 2007 - Revision: 2.7
APPLIES TO
  • Microsoft Windows NT Server 4.0, Terminal Server Edition Service Pack 4
  • Microsoft Windows NT Server 4.0, Terminal Server Edition Service Pack 5
  • Microsoft Windows NT Server 4.0 Standard Edition
  • Microsoft Windows NT 4.0 Service Pack 1
  • Microsoft Windows NT 4.0 Service Pack 2
  • Microsoft Windows NT 4.0 Service Pack 3
  • Microsoft Windows NT 4.0 Service Pack 4
  • Microsoft Windows NT 4.0 Service Pack 5
  • Microsoft Windows NT Workstation 4.0 Developer Edition
  • Microsoft Windows NT Workstation 4.0 Developer Edition
  • Microsoft Windows NT Workstation 4.0 Developer Edition
  • Microsoft Windows NT Workstation 4.0 Developer Edition
  • Microsoft Windows NT Workstation 4.0 Developer Edition
  • Microsoft Windows NT Workstation 4.0
Keywords: 
kbhotfixserver kbqfe kbbug kbfix kbqfe KB228734

Give Feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com