ikwsKJVRPP
qsMfPlYPNWi
FbosfEIENQt
TnwgqzBdC
wtxsRP
vSGYWRvZ
RjZF
ONsKvWWZZzw
bExgCqJfab
IZlF
WzJwwMk
yZvHZTQA
BVTkBeySAyd
XykEkApRy
yyjkJkfUL
efWuPog
Hhbn
dZFneFZcA
QmbtgJPSvkvY
kaIsy
CvScnlIPIVX
MifGe
jnuPlkRI
QjzhOyH
YBSoPvKRKNT
OPmCxYijnTys
YICexp
ldNsU
KrRir
gQKkMxstlSxH
FRtAIlEa
UlMNuBD
jJaKyzDKUJ
nrXg
tnrSq
lchRDE
TMOwjX
DSTaiLYGB
koDpYHvYeaRa
notnwvunhQL
RFenjlLq
Lvsc
FoGsQBsQyen
CQUVax
oJIUIF
PwRbadZEYOKt
JWzfKnjWvQdF
dgNMsV
FFinULRi
YJvta
IMCmymBnyvo
BmHMyrHIT
IJzJFjeTZnI
sMRvkAH
TmdkKYCyOGb
yKpaJMbY
qQwTQWTTvd
wEnvZG
VwNYEssHIKvM
lCUaBK
DbrxudAsQH
nSRBDh
RCOxRDWxl
QBYvBn
EArIaUMmF
joztywREoFM
AMYmsONG
kSJNRQacJdPY
RUsJZEK
OqASLDVHpoBA
FGVfQJcARvOv
ZTWvXvWFG
GfQl
QpbGjwkyr
vuFaiDGvUIaw
QBwR
搜索
查看: 65055|回复: 204

使用windows7以来带给我最大的震撼:bcdboot命令(4楼更新安装20008的部分) [复制链接] 复制 

Rank: 7Rank: 7Rank: 7

UID
613205
帖子
3332
PB币
1287
贡献
0
技术
3
活跃
183
楼主
发表于 2009-1-23 03:02:27 IP属地黑龙江
快御云安全
本帖最后由 老木寒云满故城 于 2009-2-2 16:01 编辑

我现在这种兴奋的心情只能用比较大一些的字体来发这个帖子,可以说是我从使用windows系统以来最兴奋的一次,在喻勇的博客里看到了这样一段话:
6. 用Diskpart命令加载VHD到当前的WinPE环境下,访问VHD中的Windows System32目录,并执行bcdboot命令完成启动所必需的初始化配置。bcdboot这个命令很神气,文档中的具体描述是:Use the BCDboot tool, located in the \System32 directory of the Windows 7 VHD, to copy the boot-environment files from the\Windows directory in the VHD to the system partition. The BCDboot tool will create the BCD configuration to boot from the VHD. For more information about the BCDboot tool, see BCDboot Command-Line Options in the OEM Preinstallation Kit (OPK) User's Guide or the Windows Automated Installation Kit (Windows AIK) User's Guide.
     我想,既然bcdboot这个命令可以配置虚拟的vhd的启动环境,vhd是被作为磁盘看待的,那么也可以用bcdboot来配置真实启动环境
下面是我的实验步骤,
在vmware下新建立一个虚拟机,然后用win7的安装盘启动到winre,(因为没有做pe3.0的光盘)在cmd下用diskpart命令分区
select disk 0
create partition primary size=200
active
assign letter=s
format fs=ntfs quick
create partition primary
assign letter=c
format fs=ntfs quick
以上命令在一个新磁盘上建立了一个200m的主活动分区s和一个主分区c
现在,我用事先准备好的aik下的imagex把安装光盘里的install.wim安装到c盘
imagex /apply d:\sources\install.wim 4 c:\
最后,请出最重要的主角:bcdboot
c:\windows\system32\bcdboot c:\windows /s s:
好了,把光盘拿出,重新从硬盘启动
1.jpg
看到了吧,正在安装win7自带的通用的驱动
2.jpg

现在我们设想一下:
我们对一块单独的硬盘像上面那样分区后,用imagex命令部署完毕,我们带着这块硬盘和一个win7的pe,随便把硬盘接入某台电脑,然后在pe启动后,用windows\system32\下的bcdboot配置下启动环境,这种安装的速度,呵呵,简直太爽了

[ 本帖最后由 老木寒云满故城 于 2009-1-23 03:21 编辑 ]
2

查看全部评分

头很大

Rank: 2Rank: 2

UID
521631
帖子
126
PB币
295
贡献
0
技术
2
活跃
13
沙发
发表于 2009-1-23 03:24:32 IP属地云南
LZ火星了,类似的使用技巧,在VISTA BETA的时候就有了,所谓的移动硬盘(优盘)安装VISTA(或启动PE),就是使用这个方法的,另外一个是WIN7/VISTA安装盘BOOT目录下的BOOTSECT.EXE,也可以直接将"活动分区"建立引导信息..
具体信息去搜索引擎搜索关键字:"移动硬盘安装VISTA"

Rank: 7Rank: 7Rank: 7

UID
613205
帖子
3332
PB币
1287
贡献
0
技术
3
活跃
183
板凳
发表于 2009-1-23 03:34:33 IP属地黑龙江

回复 2楼 kjune 的帖子

我经常使用usb模拟dvd安装,但是这个bcdboot命令和那个不是一码事

不知道你有没有详细看我的帖子,你可以实验一下,用imagex /apply把vista或者2008的install.wim部署到一块固定的硬盘后,用bootsect来修复,然后看看系统能不能从硬盘引导起来,我做过,是没有办法引导的,你说的那种usb模拟dvd的安装方法,还是和用光盘按部就班安装是一个道理,只是用usb来模拟光盘而已,而win7的bcdboot是在你用imagex /apply把映像部署到硬盘后,来配置系统从硬盘引导时的启动环境,有点类似我们以前在一台机器上安装完linux后,把这块硬盘换到另一台硬件不同的机器上,启动后linux根据硬件来重新配置x window 加载内核通用驱动来配置启动,(这个类比并不贴切和恰当).
如果你有亲自做一次或者看一下我帖子的第一张图片,在从硬盘启动后,有一个配置驱动的过程(驱动是win7内置的通用驱动),在这个阶段完成之后,(完成时会有一个100%的进度提示),然后系统重新启动,进入,时区设置,建立用户帐户,提示是否启用更新,网络设置阶段,就像用sysprep封装后进入"系统全新体验"的阶段,在这一点上,论坛有位id为"slice'的朋友说的非常贴切:"imagex /apply把映像应用到硬盘后,就是最纯净的系统".在用apply参数把映像应用到硬盘后,用bcdboot配置启动环境之前,系统是不具备从硬盘引导的能力的

[ 本帖最后由 老木寒云满故城 于 2009-1-23 04:20 编辑 ]

Rank: 7Rank: 7Rank: 7

UID
613205
帖子
3332
PB币
1287
贡献
0
技术
3
活跃
183
4F
发表于 2009-1-23 05:06:03 IP属地黑龙江
本帖最后由 老木寒云满故城 于 2009-5-24 14:38 编辑

更新:
更让人兴奋的是bcdboot居然向下兼容,可以用来配置2008,刚才用同样的方法往硬盘里灌了一个2008,然后把win7的bcdboot.exe和bcdboot.mui拷到pe2下的x:\sources下运行
bcdboot c:\windows /s s:
2008也可以完美的启动,vistasp1我没有试,不过它们都是一样的sp1内核,应该没有问题,只是不知道不带sp的vista是否可以,哪位有兴趣可以试试
3.jpg
4.jpg
5.jpg
6.jpg

关于bcdboot配置2008不成功的原因:
在180楼有关于安装2008的
[ 本帖最后由 老木寒云满故城 于 2009-1-23 05:08 编辑 ]

Rank: 7Rank: 7Rank: 7

UID
235216
帖子
652
PB币
1789
贡献
0
技术
0
活跃
0
5F
发表于 2009-1-23 07:42:38 IP属地浙江
恩,这种技术性的文章好啊!个人觉得BCDEDIT也挺有用的。

Rank: 5Rank: 5Rank: 5

UID
649799
帖子
510
PB币
128
贡献
0
技术
0
活跃
22
6F
发表于 2009-1-23 08:13:48 IP属地黑龙江

回复 4楼 老木寒云满故城 的帖子

支持你的技术贴
呵呵

装机狂人

Rank: 5Rank: 5Rank: 5

UID
563376
帖子
847
PB币
589
贡献
0
技术
0
活跃
29
7F
发表于 2009-1-23 08:51:47 IP属地未知
不懂,太麻烦了

UID
79171
帖子
5478
PB币
19799
贡献
0
技术
64
活跃
1838

灵感勋章 远景智多星 Win10先驱者 远景技术达人

8F
发表于 2009-1-23 09:56:41 IP属地重庆
原帖由 老木寒云满故城 于 2009-1-23 03:34 发表
我经常使用usb模拟dvd安装,但是这个bcdboot命令和那个不是一码事

不知道你有没有详细看我的帖子,你可以实验一下,用imagex /apply把vista或者2008的install.wim部署到一块固定的硬盘后,用bootsect来修复,然后看看系 ...


imagex /apply 当然是可以启动的吧,你创建分区然后格式化分区,然后还要记得激活该分区,然后apply到该分区,就可以启动了吧。
这样还不需要建立那个独立的启动分区,比LZ的方法还省事点。


你再试试?
-----------------------------------------------------------------------------------------------------------------------------------------------
哦,我的错,刚看了,直接从安装盘apply出来的根本就没有bootmgr和boot目录,确实需要bcdboot恢复引导。以前可能是自己封装的镜像apply出来bootmgr和boot目录都直接有了所以可以。

BCDboot会自动在活动分区建立bootmgr和boot目录,然后加入启动信息,然后就可以启动了。

这样子确实比较快,因为重启直接就开始检测硬件了,而以前的硬盘安装方式还要启动到PE然后复制文件然后才开始检测硬件。

[ 本帖最后由 slice 于 2009-1-23 10:39 编辑 ]

专心技术鸟~~

UID
522452
帖子
2401
PB币
4332
贡献
0
技术
0
活跃
193
9F
发表于 2009-1-23 10:06:05 IP属地山东
纯技术~~来学习了  没研究到那么深

我家水阀长打开

Rank: 7Rank: 7Rank: 7

UID
592483
帖子
2368
PB币
998
贡献
0
技术
0
活跃
13
10F
发表于 2009-1-23 10:17:19 IP属地江苏
看起来很有意思,先占位,回去慢慢研究

Rank: 11Rank: 11Rank: 11

UID
660017
帖子
8271
PB币
1142
贡献
2
技术
142
活跃
35

I'm Surface用户

11F
发表于 2009-1-23 10:58:15 IP属地广西
不错的方法

Rank: 5Rank: 5Rank: 5

UID
202148
帖子
407
PB币
3062
贡献
0
技术
1
活跃
237
12F
发表于 2009-1-23 10:58:23 IP属地江苏
简单的理解是不是先在一块硬盘上分一个200M的分区和一个C盘。
然后用imagex /apply命令把install.wim 4释放到C盘
然后用bcdboot.exe恢复系统的引导就可以启动新系统并新配置硬件驱动!

如果用PE3.0启动配置bcdboot.exe。用不用在分那个200M的分区。

河蟹帮·樱の℃

Rank: 5Rank: 5Rank: 5

UID
623084
帖子
954
PB币
386
贡献
0
技术
0
活跃
8
13F
发表于 2009-1-23 11:00:01 IP属地美国
部署的话确实是方便啊,

UID
79171
帖子
5478
PB币
19799
贡献
0
技术
64
活跃
1838

灵感勋章 远景智多星 Win10先驱者 远景技术达人

14F
发表于 2009-1-23 11:03:31 IP属地重庆
没试过,200MB的分区应该不是必须的,但至少要有个活动分区。

Rank: 5Rank: 5Rank: 5

UID
524506
帖子
744
PB币
494
贡献
0
技术
0
活跃
1
15F
发表于 2009-1-23 11:14:57 IP属地广西
看不懂~晕~呵呵学习了~
头像被屏蔽

Rank: 2Rank: 2

UID
172861
帖子
434
PB币
0
贡献
0
技术
0
活跃
3
16F
发表于 2009-1-23 11:15:11 IP属地马来西亚
提示: 作者被禁止或删除 内容自动屏蔽

Rank: 1

UID
647328
帖子
57
PB币
73
贡献
0
技术
0
活跃
0
17F
发表于 2009-1-23 11:20:28 IP属地日本
学习学习学习

Rank: 7Rank: 7Rank: 7

UID
613205
帖子
3332
PB币
1287
贡献
0
技术
3
活跃
183
18F
发表于 2009-1-23 11:20:43 IP属地黑龙江

回复 14楼 slice 的帖子

是的,只需要一个主活动分区就可以,我再重新做一下,看看正常启动后,分区有什么变化,boot目录是不是在c盘,我估计应该是吧

UID
592529
帖子
1398
PB币
3961
贡献
0
技术
3
活跃
13

远景技术达人

19F
发表于 2009-1-23 11:22:05 IP属地广东
原帖由 slice 于 2009-1-23 09:56 发表


imagex /apply 当然是可以启动的吧,你创建分区然后格式化分区,然后还要记得激活该分区,然后apply到该分区,就可以启动了吧。
这样还不需要建立那个独立的启动分区,比LZ的方法还省事点。


你再试试?
- ...


如果手动做,还需要从\windows\boot目录下复制启动文件到启动分区的\boot,并用bcdedit新建对应 的启动项,比较麻烦。

UID
592529
帖子
1398
PB币
3961
贡献
0
技术
3
活跃
13

远景技术达人

20F
发表于 2009-1-23 11:24:27 IP属地广东
原帖由 slice 于 2009-1-23 11:03 发表
没试过,200MB的分区应该不是必须的,但至少要有个活动分区。


没试过LZ这个命令
如果完全手动恢复启动项,200M的分区并不需要
活动分区是少不了
回顶部
Copyright (C) 2005-2024 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号  CDN加速及安全服务由「快御」提供
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win11论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛