bcdedit的研究
首先说明下引导:
微软在Vista之前的系统,采用的是Ntldr来进行引导系统,使用的是boot.ini文件。
在目前的Vista和win7中,采用的是新的引导方式Windows Boot Manager(就是Bootmgr),这个引导从修改的角度来说变成了数据库的形式,不能采取通过记事本修改的方法了,为此微软提供了修改的程序——bcdedit.exe。
提醒:个别功能可以执行msconfig进行修改!或者安装管理软件修改,如easy bcd等。
首先贴出一个bcdedit的例子:
==========================================================
Windows 启动管理器
--------------------
标识符 {bootmgr}
device partition=C:
description Windows Boot Manager
locale zh-CN
inherit {globalsettings}
default {current}
resumeobject {4f73a4f4-bfa7-11de-8f62-ebb3d51eb702}
displayorder {current}
{4f73a4f5-bfa7-11de-8f62-ebb3d51eb702}
{ntldr}
toolsdisplayorder {memdiag}
timeout 2
Windows 启动加载器
-------------------
标识符 {current}
device partition=C:
path \Windows\system32\winload.exe
description Windows 7
locale zh-CN
inherit {bootloadersettings}
recoverysequence {4f73a4f6-bfa7-11de-8f62-ebb3d51eb702}
recoveryenabled Yes
osdevice partition=C:
systemroot \Windows
resumeobject {4f73a4f4-bfa7-11de-8f62-ebb3d51eb702}
nx OptIn
Windows 旧 OS 加载器
------------------------
标识符 {ntldr}
device partition=C:
path \ntldr
description Windows XP
==========================================================
标识符及代号说明:
{4f73a4f6-bfa7-11de-8f62-ebb3d51eb702} 这个就是Windows7
简单的bcdedit命令:
<查看帮助>
bcdedit /? 查看帮助
bcdedit /? set 查看set命令参数的帮助
bcdedit /? createstore 查看createstore命令参数的帮助
...
<备份与恢复>
bcdedit /export "D:\backup" 保存BCD数据库到D盘backup文件
bcdedit /import "D:\backup" 从D盘backup文件恢复BCD引导
<多菜单修改>
bcdedit /timeout 30 修改启动界面等待时间为30秒
bcdedit /default 设置当前系统为默认启动系统。
bcdedit /default {ntldr} 设置标识符为{ntldr}的系统为默认系统。
bcdedit /displayorder {ntldr} {4f73a4f6-bfa7-11de-8f62-ebb3d51eb702}
启动菜单顺数改为第一个为{ntldr},第二个为{4f73a4f6-bfa7-11de-8f62-ebb3d51eb702
bcdedit /displayorder {ntldr} /addlast 将{ntldr}放到启动菜单的最后一个。
除addlast外,还有addfirst(放到第一位)和remove(移除此选项)
注意:bcdedit /displayorder后面必须接标识符,此处如果是{current}也不可以省略。bcdedit /displayorder /addlast是语法错误。
<菜单创建>
bcdedit /create {ntldr} /d "之前的 Windows系统" 创建一个描述为(/d后面的内容)"之前的 Windows系统"的菜单,这个可以用于创建XP等系统引导。
bcdedit /create /d "Windows Vista" /application osloader 创建一个描述为"Windows Vista"的菜单,这个用于Vista和win7等系统的引导。(和上面的就差在最后的/application osloader一句话)
<菜单删除>
bcdedit /delete {4f73a4f4-bfa7-11de-8f62-ebb3d51eb702} 删除标识符为{4f73a4f4-bfa7-11de-8f62-ebb3d51eb702}的菜单
bcdedit /delete {ntldr} /f 删除标识符为{ntldr}的菜单。(删除ntldr的菜单需要后面加上一个/f)
<菜单修改>
bcdedit /set description "windows 7 AT ONE" 将当前系统描述修改为"windows 7 AT ONE"
bcdedit /set {ntldr} description "windows XP AT ONE" 将标识符为{ntldr}的菜单描述修改为"windows XP AT ONE"
bcdedit /set {4f73a4f4-bfa7-11de-8f62-ebb3d51eb702} device partition=C: 设定标识符为"cbd971bf-b7b8-4885-951a-fa03044f5d71"的菜单的引导分区为"C:"
bcdedit /set {4f73a4f4-bfa7-11de-8f62-ebb3d51eb702} path \windows\system32\winload.exe 设定标识符为{4f73a4f4-bfa7-11de-8f62-ebb3d51eb702}的菜单的系统引导文件为"windows\ system 32\ winload.exe"
bcdedit /set {4f73a4f4-bfa7-11de-8f62-ebb3d51eb702} nx optin 设定设定标识符为{4f73a4f4-bfa7-11de-8f62-ebb3d51eb702}的菜单系统开启DEP保护
Bootmgr下面添加NTLDR范例:
bcdedit /create {ntldr}
bcdedit /set {ntldr} device partition=C:
bcdedit /set path \ntldr
bcdedit /set description "WinXP"
第二行的C:是bootmgr启动所在分区,之后要把NTLDR的启动文件拷贝到该分区。
最新文章
- 【转】使用Eclipse搭建Python开发环境
- caffe的python接口学习(3):训练模型(training)
- Inno Step 安装包程序 写INI配置文件脚本
- putty如何使用
- BigInteger类型的解析_超详细解析
- php和egret的配合
- 第2章 面向对象的设计原则(SOLID):3_依赖倒置原则(DIP)
- jQuery UI 实例 - 对话框(Dialog)(zhuan)
- OpenSSL心脏出血漏洞全回顾
- vxworks
- github atom创建自己的语法高亮
- discuz!迁移指南
- mongodb进阶
- 从JDK源码角度看并发锁的优化
- 怎样做ie兼容性
- Android开发中,使用 EditText 输入内容,如何进行一键清空内容处理
- ASP.Net Core 中使用Zookeeper搭建分布式环境中的配置中心系列一:使用Zookeeper.Net组件演示基本的操作
- Nginx动静分离
- MySQL 排名、分组后组内排名、取各组的前几名 及排名后更新插入数据表中
- Excel部署配置DCOM
热门文章
- change kernel defconfig
- visual studio 2008试用版的评估期(万能破解)
- jdk8十大特性并代码demo(转)
- [翻译] DFCircleActivityIndicator DF圆形活动状态指示器
- 第八章openwrt 703N使用HUB(集线器)插U盘等设备
- django基础复习
- IP数字,数字IP
- android4.0 USB Camera实例(三)UVC
- Linux的防火墙–Iptables
- Sqlserver DateTime转换成SMALLDATETIME时“产生一个超出范围的值”