啓動系統提示“NTLDR is missing”的解決辦法

呵呵,其實NTLDR(NT OS LOADER)文件是一個隱藏的,只讀的系統文件,位置在系統盤的根目錄,用來裝載操作系統。其作用相當於DOS/WIN9X的IO.SYS,負責在POST(Power On Self Test開機自我測試)後立即向BIOS(Base Input Output System基本輸入輸出系統)接管控制權。然後另一個文件——NTDETECT.COM會被加載進內存,這時候多啓動菜單才顯示出來。

好了,瞭解了這些後,那就有針對性地解決他吧!


第一種情況:[NTLDR損壞或丟失]

        在偶然性的一次開機後,提示:“NTLDR is MissING. Press CTRL+ALT+DEL to restart”


請按照下面步驟進行修復:
1.將WindowsXP安裝光盤放入光驅
2.進入BIOS設置爲Boot From CD-ROM
3.當顯示到“Press any key to boot from the CD”時,按下任意鍵
4.當進入到Windows XP安裝菜單時,按下“R”鍵進入故障恢復臺。
5.按下“1”(Windows XP 的代號)鍵和回車登錄進入你的Windows安裝
6.輸入你的Administrator帳戶和密碼

    7.在 C:\Windows> 下鍵入 Fixboot 及按 Y 確認
    8.在 C:\Windows> 下鍵入 光盤 \
    9.在 C:\> 下鍵入 ATTRIB -H NTLDR
10.在 C:\> 下鍵入 ATTRIB -S NTLDR
11.在 C:\> 下鍵入 ATTRIB -R NTLDR
12.在 C:\> 下鍵入 ATTRIB -H NTDETECT.COM
13.在 C:\> 下鍵入 ATTRIB -S NTDETECT.COM
14.在 C:\> 下鍵入 ATTRIB -R NTDETECT.COM
15.在 C:\> 下鍵入 COPY H:\I386\NTLDR C:\ 注: H: 是光盤驅動器的代號下同(視自己機子而定)
16.在 C:\> 下鍵入 COPY H:\I386\NTDETECT.COM C:\
17.完成後取出 Win XP 光盤及鍵入 Exit 會重新啓動電腦
18.在 BIOS 選回用硬盤啓動電腦便可
19.使用中文版 Windows XP 如啓動時選單出現亂碼者可在進入 Windows XP 後將 Windows XP 光盤 I386 目錄下的bootfont.bin 複製至 C 盤的根目錄下便可,如使用英文版 Windows XP 者把 bootfont.bin 從 C 盤的根目錄下刪除便可

若還不能修復,那麼試着拷貝C:\根目錄下,boot.ini、IO.sys、msdos.sys、CONFIG.SYS、bootfont.bin等等近出錯的電腦裏,重啓。


      總結:Windows XP出現“NTLDR is MissING”錯誤,少的文件是 C:\NTLDR、C:\NTDETECT.COM。可能還有C:\Boot.ini、IO.sys、msdos.sys、CONFIG.SYS、bootfont.bin文件。修復方式,到好的Windows XP機器上覆制這些文件到U盤(軟盤),然後啓動到Windows XP修復模式,將文件複製到C:\目錄下面。唯一要注意的是boot.ini文件的內容,記錄了系統引導的硬盤以及分區。



使用Windows 2000 SP4之前Windows版本出現此問題 解決的方法:

同樣是使用恢復控制檯
1、使用 Windows 2000 安裝盤重新啓動計算機,或使用 Windows 2000 光盤重新啓動計算機。
2、在“歡迎使用安裝程序”屏上,按 R 鍵修復 Windows 2000 安裝。
3、按 C 鍵通過使用“恢復控制檯”修復 Windows 2000 安裝。
4、鍵入與要修復的 Windows 安裝對應的數字,然後按 Enter 鍵。例如,鍵入 1,然後按 Enter 鍵。有關其他信息,請單擊下面的文章編號,以查看 Microsoft 知識庫中相應的文章: 鍵入管理員密碼,然後按 Enter 鍵。
5、鍵入 map,然後按 ENTER 鍵。記下分配給包含 Windows 2000 光盤的 CD-ROM驅動器的驅動器號。
6、 鍵入以下命令,在鍵入每個命令後按 ENTER 鍵,其中 drive 是您在本文“方法

2:使用恢復控制檯”中的第 4 步鍵入的驅動器號:
        copy drive:i386ntldr c:

        copy drive:i386ntdetect.com c:

       如果系統提示您覆蓋現有文件,請鍵入 y,然後按 Enter 鍵。

      注意:在這些命令中,ntldr 和 c: 之間以及 ntdetect.com 和 c: 之間各有一個空格。
7、 鍵入下面的命令,然後按 ENTER 鍵:
type c:Boot.ini

出現一個類似如下的列表:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)WINNT

[operating systems]
multi(0)disk(0)rdisk(0)partition(1)WINNT="Microsoft Windows 2000 Professional" /fastdetect
如果收到以下消息,則 Boot.ini 文件可能丟失或損壞:
The system cannot find the file or directory specified.

8、 如果 Boot.ini 文件丟失或損壞,請創建一個新的。爲此,請按照下列步驟操作:
1.. 使用文本編輯器,如記事本或 Edit.com 創建一個類似於以下內容的啓動加載程序文件:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)WINNT

[operating systems]
multi(0)disk(0)rdisk(0)partition(1)WINNT="Microsoft Windows 2000 Professional" /fastdetect有關其他信息,請單擊下面的文章編號,以查看 Microsoft 知識庫中相應的文章: 102873 BOOT.INI and ARC Path Naming Conventions and Usage

301680 HOW TO:Create a Boot Disk for an NTFS or FAT Partition in Windows

2.. 將該文件作爲 Boot.ini 保存到磁盤。

注意:如果您是使用記事本創建的文件,請確保 .txt 擴展名沒有附加在Boot.ini 文件名後面。
3.. 在恢復控制檯命令提示符下鍵入下面的命令,將 Boot.ini 文件從軟盤複製到計算機:
copy a:Boot.ini c:

9、 鍵入 exit,然後按 ENTER 鍵,計算機將會重新啓動。


第二種情況:[非NTLDR損壞或丟失]

       上次重裝系統因突然斷電或人爲因素而中途退出再次重裝時提示:“NTLDR is missing. Press CTRL+ALT+DEL to restart”    


      如果把光盤中的NTLDR文件複製到C盤後重新啓動,問題依然沒有解決,這時我們可以認識到,導致該故障的不是NTLDR損壞或丟失,而是系統視而不見。爲什麼會這樣呢?一般說來,導致該現象的原因有以下幾點:
1、採用非系統磁盤來啓動電腦。如果用一些非系統磁盤引導啓動電腦,比如軟盤、光盤、USB移動存儲設備等,就可能會出現此問題。解決的方法是取出這些設備,然後重新啓動電腦即可。
2、BIOS中硬盤中的信息被更改,檢測方式被設置爲手動。[注意:這是第二種故障最可行的解決方案]
由於硬盤信息被篡改,導致系統找不到硬盤中的系統分區,所以就找不到系統分區中的啓動文件NTLDR了。只要在BIOS的“Standard CMOS Setup”中,把硬盤檢測方式設置爲“Auto(自動)”即可。

3、系統分區沒有被激活。如果用於存放啓動文件(包括BOOT.INI、NTLDR、NTDETECT.COM)的系統分區沒有被激活而是激活了其他主分區,那麼就會導致系統啓動時找不到NTLDR文件。解決的方法時用Windows 98啓動盤啓動電腦,然後運行Fdisk,選擇“Set active partition”來激活系統分區。如果仍無法解決,就需要在Recovery Console下運行FIXBOOT命令來使活動分區成爲可啓動的分區。
4、硬盤中的主引導記錄(MBR)被破壞,導致系統找不到系統分區。解決的方法是在Recovery Console下運行fixmbr命令,或者是用Windows 98啓動盤啓動電腦,然後運行FDISK /MBR。

5、系統分區的MFT根文件夾碎片較多。主文件表(MFT)是一個捲上每一個文件的索引,如果 MFT 根文件夾包含多個文件,則MFT就會變得非常零碎,以至於需要另外創建一個分配索引。因爲文件是按字母順序映射到分配索引中的,NTLDR 文件可能會被推到第二個分配索引中。一般情況下不建議用戶將文件直接寫入根文件夾,尤其是大量文件。如果有某個程序定期在系統分區的根文件夾中創建和刪除臨時文件,或者將許多文件誤複製到根文件夾,就會造成這一情況。但是,請神容易送神難,如果我們此時去刪除那些臨時文件或是複製到根文件夾的文件,主文件表(MFT)分配索引並不會降到原來的大小,所以故障依然存在。
這時候我們需要使用微軟提供的一個叫bcupdate2的工具(下載地址:
http://www.shannon-dd.com/index.php?option=com_docman&task=doc_details&gid=46&Itemid=98)來強制更新啓動代碼(Boot Code)。使用方法是在其他硬盤的系統上,運行 bcupdate2 x: /f (x:代表需要修復的硬盤的系統分區),然後按“Y”確認更新啓動代碼即可。

6、安裝了EZ-BIOS。EZ-BIOS是西部數據公司提供的一個可以通過重寫分區列表來允許用戶創建比 Windows 95 或 Windows 98 支持的分區更大的工具。如果安裝了EZ-BIOS,那麼在使用Windows 95或Windows 98升級到Windows 2000 或 Windows NT 4.0期間就會出現該故障。解決的方法是卸載EZ-BIOS。

7、BIOS過時。如果主板上的BIOS程序過時,可能會導致該故障,解決的方法是升級BIOS程序。

8、FAT32 BIOS Parameter Block (BPB) 中存在無效頭(邊)值。如果把一個硬盤上的系統(包括Windows 95、Windows 98 或 Windows Me)做了鏡像後克隆到其他不同大小的硬盤上,然後使用這個克隆系統升級到Windows 2000或Windows XP時,就會出現在複製文件後重新啓動提示“NTLDR is missing”。因爲Windows 95、Windows 98 或者 Windows Me 啓動代碼忽略 BPB 中的頭值,並且即使在值無效時仍啓動程序。但是,Windows 2000 和 Windows XP 中的啓動代碼需要這個值,如果此值無效則啓動過程不會成功。這種情況解決方法比較複雜:

step1:使用包含 Sys.com的 Windows 95、Windows 98 或者 Windows Me 啓動盤來重新啓動電腦。

step2:運行以下命令,在系統分區的根目錄下備份msdos.sys文件:
attrib -h -r -s c:\msdos.sys
rename msdos.sys *.ysy
step3:在命令提示符中,輸入 sys c:。此命令用正確的 BPB 信息重寫 Windows 95、Windows 98 或者 Windows Me 啓動代碼。
step4:在Recovery Console下運行fixboot命令重寫Windows 2000或Windows XP的啓動代碼。
按照以上操作後,一般可以使原來的安裝程序繼續進行。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章