系统故障还魂术当你的系统出现比较严重的故障时,譬如启动文件丢失,引导记录被破坏或硬件有损等你会怎么办?这时安全模式进不去,"最后一次正确配置"也无法访问,重装吗?不要吧!一般说来,系统恢复控制台(如无特别说明,下文简称控制台)可以说是修复系统最后的机会.通过它可以对系统进行很多重要的操作,例如运行修复工具,启动或停止服务,访问磁盘文件,或是进行一些更高级别的操作,如手工替换系统出错的文件。
如何进入控制台:放入安装光盘,设从光驱启动,经过一段时间的初始化,出现提示操
作界面,按R进入控制台。输入操作系统的编号即可进入相应的控制台。这时系统会提示
输入密码即Administrator帐户密码。
如果觉得每次都要用光盘进入控制台不方便,可以自己安装一个硬盘版的控制台,方法
如下:用有管理员权限的帐户登陆,放入安装光盘,在开始运行里输入:
“x:\i386\winnt32.exe /cmdcons"并回车,X为光驱盘符。根据弹出的提示对话框操作安装即可。下次启动计算机时就会出现选择菜单,让你选择是进入系统还是控制台。
关于控制台下的命令偶打算挑重点的介绍。需要注意的一点是,这些命令在2000/XP的命令提示符窗口(以下简称CMD)下与控制台下的用法和参数有很大的差别,这里只介绍控制台下的用法,请区别对待。有兴趣的朋友可以在CMD下打上相关命令加空格加/?来查看相关命令的用法和参数,做下比较。我们知道,在CMD下我们可以用cd \来回到根目录,使用cd..来返回上一级目录,但这些在控制台下都是无效的。必须在cd命令后写入准确的路径,如:必须使用cd c:\来进入C盘根目录。另一个典型的例子是copy命令不再支持通配符,也不能使用除文件名之外的其它参数。
batch命令:在CMD下我们可以方便执行的批处理(.bat或.com),到控制台下却无法直接执行了。如果希望执行此类操作必须借用batch命令。
格式: batch input-file [output-file]
input-
file:指定包含要执行的命令列表文件,可以是完整的路径和文件名称。
output-
file:将命令的执行结果输出到指定的文件,如果没有指定,默认显示在屏幕上。
Bootcfg命令,这个命令很重要,我会重点介绍
(一般命令的使用格式都是命令名加空格加斜杠加具体参数,这里略过)
Bootcfg重要参数的含义:
/default 扫描计算机,找出安装在计算机上的操作系统。然后让你选择哪个操作系统做
为默认引导的操作系统。这实际上是修改C盘根目录下的boot.ini文件的default语句。
(boot.ini属性隐藏,可在开始运行里输入c:\boot.ini直接查看。)
/add 使用该参数,首先系统会扫描计算机上的操作系统,然后要求你选择要添加到
boot.ini中的操作系统,并要求输入加载系统识别符(也即显示在操作系统选择菜单中的菜
单项文字)以及OS加载选项(也即启动参数)
这等同于修改了boot.ini的[operating systems]段。注意,使用/add参数是将信息追加到现有的boot.ini中,而非覆盖。需要说明的一点是,这种方法只能找出计算机存在的操作系统,但如果是先安装了高版本操作系统,再装低版本操作系统而导致系统无法启动,那么为了让系统能够启动,除了通过bootcfg /add命令修复boot.ini文件外,还应将高版本的启动文件(特别是ntldr文件)替换系统分区下的相应文件。
/rebuild 使用该参数,系统会扫描计算机,并列出所有安装了的操作系统,然后提示是
否将这些操作系统信息添加到boot.ini中。输入Y,N,A分别代表是,否,全部。剩余的操作
就像使用/add参数那样为每个操作系统输入加载识别符和OS加载选项。通常,如果已经将
boot.ini修改乱了,可以用该命令生成一个干净准确的boot.ini文件。
/scan 扫描所有磁盘,并将存在的操作系统列出来。这个功能是查看存在的操作系统,
但不做任何操作。
/list 列出boot.ini文件中现有的操作系统列表,无论是有效的还是无效的。
小结:其实bootcfg命令说白了就是通过命令形式修改boot.ini文件。关于boot.ini文件
的修改除了可以在C盘根目录下用记事本打开修改外,还可以在我的电脑>属性>高级下启
动和故障恢复>设置>系统启动栏里做相应修改。XP里还可以点编辑来打开boot.ini文件修
改。
chkdsk命令:使用过DOS的人肯定知道chkdsk命令,在DOS时代,chkdsk是最常用的磁盘维护工具。利用chkdsk可以检查磁盘的逻辑错误和物理错误,并进行修复。这里简单介绍下在控制台下的用法。
格式:chkdsk [drive:] [/p][/r]
说明:drive为要检查驱动器的盘符,省略该参数则检查当前驱动器。
/p 即使驱动器不在chkdsk的检查范围内,也执行彻底检查。注意,该参数不对驱动器
做任何更改。
/r 扫描磁盘,找到坏扇区并进行修复,尽量恢复坏扇区中的信息.使用/r参数时也
隐含使用了/p参数。
执行该命令时会用到%systemroot%\system32文件夹下的autochk.exe文件,如不存
在该文件,则会向安装光盘里找,如找不到安装光盘,则提示输入具体的位置。
expand命令:可以从压缩包或压缩文件里提取文件.该命令非常有用,利用它可以从windows的安装光盘或其它安装位置提取正确的文件,以覆盖系统中出错的文件.
说明:压缩文件通常指一个文件的压缩形式,它采用原来的文件名,但扩展名的一个字符被替换成下划线_
格式:expand source [/f:filespec][destination][/y]
expand source [/f:filespec][/d]
参数含义:
source 指定要从哪一个压缩包或压缩文件中进行提取.该参数是此压缩路径和文件名.
/f:filespec 如果从压缩包中提取指定的一个或多个文件,则必须在filespec中指定这些要提取的文件的名称.这里可使用文件通配符.这时有人就不禁要问:你之前不是说不能用通
配符吗?呵呵,偶之前是说过,不过偶说的是Copy命令,非所有的命令,请不要误解!
destination 指定将从压缩文件中提取出来的文件以什么文件名保存到哪个目录.如果不
指定,默认为当前目录.
/d 仅列出source中包含的文件名称,但不进行提取.
/y 如果出现有文件重名,直接覆盖,且不做提示.
估计大家看命令看得一头雾水,不知所云,举个倒子来帮助一下理解哈.假如偶要从windows安装光盘里(假设为D盘)的Driver.cab压缩包中提取msgame.sys并保存到
c:\windows\system\drivers目录下,可以用如下命令实现:
expand D:\i386\driver.cab /f:msgame.sys c:\windows\system\drivers
再举一例,如要把安装光盘里的压缩文件(不是压缩包)access.cp_解压到系统文件夹里应
该如何做呢?我们知道access.cp_展开来就是access.cpl,它位于\system32文件夹下.所在应
该输入如下命令来实现:
expand D:\i386\access.cp_ c:\windows\system32\access.cpl
系统文件丢失一般会提示文件位置与文件名,我们所要做的就是把文件的扩展名去掉最后
一个字符再加上下划线就是它在安装光盘里对应的文件名,然后我们再用expand命令把安
装光盘里正确的文件解压出来覆盖损坏了的文件,这样就达到了修复系统的目的.
如果找不到压缩文件则可能在集成在压缩包里.这时我们可以用参数/d,来查看,比如想查Driver.cab里有哪些文件,应该这样输入:
expand /d D:\i386\driver.cab
fixboot命令:向系统分区中写入新的分区引导扇区.
格式:fixboot [drive]
其中drive是要写入引导扇区驱动器的盘符.它将代替默认的驱动器(即用户登陆的系统分
区).fixboot只在基于X86的计算机上有效,对于安腾系统的计算机无效.
fixmbr命令:修复启动磁盘的主引导记录.fixmbr命令仅在系统控制台中有效.
格式:fixmbr [device_name]
其中device_name是要写入新的主引导记录的设备(驱动器).设备名称采用物理映射名称的方式,可以用map命令获取.如\Device\HardDisk0.如果不指定该参数,则新的主引导记录将被写入当前的引导设备,也即载入主系统的驱动器中.
map命令:可显示驱动器号与物理设备名称之间的映射关系.可不跟参数,如果加上参数map arc,则表示以ARC路径的方式显示驱动器名称.(boot.ini文件里就是以此方式显示驱动器)
format命令:可对分区过的磁盘进行格式化,并为其指定可用的文件系统.
格式:format [drive:] [/q][/fs:file-system]
drive:指定要格式化的驱动器.(只适用于硬盘,对软盘无效)
/q:快速格式化.
/fs:file-system:被格式化的磁盘上使用的文件系统类型.可以是FAT,FAT32,NTFS等,如未
指定,即使用现有的文件系统格式.
比如要格式化E盘并转为NTFS文件系统可用如下命令:
format e: /fs:ntfs
diskpart命令:建立删除分区. 格式:diskpart [/add|/delete][drive_name][size]
参数含义:
/add 创建新磁盘分区
size 创建的分区的大小,单位MB,仅与/add同时使用.
/delete 删除现有分区
drive_name:这里表示所要删除的分区盘符等.仅与/delete同时使用.
diskpart命令如果不加任何参数则会出现管理界面,在这个界面下操作更加直观方便.与format命令结合使用即可实现分区格式化操作根本不用借助DOS.
很多朋友系统有问题,重装,选了全新安装,但原来的系统盘没格,结果造成了两个系统并存
的问题,虽然XP里没有直接格式化的选项,但我们可以变相格式化.方法是先删除原系统所在
分区,再按原来的大小建立分区,把新系统选择安装在新建立的分区上,安装程序就会自动帮
你格式化(呵呵,连format都省了)
在控制台下还有一对命令:Disable与enable用来禁用和启动系统服务和设备驱动程序.大
家有空去研究下哈.在控制台下用help命令查看帮助.另外用listsvc命令可列出计算机上所
能使用的服务和驱动程序.该命令无参数.