设为首页
收藏本站
本站论坛
   
3
3
   
  文章列表      

备份与恢复 Windows9x 系统注册表

备份恢复 Windows9x 系统注册表


    注册表是伴随着 Win95 出现在我们面前的 其实它早在 NT 中就担当起了重要的作用
采用注册表来管理系统配置 主要是为了提高系统的稳定性 而系统出现的一些问题 如无
法启动 应用程序无法运行 系统工作不正常等 很多都是因注册表出现错误而造成的
通过修改相应的错误数据就能使得 Windows 工作如初了 但注册表的结构太复杂 不正确的
修改常常会带来更坏的结果 下面介绍几种安全恢复注册表的方法 希望帮助大家远离令人
头疼的注册表问题
    Win9x 系列操作系统的注册表 实际上是一个数据库 它以分层结构存储着整个计算机
的系统配置以及大量应用程序的安装使用时要调用的各种信息等 它由 3 个相对独立的注册
表文件组成 系统配置注册表文件 System.dat 用户平台配置注册表文件 user.dat 和网
络管理注册表文件 config.pol 它们存储在 Windows 目录中 其中 system.dat 中存储着当
前计算机的配置 特别是各种即插即用设备的硬件配置 如设置的 I/0 地址 中断号 IRO
以及 DMA 的值等 user.dat 主要用来定义用户的优先权 存储着特定于某一用户的应用程
序的安装信息等 而 config.pol 则是只有当 Win98 的用户安装了系统策略编辑器后才会生
成的注册表文件 它存储的设置可以对网络用户的操作做出限制 一般而言 组成一个完整
的注册表文件系统 system.dat 和 user.dat 这两个文件是必不可少的
    一 文件备份还原法
    显然 及时 正确的备份能够在计算机发生意外时 比较完全地恢复整个工作进程 对
注册表进行的备份也一样 利用在正常工作状态下备份的注册表可以用来恢复发生错误的注
册表 从而达到使系统重新恢复正常工作的目的
      一 备份
    1 简单拷贝法
    备份注册表就是备份 system.bat 和 user.dat 这两个文件 它们的文件属性都是系统
隐藏 只读的 因此一般情况下无论在 DOS 还是 Windows 窗口状态都是不可见的 在备份
要注意使用一些 技术
    在 DOS 状态下 请先进入 Windows 目录 然后键入命令 Attrib-h-r-s system.dat
对于 user.dat 同样操作 此时就可将这两个文件复制到其他的目录中去了
    在 Windows 窗口状态下 在 查看 中选择 文件夹选项 查看 在 隐藏文件
中选择 显示所有文件 ,这样 system.dat 和 user.dat 才能在文件夹窗口中显示出来 剩
下的复制工作应该就不用我多说了吧
    2 注册表导出法
    将注册表导出 也是一种不错的注册表备份方法 在 开始 运行 栏中运行
  Regedit.exe 选 注册表 导出注册表 日后选择导出注册表文件的存储位置就
可以了 要注意的 在导出注册表时 千万要在 导出范围 中选择 全部 否则导出的
注册表文件不完全 将无法用来恢复原注册表 采用此方法备份后只生成一个文件 它的文


                                        39

件名的后缀是 .reg
      二 还原
    1 简单拷贝法的还原
    还原的方法当然是重新用备份的文件覆盖现有文件 不过要注意的是 在覆盖现有文件
前 同样得先将 system.dat 和 user.dat 的文件属性全部取消 否则系统会拒绝覆盖操作
在还原前请务必启动到 DOS 状态下 然后再进行此操作 千万不要在 WindowsWindows
的 DOS 窗口下进行此还原操作 否则不但不能恢复注册表 反而会对注册表产生极大的破坏
    2 注册表导出法的还原
    利用注册表导出法的注册表文件还原系统时 既可以在 Windows 下进行 也可以在 DOS
下进行
    在 Windows 下进行时 运行注册表后选 注册表 导入注册表 选择要导入注册
表文件的所在位置 重新启动后就可以恢复注册表 虽然此法无论在安全模式还是正常方式
下都可以进行 但为了保险起见 笔者还是建议最好在安全模式下或是干脆用下面介绍的在
DOS 下进行操作
    在 DOS 下只能以命令行的方式运行 Reagedit.exe 但它可以解决无法进入 Windows
况下的注册表恢复问题 其命令行形式
    Regedit [/L: system]    [/R: user]filenamel
    Regedit [/L: system]    [/R: user] /     filename2
    Regedit [/L: system]    [/R: user] /     filename      regpath1
    Regedit [/L: system]    [/R: user] /D regpath2
    参数含义
          system 指定 system.dat 文件的存放位置
          user 指定 user.dat 文件的存放位置
    filename1 指定导入的注册表数据库文件名
          filename      利用指定的注册表文件重新生成注册表
          filename    导出注册表文件为指定文件名
    regpath1 将指定开始关键字的部分从注册表文件中导出
          regpath2 将指定开始关键字的部分从注册表文件中删除
    具体在恢复注册表时 可以采取命令行 的形式 regedit bak.reg 假设你导出的备
份注册表文件为此文件名 不过建议采用命令行 的形式 即 Regedit/C bak.reg 因为
此命令不但会将 bak.reg 中的所有信息导入注册表 而且会将其中的一些无用的信息 如一
些已经被删除的程序在注册表中的残留部分关键字等 同时剔除 从而达到压缩重建注册表
的目的
    顺便提一下 命令行 也不一定要在恢复注册表才使用 平时运行也能压缩 清除注册
表中的 垃圾 从而起到提高 Windows 启动速度 减少注册表错误发生几率的作用 笔者
就曾经利用此命令将原来 M 的注册表压缩为 M 要注意的是 在使用此命令时 请务必
在运行前加载磁盘缓冲 smartdrv 否则它的运行时间之长或许足够你去看一场电影了
    二 系统备份
    正是由于注册表对于系统的重要性 微软在开发 Windows 95 时就考虑到系统对于注册
表的自动备份问题 尽管它所提供的功能直到 Windows98 才令人稍感满意 但毕竟这也不失
为修复注册表的方法之一
    Win98 对注册表文件备份系统的改进之处主要体现在以下两个方面 备份文件不仅包
括 system.dat 和 user.dat 还包括了 system.ini 和 win.ini 这两个初始化文件 大大提
高了系统还原的完整性 备份文件被统一地压缩在一个文件中 而且备份压缩文件的数量



                                        40

大大增加 避免了在 Windows95 下一个备份容易发生错误无法恢复的现象
    Win98 将注册表的备份文件放在了 Windows 下面的隐藏子目录 Sysbckup 中  备份文件
rdx 为名   都是 CAB 格式的压缩文件 每个文件包含 system.dat user.dat system.ini
和 Win.ini 默认情况下 系统共留有 5 个 X 从 000 到 004 如果某次有错误 数字往后
顺延 压缩包备份 这 5 个压缩包备份分别是你最近 5 个工作日中第一次启动计算机时系统
所做的备份 请注意 并不是最近 5 次 举个例子 如果你每天都使用计算机 那么这个 5
备份中保存的分别是 5 天来每天你第一次启动计算机的注册表文件 当某次启动发生错误
时 系统会将这时的注册表文件另外保存为 rbbad.cab 以供使用者分析 寻找发生错误的
原因所在
    了解了Win98的备份原理后 对于注册表的还原就比较轻松了 如果你可以进入Windows
  哪怕是安全模式 想进行备份还原的话 只要用 Winzip 等支持 CAB 压缩格式的软件选择
最近的或是前几天的备份压缩包文件 并将其中的 4 个文件解压出来 重新启动计算机到
DOS 状态 利用这些文件覆盖相应同名文件就可以了 如果你在启动的时候就无法进入
Windows 的话 那么可以尝试在 DOS 下进行备份还原工作 利用 Windows 提供的
extract.exe 文件 用命令行方式将备份文件展开 直接对系统注册表文件进行覆盖还原 假
设当前目录为 Windows extract/Y Sysbckup\rbx.cab 其中 X 为 000-004 利用 Windows
附带的 scanreg.exe 在 DOS 状态下运行此程序 按提示选择检查注册表 在程序检查完注
册表后 可以看到 Create Backups 和 View Backups 这两项 前者用来将当前的注册
备份下来 后者用来查看以前备份的注册表情况 选择后者 屏幕将显示近日来的各备份
注册表文件情况 主要是备份的时间 选择你想还原的备份 按回车 然后选择 Restore
开始还原 还原完毕后选择 Restart 重新启动计算机就可以了
    三 损坏后的补救
    古人云 亡羊补牢 为时未晚 如果你从来就没有备份注册表的习惯 或是在 Windows
下所有的系统自动备份都已经如前所述被已遭破坏的注册表文件所替代了的话 那么试试下
面的方法 或许能使你的机器再次正常运转起来
      一 就地还原法
    一般而言 当 Win9x 在成功安装完毕后 会自动将第一次正常运行时的系统信息 其实
也就是注册表信息 主要是相应的硬件信息 保存在 C 盘根目录下的 ststem.lst 这个文件
中 利用它有可能将系统恢复到最初安装时的状态 具体的做法如下 在 DOS 下 首先去除
system.lst 以及 Windows 上当下的 system.dat 的文件属性 它们都是系统 只读 隐藏属
性 然后将 system.lst 拷贝为 system.dat 来覆盖系统的 system.dat 最后重新启动计算
机 如果启动成功 还得对系统进行大幅度地调整才能恢复到破坏前的状态
      二 李代桃僵 法
    如果有和你硬件配置大致相同的计算机 可以用那台计算机上的注册表文件
  system.dat 和 user.dat 来覆盖自己计算机上的注册表文件 然后启动 如果可以进入
Windows 再对系统做相应的修改 就能恢复如初了 尽管这种方法成功的概率比较小 大
约在 25%左右 但这也是不得已而为之 或许能将你的 死马 真的医活了
    如果上面的招数对你都无效 那我再教你一记 越级绝招          准备好你的 Windows
安装光盘 然后 Setup 吧 ^_^> >更多精彩技术文章>http://www.66of.com
 
 
   
 
网上赚钱申请指南
 

友情链接
个人主页
 
 
 
 

wel come to . 欢迎光临
宇宙浪仔