ntoskrnl.exe丢失问题解决

前天登录Windows XP,发生莫名奇妙的错误,无法进入系统:

因以下文件损坏或丢失windows无法启动\system32\ntoskrnl.exe,请重新安装以上文件的拷贝。

首先想到的是检查替换ntoskrnl.exe 文件,从别的地方拷贝过来的覆盖,问题依然。
继续检查 BOOT.INI ,未发现有问题。
因为本机上有三个系统共存,C盘装有2003,C盘后跟有10G的FreeBSD,接着是D,E,F扩展分区,D上装有XP,猜测可能是分区信息错误,或者MBR错误,进入故障修复台 FDISK /MBR 重写,问题依然,进入PQ,检测到D,E盘有错误,用各种工具修复磁盘,无果。
因为2003和FreeBSD都可以正常进入,所以排除了硬件的问题。
用DR.WEB全盘杀毒,未发现任何病毒。
在使用各修复盘的过程中发现使用引导工具可以正常启动XP(选择第一块硬盘的第三个分区)。
在网上发现某次系统更新后可能出现此问题,进入 D:\WINDOWS\SoftwareDistribution\Download\b369a9ee634d10e67e4b32f9d2284161\sp2qfe 找到更新后的 ntoskrnl.exe 替换 D:\WINDOWS\SYSTEM32\ntoskrnl.exe 问题依然。
无意间在远景发现SYSTEM32下的ntkrnlpa.exe文件跟ntoskrnl.exe有较大关联,在缺失ntoskrnl.exe的情况下调用ntkrnlpa.exe也可正常进入系统。而且在微软的更新包sp2qfe文件夹里只存在ntoskrnl.exe和ntkrnlpa.exe两个文件,于是复制更新包的ntkrnlpa.exe覆盖SYSTEM下的同名文件,重启,终于正常进入XP。
问题虽然解决了,引起问题的原因还不太清楚,问题出现之前并未有过系统更新,大概是使用新的系统风格包引起的问题,不过在那之后曾经重启且正常启动,最后一次操作是使用迅雷下载设定自动关机。或许是自动关机时候出现什么毛病?
而且纳闷的是用引导工具可以正常进入系统,如果是系统内文件出错的话,这又如何解释?

Leave a comment

Your comment