《恢复Windows服务器注册表的系统配置单元》由会员分享,可在线阅读,更多相关《恢复Windows服务器注册表的系统配置单元(5页珍藏版)》请在金锄头文库上搜索。
1、恢复 Windows 服务器注册表的系统配置单元关于注册表 Windows 服务器的注册表看上去令人望而生畏,包括一些陌生的拼写、怪异的字符,但它却是服务器配置的核心和灵魂。一旦 Windows 服务器的注册表受到破坏,可能会导致整个系统瘫痪。下面将描述注册表的系统配置单元通常出现的几个症状,并介绍相应的恢复方法。 关于注册表注册表实际上是一个庞大的数据库,记录并更新计算机上所有的设置信息。如果用户改变壁纸、显示设置、或服务器上安装的软件,Windows 2000 将在注册表中记录这些变更。注册表由子树、键、值、数据类型、配置单元组成。其中,子树表示注册表的逻辑结构;键、值、数据类型是包含在注
2、册表子树中的一些信息,它们都是注册表逻辑结构的组成部份;数据类型表示注册表将记录的数据种类(例如:简单的字符串或二进制信息);配置单元则是从另一方面表示注册表的物理结构。 Regedit (Regedit.exe) 和 Regedt32 (Regedt32.exe)是对注册表进行编辑的两个工具,两者之间的差异其实很小。主要的不同在于,Regedt32 提供了一个安全特性,称为只读模式。当从选项菜单中选择使用它时,系统允许用户只读注册表,却没有权限进行编辑,使用户因小错误导致重大问题出现的机率最小化。Regedit 虽然不具备这项安全特性,但它为用户提供了一条直接的路途通向所有子树,从而取代了从
3、一个窗口跳向另一窗口的命令。两个注册表编辑工具虽然看上去不同,并且存在着细微的内部差异,它们却被冠以相同的名字,即注册表编辑器。 系统配置单元保存用户的结构设置系统配置单元由一台机器正确启动所需要的系统配置信息组成,如驱动程序的加载、硬件设备信息、需要开启的服务、以及执行软件设置等信息。系统配置单元存在于注册表编辑器的 Hkey_local_machinesystem 目录下,在CurrentControlSet 子键中存储各项配置数据。 如同其它类型的数据库文件一样,系统配置单元是作为一个物理文件存在于服务器的硬盘驱动器上。用户可以在%systemroot%system32config 目录
4、中查找到它。当用户查看这个目录时,会看到一组文件,包括被称为 System 和System.alt 的两个文件。System 表示系统配置单元,而 System.alt 则是系统的一个完整的拷贝,用来容忍故障的出现。 系统配置单元的问题系统配置单元文件的大小受多方面限制,从而引起问题。当计算机进行适当的装载和执行时,系统配置单元文件不应该超过 13MB,一旦超出这个限制,Windows 2000 启动程序将无法进行。 这个限制的存在,是由于系统配置单元的加载是在一个低水平的环境中进行,仅有 16MB RAM 可利用资源执行启动程序。当系统配置单元的加载程序,必须与NT 装载程序、NT 内核、H
5、AL、以及其它要求启动的驱动程序同时分享 16MB RAM资源。在一个典型的服务器上,通常不能留出更多的 RAM 资源进行共享,因此庞大的系统配置单元可能导致启动程序无法进行。 即便在一个普通的机器中,系统配置单元文件也可能很庞大。例如,一台运行许多标准应用程序的便携式电脑,即便它不是一台承担繁重任务的机器,然而系统配置单元文件也占用了 2.6MB 资源;而另外一台作为测试服务器的机器,其系统配置单元文件占用了 5.5MB 资源,这使得服务器实际上不能执行任何工作。 当系统配置单元增加时,上述事实的存在导致系统配置单元形成碎片。这种破碎在本质上是破坏性的,同时它也导致文件残缺。一旦这些问题在用
6、户的系统配置单元发生,用不了太长时间,用户手头的服务器就不能继续工作了。 通过限定系统配置单元大小,可以使它的增加不超过 13MB;但这样做也不能配合 Windows 2000 域控制器进行工作。系统配置单元可以配合运行许多重要共享资源的服务器工作,同时要求这个服务器的注册表足够的大。如果用户的服务器属于上述类别,那么通过 Microsoft Knowledge Base 可以检验用户需要制订的注册表项目。 恢复系统配置单元 恢复系统配置单元因为系统配置单元的问题而引起服务器启动失败时,用户可以采取多种方法对此情形进行补救,并且恢复服务器的运行。这些补救方法包括使用紧急修复磁盘(Emergen
7、cy Repair Disk)、Windows 2000 恢复控制台(Recovery Console)、和紧急修复程序(Emergency Repair Process)。 紧急修复磁盘(ERD)通过修复系统配置单元,启动计算机进入一个可使用的状态是一件相对而言简单的事情;然而,需要做多少工作才能使用户的计算机依赖最新的注册表备份进行工作,这正是 ERD 程序重要的原因所在。如果拥有一个 ERD,用户就等于拥有了一个最新的系统配置单元备份,此时需要做的只是一些恢复配置单元的事情;如果没有 ERD,用户则需要做更多的工作,并在机器各方面状态良好的条件下去恢复服务器的运行。 当然,使用 ERD
8、首先需要用户制作一个 ERD。因为服务器配置可能改变,使许多管理员推迟执行这项工作。然而,如果还没有制作一个 ERD,用户应该尽可能早的制作它,比如阅读完这篇文章后。 ERD 并不是一个启动盘,但它被运用在与 Windows 2000 恢复控制台的连接中。用户可以利用 Windows 2000 的备份文件程序制作一个 ERD,点击 开始 | 运行 ,当运行对话框打开时,键入 ntbackup 并点击确定 。当文件备份程序开始运行后,点击紧急修复磁盘按钮并按提示执行。当出现紧急修复磁盘屏时,选择也将注册表备份到修复目录中。 ERD 将文件写在一张软盘上,并在服务器硬盘驱动器的%systemroo
9、t%repairregback 文件夹下产生一个名为 Regback 的文件夹。这个文件夹由备份到 ERD 的最新的文件组成,包括最近的系统配置单元文件夹。当用户每次应用一个服务包去更新系统或一个驱动器时,都应该创建一个新的ERD。如此可确保用户的 ERD 内始终有一个最新的系统配置单元备份。 Windows 2000 恢复控制台恢复控制台是一个为高级管理任务服务的工具。用户可在启动 Windows 2000 光盘时运行它,或将它安装在服务器上运行。如果用户先前没有在服务器上安装恢复控制台,那么我要强烈推荐用户使用它。 安装恢复控制台,将 Windows 2000 光盘插入 CD-ROM 驱动
10、器。打开命令提示符,键入:drive:i386winnt32.exe /cmdcons ,这里的 drive 指运行 CD-ROM 的驱动器盘符。点击确定开始安装程序,然后重新启动电脑。 当下次启动服务器时,Microsoft Windows 的恢复控制台将作为服务器启动菜单的一个选项显示。如果用户想开始这项修复程序,选择这个选项;否则,服务器启动将按正常模式进行。 在 Windows 2000 光盘启动时运行恢复控制台,首先要确认的是,服务器的BIOS 是从 CD-ROM 的驱动器开始启动。一旦取得安装程序的文本模式部分,系统将提示用户选择安装 Windows 2000,或按 R 键修复一个
11、现有的安装程序。显然,直接按 R 键,可避免重新安装 Windows 2000。 接下来的一屏将询问用户,选择使用恢复控制台或使用紧急修复程序。恢复控制台是在%systemroot%目录中呈现出的一条命令行。用户可以通过文件重命名方式来修复服务器。 紧急修复程序不同于恢复控制台,紧急修复程序对系统修复提供两个选项,分别是手动修复和快速修复。手动修复检查 Windows 2000 的启动环境,检验 Windows 2000 的系统文件,以及检查引导启动扇区。它不对注册表文件进行检查。当选择快速修复选项,并假设%systemroot%repair 可行时,注册表文件将得到检查。 如果由于系统配置单
12、元问题引起服务器无法启动时,将出现一条错误信息:因为文件丢失或破坏,Windows 无法启动(Windows Could Not Start Because The Following File Is Missing Or Corrupt: WinntSystem32ConfigSystem.ced )。如果用户安装了一个 Promise ATA66 IDE PCI 控制器卡,同样会出现上述错误信息提示。解决的方法是移除这个控制器卡并重新启动计算机。 使用 ERD 恢复系统配置单元 使用 ERD 恢复系统配置单元利用一个最近创建的 ERD 恢复系统配置单元,以运行恢复控制台为例:当显示命令提示
13、时,输入下列命令,每输完一条命令后按回车键。 cd system32config ren system system.old ren system.alt systemalt.old cd winntrepairregback copy system c:winntsystem32config 在这个过程中,用户要对出错的系统和 System.alt 配置单元文件进行重命名,并用 ERD 中最新的系统配置单元文件替换它。所有这些工作都需要继续进行新的 ERD 备份。修复程序由多个文件组成,其中最重要的文件是Setup.log。Setup.log 是一个所有安装文件的 CRC 数据的记录(CRC
14、:cyclical redundancy check 循环冗余校验)。利用这些记录信息,Regback 可以恢复先前的系统配置单元。 在完全理想的环境里,用户应该在最近的 48 小时内创建 ERD;然而,在现实条件中,必须处理服务器运行的注册表配置,它是由最初的 Windows 2000 操作系统设置和现在的设置共同支持。 用户可能必须处理服务器运行的注册表配置,这个注册表配置是原先的Windows 2000 操作系统安装程序。 不使用 ERD 时如何对系统配置单元进行恢复如果用户没有将最新的系统配置单元备份保留成一个 ERD,这里提供了两个选择用来修复服务器上被损坏的系统配置单元,分别是快速
15、修复和恢复控制台。 快速修复的使用用户可以通过上述的紧急修复程序运行快速修复功能,在运行之前,需要绝对地确定没有任何其他的修复选择可供使用。一旦在 Windows 2000 域控制器上运行快速修复时,如同用户第一次安装操作系统那样,Windows 2000 将激活系统配置单元。 快速修复从%systemroot%repair 中寻找必备的文件,然而当用户添加程序并安装在服务器上时,这些必备的文件并没有得到适时的更新。例如,一个域控制器包括诸如活动目录等对象,当快速修复执行结束时,必须重新启动并重新设置所有必需的软件和驱动程序。当域控制器再次运行时,确定它支持日常的系统状态,使用户能够从目录服务
16、恢复模式中恢复活动目录。 恢复控制台的使用使用恢复控制台也许能使用户省去不少时间。当出现恢复控制台命令提示时,输入下列命令,每输完一条命令按回车键。 cd system32config ren system system.old ren system.alt system 紧记 System.alt 是一个完全的 CurrentControlSet 备份,因而它也是最新的系统配置单元文件。重新命名 System.alt,使它作为新的系统配置单元的主要备份被激活。重新启动后,计算机如果可以正常运行,备份工作就算完成了。上述程序,如果出现系统配置单元文件损坏 System.alt,则会导致它可能无法正常工作。 如果因为系统配置单元过于庞大而导致系统无法启动,上述方法则根本不能发挥作用。这是因为 System.alt 是一个直接的系统备份,进行再多的重命名也不能改变其文件大小。此时通过恢复控制台能够采取的最佳方法,是输入以下命令,每输完一条命令后按回车键。 cd system32