首页 | 邮件资讯 | 技术教程 | 解决方案 | 产品评测 | 邮件人才 | 邮件博客 | 邮件系统论坛 | 软件下载 | 邮件周刊 | 热点专题 | 工具
网络技术 | 操作系统 | 邮件系统 | 客户端 | 电子邮箱 | 反垃圾邮件 | 邮件安全 | 邮件营销 | 移动电邮 | 邮件软件下载 | 电子书下载

操作系统

Windows 9X | Linux&Uinx | Windows Server | 其它操作系统 | Vista | FreeBSD | Windows 7 |
首页 > 操作系统 > Windows 7 > 解析Windows 7下的BCD管理工具 > 正文

解析Windows 7下的BCD管理工具

出处:IT专家网 作者:IT专家网 时间:2010-1-8 12:47:00
   BCD(Boot Configuration Date)即系统引导配置数据,这是从Windows Vista开始才引入的。我们知道,在Windows Vista/Server 2008中BootManager组件负责系统的初始化和引导工作,而与之相匹配系统的引导数据就存储在BCD中。相信大家非常关心Windows 7下的BCD数据管理吧,下面笔者和大家一道就这方面进行一番探讨。

  1、BCD数据管理工具

  也许最常用也最熟悉的系统引导管理就是系统高级引导菜单了,在Windows 7下也不例外。当系统发生引导故障时,为了成功进入系统或者进行排错我们会选择在系统启动的过程中按下F8键进入高级引导选项菜单,并从这个菜单中选择一种高级启动模式进行引导尝试。在此可供我们选择的引导方式主要有安全模式、启用引导日志、最近一次正确配置、目录服务还原模式以及禁用驱动程序前面强制等。需要说明的是,索然这些高级模式会暂时性地修复操作系统的启动方式,以帮助故障的解决和诊断,但是这些模式并不会对引导配置或者BCD存储做出任何永久性的修改。所以,系统高级引导菜单并不是有效的BCD数据管理工具。和此前的Windows系统类似,在Windows 7中可用于修改引导配置和管理BCD存储的工具主要有“启动和故障恢复”控制台,系统配置使用工具(msconfig.exe),以及比较高级的BCD编辑器(bcdedit.exe)。本文就以这三个工具为例说说BCD数据的管理。(图1)

   2、用“启动和故障恢复”控制台实施系统引导配置

 

  在Windows 7的“启动和故障恢复”控制台中我们可以配置系统启动过程中的基本选项,可以使用这些选项设置默认的操作系统、可用操作系统选择菜单的显示时间,以及在需要的时恢复选项的显示时间。无论是否需要将计算机引导到不同的操作系统,都可以通过优化这些设置减少系统启动所需的时间,并加速系统的启动过程。

  依据下面的操作步骤可进入Windows 7的“启动和故障恢复”控制台:右键单击桌面上的“计算机”图标选择“属性”,在系统属性窗口中单击左窗格中任务下的“高级系统设置”链接。在系统属性对话框的“高级”选项卡下,单击“启动和故障恢复”选项下的“设置”按钮就会进入如图2所示的“启动和故障恢复”控制台。在控制台中,我们可以选择默认的启动的操作系统,在安装了多个操作系统的计算机上,单击“默认操作系统”下列列表即可选择希望默认启动的操作系统,如果只安装了一个系统则当前系统就是默认的启动的系统。选中“显示操作系统列表的时间”复选框,并在右侧的文本框中输入要使用的时间(以秒为单位),即可设置操作系统选择列表的显示时间。为了加速系统的启动速度,如果计算机中只有一个系统可以将其设置为“0”,这样就不会显示启动菜单直接引导默认系统。另外,在“启动和故障恢复”控制台中可设置系统发生故障时的后续操作。因为这部分内容与BCD的关系不大,而且已经有作者对此做了非常深入的解析(链接是http://winsystem.ctocio.com.cn/Longhorn/88/8850588_1.shtml),所以就此略过。(图2)

  3、用“系统配置工具”管理系统引导配置

 

  通过“系统配置工具(msconfig.exe)”,我们可以在Windows 7中调整计算机的启动方式。通常情况下,高级用户使用该工具进行系统故障的排错和诊断。例如,作为排错的一部分,可与配置计算机使用诊断启动模式,只加载最基本的驱动和服务。

  依次点击“开始”→“运行”输入msconfig.exe回车后可启动“系统配置工具”,该工具提供了很多选项,应该说是我们管理BCD最方便的工具。在“常规”选项卡下可用于配置系统的启动方式,以及是否需要将系统启动到排错和诊断模式下。通过使用这些选项,可以选择进行常规启动、诊断启动或选择性启动。

在重启计算机并解决问题后,需要再次打开系统配置工具,并在“常规”选项卡中选中“正常启动”单选按钮。(图3)


    图3 系统配置工具(msconfig.exe)

  在“系统配置工具”的“启动”选项卡下可用于控制特定启动过程的工作方式。在此我们可以配置计算机启动到某种安全启动模式下,并可选择其他选项,例如无GUI启动等。如果在排错后发现需要保留这些设置,则可以选中“使所有启动设置成为永久设置”复选框,以便将这些设置保存到引导配置启动项中。(图4)


    图4 “系统配置工具”的“启动”选项卡
   另外,在“启动”选项页面中还有一个“高级选项”按钮,单击该按钮可进入“启动高级选项”对话框。在此,除了可以锁定PCI、检测HAL以及启用测试,还可以使用高级选项实现某些特殊应用。

 

  (1).指定操作系统可以使用的处理器数量。在多处理器的系统中通常会发生某些莫名的故障,如果我们要进行排错以了解该故障是否是由此引起的,可以使用该选项。

  (2).设定操作系统可以使用的内存最大数量。如果我们怀疑某些系统引导问题是有安装了额外的内存引起的,则可以使用该选项。比如,系统本来是2GB的内存,如果在安装了另外的一条2GB内存后导致系统不能引导,为了判断是否是有这条额外的内存导致了上述故障,我们就可以暂时限制系统只能使用2048MB的内存。(图5)


    图5 高级启动管理

  如果怀疑安装到计算机上的某个服务导致系统引导故障,可以在“系统配置工具”的“常规”选项卡下选择诊断或者选择性启动模式的方式进行判断。如果确信是某服务导致了启动故障,那么可以在“服务”选项卡下禁用该服务。在禁用后问题不再发生,应该可以确认是该服务的问题,那么我们就可永久性地禁用该服务或更新该服务。同理,如果怀疑某个在启动时自动运行的程序导致了系统引导故障,那么可以通过“启用”选项卡下的设置来进行排错。(图6)

  图6 系统配置
   4、用“BCD编辑器”管理系统引导配置

 

  对于高级系统用户来说,利用“BCD编辑器”来管理系统引导配置是最灵活的。BCD编辑器(bcdedit.exe)是一个高级命令行工具,可用于查看和设置系统引导环境的配置。不过,需要主要的是,在使用bededit.exe对BCD进行修改之前最后做好系统的备份,以免无操作造成系统引导故障。下面笔者列举Windows 7下bededit.exe的几个应用实例。

  (1).查看BCD项

  打开命令提示符,在其中输入并执行bededit.exe命令就会显示系统的BCD信息。不过,对于一般用户这些信息比较难懂,笔者做以说明。在计算机中包含系统和非系统的BCD存储,系统的BCD存储中包含了操作系统的引导项以及相关的引导信息,bededit.exe工具的操作就是对系统BCD的操作。由于笔者的计算机上只有一个系统,如图所示其BCD存储只有两个项:一个对应了Windows启动管理器,一个对应了Windows启动加载器。在此,Windows启动管理器会调用启动加载器,然后启动加载器会使用winload.exe引导Windows 7。Windows启动管理器和Windows启动加载器对应的BCD项具有类似的属性,这些属性定义了系统的BCD环境。需要注意的是,Windows7 BCD文件比Windows Vista和Windows Server2008多出了 recoverysequence和recoveryenabled两个属性。 此外,其中类似 {ba50c1f0-3752-11de-90d5-cdf8d52a3222}的字符串标识符,以便被系统引用。需要说明的是,如果计算机中安装了其他Windows系统,我们会看到每一个系统都有其对于的BCD项。(图7)


    图7 查看BCD项

  (2).创建BCD

  通过使用BCD编辑器,我们可以创建非系统的BCD存储。在命令行下执行下面格式的命令“bcdedit /createstore storepath”,其中/createstore是参数,表示创建BCD存储,而storepath就是你希望创建非系统存储的文件的时间保存位置。例如我们执行命令“bcdedit /createstore d:\ctocio\bcd”即可。(图8)

  图8 创建BCD
  (3).导入、导出BCD

 

  利用bcdeidt.exe命令我们可以导入或者导出BCD存储,要导出系统的BCD存储中的内容到特定文件需要使用“/export”参数。在命令行下执行命令“bcdedit /export storepath”,storepath就是用于保存系统BCD存储内容的实际文件路径,例如执行命令“bcdedite /export d:\ctocio\backup”就会将系统的BCD信息保存到d:\ctocio\backup文件中。如果要还原系统的BCD信息,我们可以通过bcdedit.exe的“/import”参数将BCD备份导入进来。其命令格式为“bcdedicdt /import importpath”,其中importpath为保存了BCD信息的文件夹的实际路径。例如执行命令“bcdedit /import d:\ctocio\backup”就可将刚才备份的BCD信息重新导入进来。(图9)

  图9 导入、导出BCD

  (4).显示Windows 7隐藏的BCD项目

  默认情况下我们在命令行下执行bcdedit.exe是不能显示所有的BCD项的,Windows 7隐藏了某些BCD项目。如果要查看被隐藏的BCD项目,我们需要执行命令打开显示开关将其显示出来。假如当前系统的标识符是{ba50c1f0-3752-11de-90d5-cdf8d52a3222},在命令行下依次执行命令“bcdedit /displayorder {ba50c1f0-3752-11de-90d5-cdf8d52a3222} /addfirst”和“bcdedit /displayorder {ba50c1f0-3752-11de-90d5-cdf8d52a3222} /addfirst”。这样当我们重新执行bcdedit.exe时就会显示Windows 7中被隐藏的BCD项目。同时,当重启Windows 7时就会在开机菜单中出现Ramdisk Options选项,这是Windows7集成的Windows Recovery Environment,该选项在系统修复/恢复是非常有用。(图10)

  图10 显示Windows 7隐藏的BCD项目
   (5).快速添加系统菜单

 

  安装多系统的用户,往往会因为系统安装次序不够科学而造成系统启动选择菜单不全或者有误,此时我们需要手动添加系统菜单项。下面分别说说如何利用bcdedit.exe命令添加Windows XP启动菜单项和Windows 7启动菜单项。

  假设Windows XP系统安装在C盘,在Windows 7中添加其系统启动菜单项可以依次执行下面的命令或者将其保存为一个批处理文件(bat或者cmd文件)。

  bcdedit /create {ntldr} /d "Microsoft Windows XP"

  bcdedit /set {ntldr} device partition=C:

  bcdedit /set {ntldr} path \ntldr

  bcdedit /displayorder {ntldr} /addfirst

  同样我们假设Windows 7安装在C盘,其语言版本为简体中文版,系统标识符为{ba50c1f0-3752-11de-90d5-cdf8d52a3222},要添加其系统启动菜单项依次执行下面的命令或者将其保存为一个批处理文件(bat或者cmd文件)。

  set id={ba50c1f0-3752-11de-90d5-cdf8d52a3222}

  bcdedit /create %id% /d "Windows 7" /application osloader

  bcdedit /set %id% locale zh-cn

  bcdedit /set %id% device partition=C:

  bcdedit /set %id% osdevice partition=C:

  bcdedit /set %id% path \Windows\system32\winload.exe

  bcdedit /set %id% inherit {bootloadersettings}

  bcdedit /set %id% systemroot \windows

  bcdedit /set %id% nx OptOut

  bcdedit /displayorder %id% /addfirst

  (图11)

  图11 快速添加系统菜单


    (6).更改系统显示顺序

  如果要更改系统引导管理器中诸如Windows 7、Windows Vista、Windows Server 2008、Windows XP在操作系统选择菜单上的显示顺序,我们可以通过bcdedit.exe的“/displayorder”参数来实现。其命令格式是“bcdedit /displayorder id1 id2 id3 ... idn”,其中id1是显示在第一位的操作系统对于的操作系统对应的系统标识符,id2是显示在第二位的操作系统对应的系统标识符,依次类推。比如我们执行命令“bcdedit /displayorder {ba50c1f0-3752-11de-90d5-cdf8d52a3222} {d6be0d13-413a-11de-b285-b6ee0ebcf10e}”则第一项系统标识符对于的系统会第一个显示。另外,我们还可以使用“/addfirst”参数配合“/displayorder”参数设置某系统为第一项,比如执行“bcdedit /displayorder {ba50c1f0-3752-11de-90d5-cdf8d52a3222} /addfirst”。此外执行命令“bcdedit /displayorder {ba50c1f0-3752-11de-90d5-cdf8d52a3222} /addlast”则该系统成为最后一项。(图12)

深入解析Windows 7下的BCD管理工具

  图12 更改系统显示顺序
   

  (7).其他BCD管理

  除了上面比较常用的BCD管理外,笔者再列举几个比较有用的bcdedit命令参数。执行命令“bcdedit /default {d6be0d13-413a-11de-b285-b6ee0ebcf10e}”将该操作系统标识符对应才操作系统设置为默认引导系统。执行“bcdedit /timeout 10”,将系统启动菜单停留的时间设置为10秒。另外,在特殊情况下我们需要将从特定系统引导一次,然后恢复为默认的引导顺序。这是我们需要用到bcdedit的“/bootsequence”参数。例如,执行命令“bcdedit /bootsequence {d6be0d13-413a-11de-b285-b6ee0ebcf10e}”,这样当计算机重启时系统就会从该系统引导,当下次重启计算机时就恢复从默认的系统进行引导。(图13)

深入解析Windows 7下的BCD管理工具

  图13 其他BCD管理

  总结:上面笔者以Windows 7系统为例,演示了利用“启动和故障恢复”控制台、“系统配置工具”、BCD编辑器这三个工具配置和管理系统BCD数据的主要技术细节。虽然上面的演示是在Windows 7中进行的,但其中大多数同样实用于Windows Vista和Windows Server 2008系统,希望本文能够对大家有所帮助。

相关文章 热门文章
  • 新型电子邮件服务Shortmail获75万美元种子资金
  • 微软宣布已售出4亿份Windows 7许可
  • 电子邮件编年史1971~2011(配图,附中文翻译)
  • Powercfg 从命令行控制系统的电源管理
  • windows NT 4.0 Domain升级到windows server 2008 R2需要注意的几个问题
  • windows 7使用GPO统一桌面黑屏
  • Exchange 2007 HUB服务器默认证书过期解决办法
  • IIS 7如何实现http重定向https(OWA 2010http重定向https)
  • Exchange Server 2007中配置多名称证书
  • 利用Transporter Suite实现从第3方邮件系统迁移到Exchange 2007
  • Windows 2003域更名工具(Domain Rename Tool)
  • 几个Exchange 2007命令
  • 用好 Windows 7便笺之快捷键
  • 在windows 7下安装和设置IIS 发布Silverlight 站点
  • Windows 7 和 Windows Server 2008 R2 中的BranchCac...
  • 使用组策略进行账户安全配置
  • 使用 Windows 下的 EFS 加密文件
  • 微软 Windows 中的 PKI 和智能卡技术
  • 实战Windows7硬盘分区管理
  • Windows 7十大快捷键
  • 监视Windows 7中的系统启动性能
  • 使用MDT 2010执行Windows 7裸机安装
  • 轻松传送——Windows Easy Transfer
  • 创建Windows 7部署介质
  • 自由广告区
     
    最新软件下载
  • SharePoint Server 2010 部署文档
  • Exchange 2010 RTM升级至SP1 教程
  • Exchange 2010 OWA下RBAC实现的组功能...
  • Lync Server 2010 Standard Edition 标..
  • Lync Server 2010 Enterprise Edition...
  • Forefront Endpoint Protection 2010 ...
  • Lync Server 2010 Edge 服务器部署文档
  • 《Exchange 2003专家指南》
  • Mastering Hyper-V Deployment
  • Windows Server 2008 R2 Hyper-V
  • Microsoft Lync Server 2010 Unleashed
  • Windows Server 2008 R2 Unleashed
  • 今日邮件技术文章
  • 腾讯,在创新中演绎互联网“进化论”
  • 华科人 张小龙 (中国第二代程序员 QQ...
  • 微软推出新功能 提高Hotmail密码安全性
  • 快压技巧分享:秒传邮件超大附件
  • 不容忽视的邮件营销数据分析过程中的算..
  • 国内手机邮箱的现状与未来发展——访尚..
  • 易观数据:2011Q2中国手机邮箱市场收入..
  • 穿越时空的爱恋 QQ邮箱音视频及贺卡邮件
  • Hotmail新功能:“我的朋友可能被黑了”
  • 入侵邻居网络发骚扰邮件 美国男子被重..
  • 网易邮箱莫子睿:《非你莫属》招聘多过..
  • 中国电信推广189邮箱绿色账单
  • 最新专题
  • 鸟哥的Linux私房菜之Mail服务器
  • Exchange Server 2010技术专题
  • Windows 7 技术专题
  • Sendmail 邮件系统配置
  • 组建Exchange 2003邮件系统
  • Windows Server 2008 专题
  • ORF 反垃圾邮件系统
  • Exchange Server 2007 专题
  • ISA Server 2006 教程专题
  • Windows Vista 技术专题
  • “黑莓”(BlackBerry)专题
  • Apache James 专题
  • 分类导航
    邮件新闻资讯:
    IT业界 | 邮件服务器 | 邮件趣闻 | 移动电邮
    电子邮箱 | 反垃圾邮件|邮件客户端|网络安全
    行业数据 | 邮件人物 | 网站公告 | 行业法规
    网络技术:
    邮件原理 | 网络协议 | 网络管理 | 传输介质
    线路接入 | 路由接口 | 邮件存储 | 华为3Com
    CISCO技术 | 网络与服务器硬件
    操作系统:
    Windows 9X | Linux&Uinx | Windows NT
    Windows Vista | FreeBSD | 其它操作系统
    邮件服务器:
    程序与开发 | Exchange | Qmail | Postfix
    Sendmail | MDaemon | Domino | Foxmail
    KerioMail | JavaMail | Winwebmail |James
    Merak&VisNetic | CMailServer | WinMail
    金笛邮件系统 | 其它 |
    反垃圾邮件:
    综述| 客户端反垃圾邮件|服务器端反垃圾邮件
    邮件客户端软件:
    Outlook | Foxmail | DreamMail| KooMail
    The bat | 雷鸟 | Eudora |Becky! |Pegasus
    IncrediMail |其它
    电子邮箱: 个人邮箱 | 企业邮箱 |Gmail
    移动电子邮件:服务器 | 客户端 | 技术前沿
    邮件网络安全:
    软件漏洞 | 安全知识 | 病毒公告 |防火墙
    攻防技术 | 病毒查杀| ISA | 数字签名
    邮件营销:
    Email营销 | 网络营销 | 营销技巧 |营销案例
    邮件人才:招聘 | 职场 | 培训 | 指南 | 职场
    解决方案:
    邮件系统|反垃圾邮件 |安全 |移动电邮 |招标
    产品评测:
    邮件系统 |反垃圾邮件 |邮箱 |安全 |客户端
    广告联系 | 合作联系 | 关于我们 | 联系我们 | 繁體中文
    版权所有:邮件技术资讯网©2003-2010 www.5dmail.net, All Rights Reserved
    www.5Dmail.net Web Team   粤ICP备05009143号