无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 7470|回复: 23

[原创] 使用WIMboot制作基于内存启动的WIN8.1

[复制链接]
发表于 2015-1-12 16:20:34 | 显示全部楼层 |阅读模式
本帖最后由 huaqingyuan 于 2015-1-12 16:45 编辑

         能这样使用系统的,想必也一定是有一定功底的朋友,所以一切从简,我不想繁琐的说所有细节过程。

1.将系统安装到D:\VHD\WIN8101.VHDX文件,使用win8.1update1以上64位版本。
2.想办法到WIN8.1PE环境,有很多方法,比如U盘启动,直接使用安装文件的BOOT.wim还有恢复环境都可以
3. 修改WIN8101.VHDX为WIN81.VHDX,创建WIN81.VHDX的子VHD,WIN8101.VHDX,WIN8102.VHDX,WIN8103.VHDX.将WIN8102.VHDX也加入启动项WIN8.1 02,WIN8103.VHDX作为备份,因为在即使从子VHD启动WIN81.VHDX也是正在使用,以后无法创建子VHD的了。
这样我们就有了二个WIN8.1
4,从第一个8.1启动,安装好我们所有需要的软件,安装补丁,优化系统等,一切好了之后,从第二个WIN8.1启动,将WIN8101.VHDX载入,到G盘。
5,将G:\Windows\System32\config\system载入到注册表1111项,导入RAMDISK的注册表,
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\1111\ControlSet001\Services\Ramdisk]
"DisplayName"="@ramdisk.inf,%RamdiskServiceDesc%;Windows RAM Disk Driver"
"ErrorControl"=dword:00000001
"ImagePath"=hex(2):5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,\
  74,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,64,00,72,\
  00,69,00,76,00,65,00,72,00,73,00,5c,00,72,00,61,00,6d,00,64,00,69,00,73,00,\
  6b,00,2e,00,73,00,79,00,73,00,00,00
"Start"=dword:00000000
"Type"=dword:00000001
"Group"=""
"Owners"=hex(7):72,00,61,00,6d,00,64,00,69,00,73,00,6b,00,2e,00,69,00,6e,00,66,\
  00,00,00,00,00
卸载1111项,查找G盘ramdisk.sys文件复制到G:\Windows\System32\drivers目录
6,制作WIMboot8.1.wim文件
DISM /Capture-Image /WIMBoot /ImageFile:d:\VHD\WIMboot8.1.wim /CaptureDir:G: /Name:"WIMBoot w8.1"
7,创建固实VHD文件D:\VHD\ram8.1.vhd,大小2G。(这个大小不能大于常规内存,有朋友使用3.2G都可以,但是我笔记本上面好像是不行,最大2G,您可以自己尝试)
8,D:\VHD\ram8.1.vhd载入到H盘,应用WIMboot8.1.wim到H
DISM /Apply-Image /ImageFile:d:\VHD\WIMboot8.1.wim /ApplyDir:h: /Index:1 /WIMBoot
9,卸载,G,H。删除WIN8101.VHDX,WIN8103.VHDX.(WIN8102.VHDX正在使用,无法删除)
10.创建WIN8101.VHD,WIN8103.VHD,子VHD,父VHD指向ram8.1.vhd
11,删除所有WIN8.1启动项目,创建WIN8101.VHD启动项目(这时候WIN8102.VHDX依然可以使用,也可以不删除其启动项目,等以后删除,防止操作中的失误)
12,从WIN8101.VHD启动,如果成功,删除WIN8102.VHDX,WIN81.VHDX,
13,复制WIN8103.VHD为WIN8102.VHD,WIN8103.VHD依然保留为备份。WIN8102.VHD加入启动项目。这样WIM启动的二个系统就完全OK了,占用空间极少
14,复制WIN8101.VHD启动项,名字RAMDISK WIN8.1记住其标识符identifier。它的标识符这里我们用{RAMDISK WIN8.1}表示
(bcdedit /copy {current} /d "RAMDISK WIN8.1")
15,复制{ramdiskoptions},记住其标识符identifier,(bcdedit /copy {ramdiskoptions} /d "ram set")这里我们用{RAMDISK GIUD}表示
16,修改RAMDISK WIN8.1中的device,还有osdevice为ramdisk=[D:]\vhd\ram8.1.vhd,{RAMDISK GIUD} 。
(bcdedit /set {RAMDISK WIN8.1} device  ramdisk=[D:]\vhd\ram8.1.vhd,{RAMDISK GIUD} )
(bcdedit /set {RAMDISK WIN8.1}  osdevice  ramdisk=[D:]\vhd\ram8.1.vhd,{RAMDISK GIUD} )
17,删除,{RAMDISK GIUD}里面的所有项目,
18,为,{RAMDISK GIUD}添加ramdiskimageoffset     值 65536   。(bcdedit /set {RAMDISK GIUD} ramdiskimageoffset    65536)
19,重启选择RAMDISK WIN8.1完成

命令实际操作肯定会有变化,所以我一般不写出来命令,写出来也加了刮号,只是给个参考
D:\VHD目录最后的文件WIN8101.VHD,WIN8102.VHD,WIN8103.VHD,ram8.1.vhd,WIMboot8.1.wim,其他文件都可以删除

ram8.1.vhd里面的文件是WIMboot8.1.wim的指针文件,大约200M左右WIN8101.VHD,WIN8102.VHD,WIN8103.VHD都是ram8.1.vhd的子VHD文件,WIN8101.VHD,WIN8102.VHD,可以启动,不会修改ram8.1.vhd。WIN8103.VHD为备份
WIMboot8.1.wim其实自身也是一个系统备份
RAMDISK WIN8.1是先载入内存在启动,也不会修改ram8.1.vhd
这里没有用任何第三方工具

评分

参与人数 1无忧币 +1 收起 理由
2012masterasia + 1

查看全部评分

 楼主| 发表于 2015-1-12 16:21:11 | 显示全部楼层
上面WIN8101.VHD,WIN8102.VHD,WIN8103.VHD,是子VHD文件,大小受父VHD的限制。
WIMBOOT启动,使用VHDX格式体积非常小,占用空间也很小,所以建议直接创建WIN8101.VHDX,应用WINBOOT 后复制为WIN8102.VHDX,WIN8103.VHDX这样今后使用也非常方便!

点评

楼主,我这都照你说的做了,就是启动不来了,不知该如何解决。 启动时显示正在加载文件,加载完成后就出错。错误提示 文件:\windows\system32\winloader.efi 状态:0xc0000001 信息:无法加载应用程序或操作系  详情 回复 发表于 2015-3-30 21:15
回复

使用道具 举报

发表于 2015-1-12 16:37:38 | 显示全部楼层
目前,我就是这样在用。
顶楼主!
回复

使用道具 举报

发表于 2015-1-12 17:57:11 | 显示全部楼层
支持一下
回复

使用道具 举报

发表于 2015-1-12 21:16:34 | 显示全部楼层
原来是用自带的ramdisk.sys做的呀,有见过
回复

使用道具 举报

发表于 2015-1-13 02:15:57 | 显示全部楼层
做到第15步 开始 提示错误  。。我想你是不是后面的操作 都是为了把复制的 RAMDISK WIN8.1  改为WIM方式加载。因为刚复制完RAMDISK WIN8.1 后我用软件看了了 这个启动项还是VHD启动的。  求楼主 稍微详解下15步后的操作。  我感觉前面一步复制出来的那串数字 是要给加到 启动项里 VHD后面的。 形成这3个GUID都一样 是吧。

点评

(bcdedit /set {RAMDISK WIN8.1} device ramdisk=[D:]\vhd\ram8.1.vhd,{RAMDISK GIUD} ) (bcdedit /set {RAMDISK WIN8.1} osdevice ramdisk=[D:]\vhd\ram8.1.vhd,{RAMDISK GIUD} )  发表于 2015-1-13 02:56
回复

使用道具 举报

 楼主| 发表于 2015-1-13 02:57:46 | 显示全部楼层
(bcdedit /set {RAMDISK WIN8.1} device  ramdisk=[D:]\vhd\ram8.1.vhd,{RAMDISK GIUD} )

(bcdedit /set {RAMDISK WIN8.1}  osdevice  ramdisk=[D:]\vhd\ram8.1.vhd,{RAMDISK GIUD} )

{RAMDISK WIN8.1},{RAMDISK GIUD}这些要根据实际修改呀,说了是代号

点评

我理解你那意思 {RAMDISK GIUD} 括号里面是要替换上 返回给你的那串代码吧 可是我替换上去了 还是提示错误 返回的比如类似{1ce61482-670a-11e1-aa8e-bc26054349e6} bcdedit /set {RAMDISK WIN8.1  详情 回复 发表于 2015-1-13 13:52
回复

使用道具 举报

发表于 2015-1-13 13:52:07 | 显示全部楼层
huaqingyuan 发表于 2015-1-13 02:57
(bcdedit /set {RAMDISK WIN8.1} device  ramdisk=[D:]\vhd\ram8.1.vhd,{RAMDISK GIUD} )

(bcdedit /se ...

我理解你那意思 {RAMDISK GIUD}   括号里面是要替换上 返回给你的那串代码吧  可是我替换上去了  还是提示错误   返回的比如类似{1ce61482-670a-11e1-aa8e-bc26054349e6}              bcdedit /set {RAMDISK WIN8.1} device  ramdisk=[D:]\vhd\ram8.1.vhd,{1ce61482-670a-11e1-aa8e-bc26054349e6}         还是错误

点评

bcdedit /set {RAMDISK WIN8.1} device ramdisk=[D:]\vhd\ram8.1.vhd,{1ce61482-670a-11e1-aa8e-bc26054349e6} 还是错误。。。你这个命令不出错反而就奇怪了  发表于 2015-1-13 17:51
{RAMDISK WIN8.1} 也需要替换  发表于 2015-1-13 17:49
除了“添加ramdiskimageoffset,值为65536”之外,还要删除ramdisk选项中的:sdidevice和sdipath这两项。  详情 回复 发表于 2015-1-13 14:58
回复

使用道具 举报

发表于 2015-1-13 14:58:12 | 显示全部楼层
2013xufeng 发表于 2015-1-13 13:52
我理解你那意思 {RAMDISK GIUD}   括号里面是要替换上 返回给你的那串代码吧  可是我替换上去了  还是提 ...

除了“添加ramdiskimageoffset,值为65536”之外,还要删除ramdisk选项中的:sdidevice和sdipath这两项。

点评

好的 谢谢了 正常总算 弄懂了  详情 回复 发表于 2015-1-13 20:07
回复

使用道具 举报

发表于 2015-1-13 20:07:02 | 显示全部楼层
2011happysong 发表于 2015-1-13 14:58
除了“添加ramdiskimageoffset,值为65536”之外,还要删除ramdisk选项中的:sdidevice和sdipath这两项。 ...

好的 谢谢了  正常总算 弄懂了
回复

使用道具 举报

发表于 2015-3-23 21:27:35 | 显示全部楼层
本帖最后由 luckydog 于 2015-3-23 21:31 编辑

楼主,我这都照你说的做了,就是启动不来了,不知该如何解决。
启动时显示正在加载文件,加载完成后就出错。错误提示
文件:\windows\system32\winloader.efi
状态:0xc0000001
信息:无法加载应用程序或操作系统,原因是所需文件丢失或包含错误。

点评

你是精简的系统吧,理论上这种模式支持UEFI的。  详情 回复 发表于 2017-7-29 23:22
回复

使用道具 举报

发表于 2015-3-24 15:13:54 | 显示全部楼层
先备份一下,以后试试

点评

最后的RAM win8.1的2G大小的固定大小VHD和ramdiskoptions 中的ramdiskimageoffset 参数值65536是怎么得出的,还需要根据机子实际内存调整吗?我笔记本是8G内存的  详情 回复 发表于 2015-3-24 20:55
回复

使用道具 举报

发表于 2015-3-24 20:55:49 | 显示全部楼层
zhangmi 发表于 2015-3-24 15:13
先备份一下,以后试试

最后的RAM win8.1的2G大小的固定大小VHD和ramdiskoptions 中的ramdiskimageoffset 参数值65536是怎么得出的,还需要根据机子实际内存调整吗?我笔记本是8G内存的

点评

这个你还是@楼主吧,我是拿来主义者  详情 回复 发表于 2015-3-25 12:13
回复

使用道具 举报

发表于 2015-3-25 12:13:04 | 显示全部楼层
luckydog 发表于 2015-3-24 20:55
最后的RAM win8.1的2G大小的固定大小VHD和ramdiskoptions 中的ramdiskimageoffset 参数值65536是怎么得出 ...

这个你还是@楼主吧,我是拿来主义者
回复

使用道具 举报

发表于 2015-3-30 21:15:45 | 显示全部楼层
huaqingyuan 发表于 2015-1-12 16:21
上面WIN8101.VHD,WIN8102.VHD,WIN8103.VHD,是子VHD文件,大小受父VHD的限制。
WIMBOOT启动,使用VHDX格 ...

楼主,我这都照你说的做了,就是启动不来了,不知该如何解决。
启动时显示正在加载文件,加载完成后就出错。错误提示
文件:\windows\system32\winloader.efi
状态:0xc0000001
信息:无法加载应用程序或操作系统,原因是所需文件丢失或包含错误。

再就是最后的RAM win8.1的2G大小的固定大小VHD和ramdiskoptions 中的ramdiskimageoffset 参数值65536是怎么得出的,还需要根据机子实际内存调整吗?我笔记本是8G内存的,UEFI启动

点评

把efi改成exe试一试;要不把winloader改成winload;不行勿喷  详情 回复 发表于 2015-4-1 22:14
回复

使用道具 举报

发表于 2015-4-1 22:14:24 | 显示全部楼层
luckydog 发表于 2015-3-30 21:15
楼主,我这都照你说的做了,就是启动不来了,不知该如何解决。
启动时显示正在加载文件,加载完成后就出 ...

把efi改成exe试一试;要不把winloader改成winload;不行勿喷
回复

使用道具 举报

发表于 2015-4-6 18:06:01 | 显示全部楼层
好的 谢谢了
回复

使用道具 举报

发表于 2015-4-13 12:42:20 来自手机 | 显示全部楼层
多谢分享
回复

使用道具 举报

发表于 2015-4-14 11:25:00 来自手机 | 显示全部楼层
好的,谢谢了
回复

使用道具 举报

 楼主| 发表于 2017-7-29 23:22:57 | 显示全部楼层
luckydog 发表于 2015-3-23 21:27
楼主,我这都照你说的做了,就是启动不来了,不知该如何解决。
启动时显示正在加载文件,加载完成后就出错 ...

你是精简的系统吧,理论上这种模式支持UEFI的。
回复

使用道具 举报

 楼主| 发表于 2017-7-29 23:25:27 | 显示全部楼层
先从2G的VHD启动一下,能启动内存版也没问题了,它们启动的都是同一个VHD。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-4-18 17:43

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表