2024年2月28日发(作者:)
WIMBOOT配合primo启动 win7 x64/WIN8 X64/WIN7 X86
参考了无忧的原贴 [原创] 最新微软技术WIMBOOT配合primo启动 win7 x64--更新教程
----------------------------------------------------------------------------------------------------------------------
7月9人更新 修改了第4步的错误,删除vdf所在的盘符这里是E盘可能会导致VHD的E盘符改变导致制作失败。
第9步 添加了 利用制作单镜像Primo Ramos的方法把 指针文件移动到VDF上启动成功
----------------------------------------------------------------------------------------------------------------------
一、需要的环境或软件:
a) 系统:pe5.1 win8.1up系统或2012集成UP1补丁。
b) 软件:bootice, .
二、原理简述
制作大体分为2个阶段
I阶段是给win7添加wimboot支持,包括驱动和native系统文件覆盖保证wof驱动运行后能识别这些pointer file,对于win8还需要windowboot下面的启动文件。
II阶段是将文件移动到primo驱动生成的内存盘符上,首先DISM能在win8.1up或者集成了4个补丁及wof驱动的2012上操作,微软的wimboot指针是需要SCSI磁盘的签名来确定wim文件所在的盘。所以要构造一个相同的磁盘签名的SCSI内存盘,这里我们是通过注册表导入的方法,重启让primo生成一个win7系统上属性完全相同的内存盘,保证win7对应的pointer file指向primo上的。
三、制作过程
事先先用bootice 编辑bcd 开启测试模式跟 禁用数字签名
进系统所有设置软件等 完成后 安装 F驱动 内存盘Primo Ramdisk (不需要设置任何内存盘)
安装好VHD x64 win 7/ VHD X64 WIN8/ VHD X86 WIN7..
============以下为当前VHD win 7操作===============================================
1.重启 F8 选择启动日志记录提取
a)启动vhd按F8选择启动日志
b)进入系统 打开 第1步提取ntbtlog,双击,然后得到一个文件,打开它
把所有关于是
system32drivers的文件的记录行都删掉
然后我得到这些
删除最上面哪行“Service Pack 1 7 7 2014 13:28:29.610”
CTRL+H全部替换
把,好了把你得到的文件记录补充到
的最后面,保存,第一步完成
2.安装wof驱动及复制文件 :步骤如下
根据你的系统选择对应的步骤
1、对于32位系统:win7x86&win8 x86运行附件中第2步的32位wof驱动安装
有说明安装成功
2、对于win8 64位系统
运行
、--!
3、对于win7 64位系统.先运行
之后还要用 dseo13b 开启 测试模式 和 C:签名(win8和win7x86可跳过这步)
a)开启测试模式
直接下一步(Next).
b)、签名C:
这里 改为,然后重启进入系统用cmd下面
Fltmc查看wof驱动是否成功安装,如果没成功CMD下面用fltmc load wof再看看。
3.进入pe 5.1 也就是 win 8.1up的 pe
安装Primo Ramdisk (也什么都不设置)
解压第3步pe下生成内存盘以及创建wimboot等等.rar 运行里面的批处理 根据提示完成
4. 提取启动文件,覆盖到VHD指针
a)首先要挂载你的VHD x64 win 7/VHD X64 WIN8/VHD X86 WIN7..假设挂载后为Y盘
b)打开第一步文件夹,里面有你追加了(启动日志)的
c) 之后运行比如我要提取启动文件到m:123文件夹
然后用提取的启动文件m:123覆盖到相对应指针VHD
这个过程可能会提示权限不够,指针文件不能覆盖 ,没关系,打上我第7步文件夹里面右键获取文件管理员权限的注册表
之后你就可以鼠标右键对需要的文件夹获取管理员权限了别忘了保存VHD哦亲~!~
d)注意如果是win8还需要覆盖windowsboot 这个目录
8.给VHD指针文件添加BCD启动项目
用bootice这个工具就行了!
到此你的wimboot就成功移植到primo的内存盘了,快去启动测试下~~~
=============成功进入 wimboot后==========================================
注意如果要把VHD也弄进内存,那么VHD必须是固定磁盘才可以
用工具制作的VHD是动态的,G4D无法识别,需要你手动创建一个固定VHD在生成指针到这个VHD上面。
9.如果需要把vhd也弄进内存 (打造全内存系统)
方式1 g4d+f驱动引导 的VHD
a.安装F驱动
b. 在VHD里面添加 boot 以及bootmgr
c. grub4dos引导 VHD即可 (具体请查看本论坛帖子)
方式2 基于P驱动制作单镜像用G4D启动(这里用win7举例)
类似下面的效果:
附图:
制作方法和制作PRIMO单镜像的ramos相同 这里简单说下制作前先备份指针文件
------------------------------进入VHD指针的系统操作过程-------------------------------
a. 进入在primo软件新建个scsi格式的内存磁盘(例如盘符为R:)可以动态内存,并关联硬盘镜像,例如e:,并手动保存一下到VDF。
------------------------------进入其他系统或者PE里面操作过程-------------------------------
b. 重启 后进入PE,把你更改的VHD指针文件复制一份到
------------------------------进入VHD指针的系统操作过程-------------------------------
c. 重启进入你的指针VHD系统,把TEMP。vhd加载后用DG把整个磁盘克隆到R:上面去,
或者用ghost也可以,不嫌麻烦复制过去也行
d. 确保你的R:上面有 boot文件夹 和bootmgr文件。如果,没有自己copy一份到里面
修改R:BOOTBCD 为类似这样(你懂的)Boot(wim)/LOCATE(vhd)
e. 之后离线修改R盘的注册表;打开注册表加载R:windowssystem32configSYSTEM文件,替换MountedDevices下面的磁盘盘符R换成C
f. 好了把这个VDF在手动保存下,复制一份替换原来的。
g. 把这个VDF启动项添加在
这里附上个我写的:
title RAM
find --set-root /boot/
map (hd0) (hd1)
map --read-only /boot/ (hd0)
map --hook
chainloader (hd0,0)/BOOTMGR
注: ”/boot/” 修改这个和你VDF路径名称对应即可。
当然把指针VHD搞进内存还有很多方法,发挥你的想象,把以前制作内存系统的方法结合
起来,你有很多种选择,这里就不一一叙述了,以上只举几个比较好的方案
本教程是修改而来的-插图补充-2014年12月30号更新


发布评论