以前使用Windows 98的时代,如果遇到系统崩溃或者其它原因无法进入Windows,我们一般都会用启动盘启动到DOS下去排除错误。可是现在大部分人都使用Windows 2000/XP,不仅这些操作系统本身和DOS不兼容,并且由于可能使用了NTFS分区,使得我们就算用DOS启动盘启动电脑进入DOS,面对这些系统也无从下手。
那么这些操作系统崩溃后我们要怎么修复?其实微软已经为我们想到办法了,那就是恢复控制台(Recovery Console),为了叙述方便,下文中我们一律称之为控制台,并且全部以Windows XP Professional版中的操作为例(事实上这和Windows 2000中的操作没有太大的区别)。
什么是控制台
控制台是Windows的一种简易运行模式,它可以不启动图形界面而在命令行状态下有限制地访问FAT和NTFS分区,并对系统进行一些设置和操作。
通过控制台,我们可以更换系统文件、关闭或者禁用某个系统服务、禁用或卸载硬件设备、修复引导扇区、新建分区以及格式化硬盘分区等。
如何启动控制台
对于Windows 2000,我们可以用光盘启动电脑,然后在安装程序的选单中按R键选择“修复Windows 2000安装”,然后从修复选单中按C键选择用“故障恢复控制台修复Windows 2000”。
对于Windows XP,同样是用光盘启动电脑,然后按R选择修复,就能直接进入控制台。
如果你经常要进入控制台下操作,那每次用光盘启动系统似乎麻烦了一点,你也可以直接把控制台的相关选项安装到启动菜单中,方法是这样的:把光盘放入光驱,然后直接在运行中输入“d:i386winnt32 /cmdcons”之后回车(这里假设你的光驱是D),你会看到图一的界面,点击“是”,就可以把控制台选项安装到高级启动菜单中,这样以后直接从硬盘就可以进入控制台中。这个方法适用于Windows 2000和Windows XP。
使用控制台
需要注意,由于安全的缘故,控制台下你只能“有限制”地访问硬盘。“有限制”的意思是,你只能访问根文件夹、Windows系统文件夹、可拆卸存储介质(例如光驱,软驱)。并且在控制台环境下,只能把文件从软盘或光盘向硬盘复制,而不能把硬盘上的文件复制到软盘或光盘上。
以上所说的限制也不是死的,如果你对安全的要求并不严格,并且需要把硬盘上的文件复制出来,那也可以通过组策略来重新设置(注意,Windows XP Home版没有组策略)。在运行中输入“gpedit.msc”并回车,打开组策略编辑器。然后在“计算机配置-Windows设置-安全设置-本地策略-安全选项”下找到“故障恢复控制台:允许对所有驱动器和文件夹进行软盘复制和访问”这个策略,双击,然后启用它。这样以后进入控制台就可以把文件复制出来了。
经过之前的操作,我已经把控制台到了启动选项中,这样,启动电脑后可以看到图三的界面(如果是Windows 2000,那需要按F8,然后在高级启动菜单中进入),我们通过箭头选择进入控制台,
然后会看到图四的界面,这里显示了已经安装的操作系统,选择一个你想要进入的,按下相应的编号,然后回车。在这里你还需要输入管理员的密码,当屏幕上出现“c:windows”(或者是其它的,这取决于你的系统安装的位置)的提示符就说明已经成功进入控制台了。
如果你对控制台很陌生也没关系,只要输入“Help”并回车,随时都可以列出所有可用的命令。而如果你要了解某个命令的具体用途则可以通过输入“Help 命令”然后回车得到。
下面我们将通过对几个最常用的命令的演示来说明控制台的使用方法。
引导问题的修复
双Windows系统的恢复
如果你在已经安装了Windows XP的电脑上又安装Windows 2000,就会使得Windows XP无法正常启动。这是因为可以引导Windows XP的引导文件被Windows 2000中低版本的同名文件给覆盖了。若要修复Windows XP就必须修复被替换的引导文件。
我们需要修复的引导文件有两个:ntldr和ntdetect.com,这两个文件都保存在Windows XP光盘的i386文件夹下。因此我们可以在控制台中用copy命令修复(这里假设光驱为D,你可以按照自己的实际情况调整):
copy d:i386
tldr c:
copy d:i386
tdetect.com c:
分别输入以上的命令,每行结束的地方按回车,这样就可以修复Windows XP和Windows 2000的双启动。
Windows和Linux双系统的恢复
如果你曾安装过Windows和Linux双系统,那么在你卸载Linux后可能会遇到一个问题,就是启动电脑后还会让你选择是用DOS启动还是用Windows启动。尽管你已经格式化了Linux的分区,不过这个选项可能还一直存在。在这种情况下就需要用到fixmbr这个命令。
在控制台中输入“fixmbr”然后回车,系统会显示一些注意事项并要你确定,不用理会那些事项,直接输入“Y”然后按回车,如果修复成功,则命令行中会显示相应的提示,这样,启动的时候就不会再让你选择是否启动Linux。
对硬盘的分区和格式化操作
虽然在Windows中你可以通过管理工具来给硬盘重新分区或者格式化,不过可能遇到了突发情况使得你必须在控制台中完成它们。那就该format和diskpart命令上场了。
首先我们试试用diskpart给硬盘分区。注意,这里的“硬盘”仅仅指未使用的硬盘空间,如果你想要把Windows系统盘重新分区那在控制台中是无法实现的。
难得的是diskpart命令有一个简易的图形界面,这样我们也不用再记那些复杂的参数,更不用担心一个参数用错导致操作错误数据丢失。在控制台中输入“diskpart”并回车,可以看到图五的界面。是不是很熟悉啊,在安装Windows XP时选择分区的界面就是这样的。按下箭头选中未划分的空间,然后按“C”键开始新建一个分区,并输入想要建立的分区大小,回车后一个分区就创建好了。然而直接这样创建的分区由于没有格式化,还不能使用。因此我们还要用format命令来格式化新建的分区。
按ESC退出diskpart界面,回到控制台中。这里的format命令是有几个参数的:
format [driver:] [/fs:file-system]
其中[driver:]是想要格式化的分区的盘符;可以尽情快速格式化,即格式化后不检测硬盘分区;[/fs:file-system]则可以指定想要使用哪种文件系统来格式化分区。
还是以刚才的例子,我们想把新建的分区E快速格式化为NTFS文件系统,那么就在控制台中输入
“format e: /q /fs:ntfs”,回车,并输入“Y”以确认操作1,等待一会就格式化好了。
用和禁用某个服务或设备
Windows中有很多重要的系统服务,这些服务使得Windows系统可以正常运行。如果你不慎禁用了一个重要服务,很可能导致Windows系统无法启动,而无法启动系统你也无法重新启用相应的服务,这就造成了一个恶性循环。不过好在我们还有控制台,并且在控制台中可以随意启用任何的服务或者实质服务的启动类型。
还有一种情况,你更新了某个硬件设备的驱动,导致系统无法正常启动,那你也可以在控制台中禁用该设备,然后到Windows下去恢复正确的驱动程序。
在这里我们要用的命令是“enable”和“disable”。
Enable命令的格式是
enable [service_name | device_driver_name] [startup_type]
其中[service_name | device_driver_name]是希望启用的服务或者设备的名称,[startup_type]则是启动类型,也就是自动、手动和禁用。[startup_type]表示了不同的启动类型,可用的启动类型有五种
SERVICE_DISABLED
SERVICE_BOOT_START
SERVICE_SYSTEM_START
SERVICE_AUTO_START
SERVICE_DEMAND_START
Disable命令的格式是
disable [service_name | device_driver_name]
其中[service_name | device_driver_name]是希望禁用的服务或者设备的名称。
光说命令还是很单调的,我们配合具体的操作来看看使用方法。我们将试着在控制台中禁用Messenger服务,并设置该服务的启动类型为禁用,然后我们重新起动它。
进入控制台中,在禁用任何服务之前最好能明确你的操作会带来什么后果,并且可以先运行listsvc来察看各种系统服务的运行状态,在这里应该看见,Messenger服务是启动的。
输入“disable messenger”然后回车,这时Messenger服务已经被禁用,你仍然可以通过listsvc命令看到。而如果要重新启用这个服务并设置该服务随系统自动运行,则需要输入“enable messenger service_boot_start”然后回车。
故障恢复控制台的功能是强大的,并且有时候总会救人于水火中。因此希望本文的示例能够引起你对控制台的重视,并能仔细探索,相信你能把控制台用地更好。