现在Windows 7的安全做得不错,系统相对也比较稳定,死机这类事情很少了,也很少出现起不了机的情况。不过最近由于试装一个系统备份软件需要接管Windows自己的主启动控制权,因此需要重写系统启动扇区,结果有可能导致Windows的主启动扇区被破坏,因而启动时陷入死循环。当然,暂时还不用太着急,由于Windows 7的所有实质的启动程序在一个约100M左右的隐藏分区中。而loader是写在硬盘系统分区中的,主要起一个跳转作用,把系统控制权交给实质的启动程序。因此loader被破坏并没有破坏到实际的启动程序。而且loader的控制权也是由主启动扇区中的启动代码转交的,主要是因为启动扇区实在太小,所以才有二次跳转。Windows 7的这种启动设计尽可能减低了因误操作或是病毒等破坏造成的损失,相对来说也比较容易恢复。

下面是恢复方法,主要是要进入有管理员权限的命令行界面。一般在Windows无法启动时系统会自动给出一个菜单要你进入修复选项(recovery options - 如果没记错的话),进入后会要你确认一下,然后可能会提示你输入管理员密码,这时会看到一个界面,上面列出了不少工具,选择最后一个进入命令行模式,出现 X:\路径> 就表示成功了一半。还有一个办法就是直接用系统安装盘启动,依屏幕的指导,选择修复你的电脑,再选择命令行模式即可。

最后是关键一步,其实也很简单,就是在命令行模式下输入以下命令:

bootsect.exe /nt60 c:

最后这个c:是系统loader所在分区,一般为Windows 7系统分区。这个命令运行成功之后,主启动扇区和loader代码被重新写回,于是Windows又能正常启动了。