Windows控制台:你不知道的秘密

运维 系统运维
本文介绍了windows 控制台能够轻松解决常见的windows 2000系统不能启动的各种问题,重点介绍了windows控制台的基础知识以及RC解决问题实例。

有时候,windows 2000引导可能会出现蓝屏错误,告诉你系统因为某个文件丢失或者损坏而不能启动;你也许在用Windows 98和Windows 2000的双重引导,不过自从你重新安装windOWS 98以后,那个多重引导菜单就消失了……

难道我们只有通过重新安装windows 2000来解决问题,虽然网上也流传着各种各样的解决方案, 比如启动到Dos下释放被损坏的文件,又比如重新安装windOWS 2000到拷贝文件阶段为止,然后删除启动菜单中的相应选项。不过这些方法怎么说都有点旁门左道,微软从windows 2000起就给我们提供了完善的解决方案——RecoVery Conso土e(RC,故障恢复控制台),通过它可以轻松解决windows 2000不能启动的各种问题。

启动/退出RC

我们可以通过两种方式来启动RC。

1.光盘启动

如果你的电脑支持从光盘启动,可以把windows 2000的安装光盘放人光驱并设置从CDROM引导,这样在Windows 2000启动到选择“安装Windows 2000”还是“启动RC”的时候,选择“To repair a Windows 2000 installation using Recovery Console”就可以了。

2.硬盘启动

如果你愿意的话也可以将“恢复控制台”一劳永逸地安装在硬盘上作为多重引导菜单的一部分。插入

WindOWS 2000光盘,执行以下指令:

x:\\i386\\winnt32 /cmdcons

这里x代表你的光驱盘符。这时会弹出一个询问你是否真的要安装Rc的窗口,“确认’’之后即可继续安装,安装完毕之后需要重新启动,不过这时你的启动菜单已经多出了—个“Microsoft Windows Recovery Console”选项,选择它就可以启动RC。

3.退出RC

既然可以进人Rc,当然我们也需要在完成修复、备份之后退出,不过这个退出可是很简单的一件事情,直接执行Exit命令就可以(系统会重新启动)。

RC命令解析

要登录Rc必须具有管理员身份,而且如果你在计算机上安装有多个操作系统,Rc会要求你选择需要登录的操作系统(比如c:\win NT或者D:\windows),输入管理员口令之后你就可以进入RC的命令行界面。

1. Help

不要紧张,第一次登录用户不妨单独输入help来看看Rc到底支持哪些指令,如要更加详细地了解某条指令的具体格式,可以输入Help<command>来看看说明。

比如,你想要知道format指令的格式,输入“Help format”(不包括引号)看看。

2.磁盘操作类指令

对于我们常见的分区、格式化操作,RC都可以很好地支持,比如Diskpart就是一个图形界面的分区工

具,而format则是一个支持FAT、FAT32和NTFS三种文件系统格式的格式化工具。

(1)代替Fdisk的Diskpart

在RC的命令行窗口输人Diskpart就可以启动磁盘分区工具Diskpart,它是一个简单的图形界面的分区工具,要建立分区请按下c键(create,表示建立分区),删除分区则是D键(Delete,删除分区),至于具体操作方式,因为是图形界面,这里就不再详细叙述。

(2)format

这里的format和Windows自带的format指令格式不太一样,功能上有所增强(支持NTFs分区),指令

格式如下:

format [Drivers:][/Q][/FS:file-system]

说明:

[Driver:]:指明需要格式化的硬盘;

[/Q]:是否进行快速格式化——这可能是绝大多数用户的选择吧;

[/FS:Pile-System]:指定格式化的分区格式,可以是FAT、FAT32或者NTFS。

示例:比如我们要快速格式化D盘为NTFs格式,可以输入这样的指令:format d:/Q/FS:NTFS。

(3)简单的磁盘检查工具Chkdsk

Chkdsk不但可以创建并显示磁盘的状态报告,还可列出并纠正磁盘上的错误。

CHKDSK [Drivers:]

[/r]

说明:

A.如果不带任何参数,chkdsk将显示当前驱动器中的磁盘状态;

B.参数[drive:]:指定要chkdsk检查的驱动器:

C.参数[/p]:即使驱动器不在chkdsk的检查范围内,也执行彻底检查。该参数不对驱动器做任何更改;

D.参数[/r]:找到坏扇区并恢复可读取的信息,隐含着/p参数。

示例:检查D盘并恢复可以读取的数据通过以下指令来完成。

3.启动相关类指令

Rc包含有可以编辑多重引导菜单的Bootcfg、修复主引导扇区MBR的Fixmbr和修复分区引导扇区的Fixboot。

(1)Bootcfg

多重引导控制文件Boot.ini的命令行编辑器,不过我从来没有认为这个Bootcfg有多好用,如果你有一个文本编辑器,它应该比Bootcfs好用。

(2)FixMBR和Fixboot

fixmbr[Device Name]

说明:[Device Name]指要写入新的主引导记录的设备(驱动器)。设备名称可从map命令的输出获得。例如,设备名称:\Device\HardDisk0.

示例:下列命令示例向指定设备写人一个新的主引导记录。

fixmbr \Device\HardDiskO

注意:如果不指定Device_Name,新的主引导记录将被写入引导设备,即装载主系统的驱动器。

如果系统检测到无效或非标准分区表标记,将提示用户是否继续执行该命令。除非你访问驱动器有问题,否则不要继续进行。向系统分区写人新的主引导记录可能破坏分区表并导致分区无法访问。

利用RC解决问题的几例

1.如果你在windows中安装了与其不兼容设备的驱动程序或者服务,windows可能再也不能正常启动起来(有时候我们甚至不能进入安全模式)。

解决方案:要解决这种问题,你只需启动Rc,登录Wind。ws 2000并执行以下步骤:

(1)从光盘或者硬盘启动RC,选择windows的安装路径、输入H令登录。

(2)切换至%SystemRoot%\System32目录,输入listsvc,来查看一下系统启动的都有哪些服务或者驱动程序。

(3)找到导致问题的驱动程序或者服务。

(4)现在停止这个服务就好了。

Disable ServiceName

注意:Disable指令会列出服务的启动方式(自动启动、手工启动),你需要记录下它的启动方式,这样在排除问题之后可以通过enable指令重新启动该服务。

(5)输入Exit退出,现在Windows 2000应该可以正常启动了。

2.我的系统是Windows 98和Windows 2000双引导,它们一直相安无事,直到有一天我覆盖安装了Windows 98--我的双重引导菜单不见了,每次启动都直接引导到Windows 98下而不是出现一个让我选择启动WindOWs 98或者Windows 2000的菜单,可是我的Windows 2000的引导文件Ntldr等仍然在c:\下面。

解决方案:现在该是我们Rc中的㈠xboot上场的时候了——Fixboot就是专门用来解决在安装Windows 2000之后再安装Windows 98所出现0S Loader丢失的问题。

启动RC,在命令行—卜输入Fixboot c:,退出重新引导系统。久别的os Loader启动菜单出现在你眼前。

3.前一段时间试用了“nux,采用的是LIL0多重引导Windows 98/2000和Redhat,后来厌烦Linux很不友好的窗口界面,就用Partition Magic直接把Redhat的Ext2分区转化成了FAT,可是那个多重引导管理器LIL0却阴魂不散……

解决方案:RC的FixMBR指令可以删除这个讨厌的LILO,不过由于FixHBR指令格式是FixMBR 设备名称,我们首先需要得到这个设备名称

的拼写方式才行……

(1)执行MAP指令得到以下输出信息:

C:FAT32 4997MB \\Device\\HarddiskO\Partition1

D:NTFS 4997MB \\Device\\HarddiskO\Partition2

A:\\D6vice\\FloppyO

E:\\Device\\CDROM0

(2)\Device\HarddiskO就是我们这里需要的设备名称(不包含后边的Partiti。nx),执行FixMBR \Device\HarddiskO。

Tips:MBR和BootSector

MBR(Master Boot Record,主引导记录),位于硬盘上的第一个扇区, 从这里开始引导计算机的过程。MBR包含被称作主引导代码的可执行代码,它和磁盘的分区表都位于硬盘上的第一个扇区。

BootSector(分区引导扇区),硬盘分区的一部分,它包含关于磁盘的文件系统和加载Windpws操作系统的短机器语言程序的信息。

4.上边几例中的情况还不能算是最坏的,比如有一天你在安装wind。ws 98的过程中格式化了C盘,事后才想起来没有备份用来启动Windows 2000的Boot.ini、ntldr等文件(本例假设C盘安装的是Windows 98,D盘安装的是Windows 2000,光驱盘符为F),虽然NTOSKRNL可以重新从安装盘上拷贝过来,不过Boot.ini却是安装程序自动生成的,对于一般的电脑用户来说,不可能手工生成这个丈件。

解决方案:其实Recovery Console可以帮助你来生成这个Boot.ini文件并可以使Windows 2000起死回生。

(1)启动到Recovery Console下。

(2)执行Bootcfg/sCAN看看扫描出来的东西是不是自己想要添加的操作系统,我这里显示如下:

  1. C:\\windows>bootcfg /scan   
  2. Scanning all disks for Windows installations.   
  3. Please wait, since this may take a while...   
  4. The Windows installation scan was successful.   
  5. Note: These resultes are stored statically for this session.   
  6. If the disk configuration changes during this session,   
  7. in order to get an updated sean, you must first reboot   
  8. the machine and then rescan the disks.   
  9. Total identified Windows installs: 1   
  10.  

[1]: C:\\windows

(3)执行Bootcfg/Rebuild重建Boot.ini,不过不要忘记了把Windows 2000安装光盘上i386目录下的NIDETECT.com和ntldr拷贝到c:\\目录下。

(4)备份Windows 98的引导扇区为c:\Bootsect.dat。可以按照以下方式生成Bootsect.dat:

A.首先保证C盘可以正常引导Windows 98;

B.用记事本编辑以下内容并保存为Read.scr:

  1. L 100 2 0 1   
  2. N C:\Dootsect.dar   
  3. R BX   
  4. 0   
  5. R CX   
  6. 200   
  7. W   
  8. Q   
  9.  

C. 把上边制作的启动软盘放人A驱,并执行debug <Read.scr

(5)执行Fixboot c:用Windows 2000的引导扇区代替Windows 98的引导扇区。

(6)添加Windows 98启动选项。

在Boot.ini的[0perating System)段中添加如下一句:

C:\\\"Windows 98 Second Edition\"

至此,多重引导菜单完全恢复。

5.Windows 2000操作系统采用的是NTFS分区格式,由于掉电造成系统崩溃并且不能重新启动,首先准备备份NTFS分区上的资料再安装Windows 2000系统,可是手头可以使用的DOS启动盘只能访问FAT、FAT32分区格式,对于本例采用的NTFS分区格式却是无能为力……

解决方案:这都是微软惹的祸——同出一门的操作系统竟然采用相互不兼容的文件系统,常规的DOS启动盘是不能访问NTFS分区,不过还是有解决方法。

(1)让DOS能够访问XTFS的NTFS Pro

对DOS比较熟悉的朋友应该听说过NTFS Pro,DOS下访问NTFS分区一般情况下就是利用的这个软件,它的官方网址为http://www.winternals.com/,可以免费下载的是只读版本,如果你需要在NTFS分区中写入什么内容的话就只好去购买付费版本丁……

(2)支持NTFS的Recovery Console

Recovery Console是支持NTFS文件格式的,所以你可以在Recovery Console下备份相应的数据再开始你的们windows 2000安装之旅。

RC(故障恢复控制台),它的功能相当强大,希望读者能够掌握好有关RC的相关的知识。

【编辑推荐】

  1. Windows控制台光标控制
  2. 在Ubuntu虚拟控制台实现中文
  3. Microsoft组策略管理控制台简介
  4. windows 2003域控制器之无缝迁移
  5. Windows XP故障之网络故障解决篇
责任编辑:韩亚珊 来源: 论坛转载
相关推荐

2010-08-23 09:56:09

Java性能监控

2011-05-29 17:04:10

笔记本体验

2010-04-10 13:06:24

Windows Emb

2020-06-12 09:20:33

前端Blob字符串

2020-07-28 08:26:34

WebSocket浏览器

2020-09-01 08:01:01

生成树协议STP网络协议

2011-07-06 15:25:33

Windows控制台

2018-02-07 08:21:42

2011-08-11 10:22:40

Windows7Tab键

2016-12-15 17:15:44

2011-05-04 14:55:22

耗材打印机

2022-03-10 09:11:33

JavaScrip开发JSON

2019-06-26 09:00:53

Windows 10Windows便笺

2015-06-19 13:54:49

2012-11-23 10:57:44

Shell

2021-10-17 13:10:56

函数TypeScript泛型

2020-08-11 11:20:49

Linux命令使用技巧

2021-12-22 09:08:39

JSON.stringJavaScript字符串

2021-12-29 11:38:59

JS前端沙箱

2015-06-11 16:48:46

点赞
收藏

51CTO技术栈公众号