无忧启动论坛

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

[求助] (完结)P驱WIMBOOT半RAMOS,指针放物理分区,启动失败

    [复制链接]
发表于 2019-11-24 18:32:27 | 显示全部楼层 |阅读模式
本帖最后由 上帝是笨蛋 于 2020-1-27 22:10 编辑

本人用P驱制作WIMBOOT半RAMOS,VDF放WIMBOOT文件,VHD放指针文件,做了好几个WIN8系统都成功,如果指针文件放物理分区就失败,请教各位BOSS,指针文件放物理分区的话,除了调整fancyrd.sys的Group、Start值,还需要调整什么?

改了好几次注册表,终于还是成功了!Primo Ramdisk用的是6.3.1版本,系统是雨晨Win8.1x64企业畅飞版update3+精简版。
本人成功的注册表如下:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\sys\ControlSet001\Services\disk]
"Group"="SCSI Class"
[HKEY_LOCAL_MACHINE\sys\ControlSet001\Services\volsnap]
"Group"="SCSI Class"
[HKEY_LOCAL_MACHINE\sys\ControlSet001\Services\fvevol]
"Group"="SCSI Class"
[HKEY_LOCAL_MACHINE\sys\ControlSet001\Services\rdyboost]
"Group"="SCSI Class"
[HKEY_LOCAL_MACHINE\sys\ControlSet001\Services\volume]
"Group"="File System"
[HKEY_LOCAL_MACHINE\sys\ControlSet001\Services\iorate]
"Group"="File System"
[HKEY_LOCAL_MACHINE\sys\ControlSet001\Control\PnP]
"PollBootPartitionTimeout"=dword:0000ea60
[HKEY_LOCAL_MACHINE\SYS\ControlSet001\Services\FancyRd]
"Type"=dword:00000001
"Start"=dword:00000000
"Group"="Boot Bus Extender"

 楼主| 发表于 2019-11-24 18:45:16 | 显示全部楼层
在用VHD放指针文件的时候,我都只要更改FancyRd的Group值为Boot Bus Extende,基本都能正常加载运行,但一旦指针放物理分区,在系统加载时转个20圈左右就显示驱动初始化失败,改了Group值好多个:SCSI Class、SCSI Miniport、Boot Bus Extender、System Bus Extender,结果都一样
回复

使用道具 举报

 楼主| 发表于 2019-11-24 18:47:20 | 显示全部楼层
系统出问题,多点了几下
回复

使用道具 举报

 楼主| 发表于 2019-11-24 21:28:21 | 显示全部楼层
求助!求助!
回复

使用道具 举报

 楼主| 发表于 2019-11-24 22:00:15 | 显示全部楼层
各位,帮帮忙呀!!
回复

使用道具 举报

 楼主| 发表于 2019-11-26 16:05:12 | 显示全部楼层
各位老大
回复

使用道具 举报

发表于 2019-11-26 20:30:02 | 显示全部楼层
放物理分区,意义不大吧?抄了个win10 vdf的你看看有没用参考价值

set srv=HKLM\sys\ControlSet001\Services\
set s=HKLM\system\MountedDevices
set d=HKLM\sys\MountedDevices

reg add "%srv%disk" /f /v "Group" /t REG_SZ /d "SCSI Class"
reg add "%srv%volsnap" /f /v "Group" /t REG_SZ /d "SCSI Class"
reg add "%srv%FancyRd" /f /v "Group" /t REG_SZ /d "Event Log"
reg add "%srv%fvevol" /f /v "Group" /t REG_SZ /d "SCSI Class"
reg add "%srv%rdyboost" /f /v "Group" /t REG_SZ /d "SCSI Class"
reg query "%srv%volume">nul 2>nul&&reg add "%srv%volume" /f /v "Group" /t REG_SZ /d "File System"
reg query "%srv%iorate">nul 2>nul&&reg add "%srv%iorate" /f /v "Group" /t REG_SZ /d "File System"
reg query "%srv%uwfvol">nul 2>nul&&reg add "%srv%uwfvol" /f /v "Group" /t REG_SZ /d "SCSI Class"
reg add "HKLM\sys\ControlSet001\Control\PnP" /f /v "PollBootPartitionTimeout" /t REG_DWORD /d 60000
for /f "tokens=3* delims= " %%a in ('reg query %s% /v \Dosdevices\%sdisk%') do (
reg add %d% /v \Dosdevices\%ddisk% /t REG_BINARY /d %%a /f)
for /f "tokens=3* delims= " %%a in ('reg query %s% /v \Dosdevices\%ddisk%') do (
reg add %d% /v \Dosdevices\%sdisk% /t REG_BINARY /d %%a /f)
回复

使用道具 举报

 楼主| 发表于 2019-11-29 08:09:07 | 显示全部楼层
kkkssc 发表于 2019-11-26 20:30
放物理分区,意义不大吧?抄了个win10 vdf的你看看有没用参考价值

set srv=HKLM\sys\ControlSet001\Serv ...

谢谢,这个注册表我用过,还是起不来!!
回复

使用道具 举报

发表于 2019-11-29 10:07:39 | 显示全部楼层
本帖最后由 kkkssc 于 2019-11-29 10:25 编辑
上帝是笨蛋 发表于 2019-11-29 08:09
谢谢,这个注册表我用过,还是起不来!!

想起来了  放物理分区根本不需要你改什么注册表啊,直接用dism工具就搞定了,本来这个wimboot的设计就是为了减小系统体积用在平板上的。。。。。还有就是注意下wimbootpress这个文件,要对应上


直接把系统打成一个包,然后用winsetup安装选wimboot就可以了,如果是已经装好的系统,就是先打包然后再应用一次,这个是win8.1之后的功能不用什么驱动,win7才安装驱动,不需要ramdisk

回复

使用道具 举报

发表于 2019-11-29 15:02:56 | 显示全部楼层
9ivu
回复

使用道具 举报

 楼主| 发表于 2019-11-29 18:21:23 | 显示全部楼层
kkkssc 发表于 2019-11-29 10:07
想起来了  放物理分区根本不需要你改什么注册表啊,直接用dism工具就搞定了,本来这个wimboot的设计就是 ...

我指的是WIMBOOT文件放VDF,指针文件才放物理磁盘,需要系统在完成硬件初始化后加载VDF文件进入内存。
回复

使用道具 举报

 楼主| 发表于 2019-11-30 20:22:26 | 显示全部楼层
怎么,从没人这么做么,我自己顶一下,走过路过的各位大侠,请赐教!!!
回复

使用道具 举报

发表于 2019-11-30 20:27:25 | 显示全部楼层
帮顶~ 我也想知道~
回复

使用道具 举报

 楼主| 发表于 2019-12-1 17:51:45 | 显示全部楼层
再顶,顶,顶,顶!!!!!!!!
这个方法应该有大侠知道?是来不及告诉我,还是没有路过???
回复

使用道具 举报

 楼主| 发表于 2019-12-2 08:02:30 | 显示全部楼层
再顶最后一次!顶!顶!!顶!!!顶!!!!!顶!!!!!
回复

使用道具 举报

 楼主| 发表于 2019-12-2 08:04:03 | 显示全部楼层
用WIN7按该方法制作,到是容易成功,WIN8我怎么弄都不行!!!
回复

使用道具 举报

发表于 2019-12-3 11:26:46 | 显示全部楼层
以下内容是huaqingyuan大佬的教程:

1,安装系统到VHD,我选择的是幽远的WIN8.1
2,安装Primo Ramdisk Server Edition软件,设置内存盘,我选择的是SCSI模式,延时加载!R盘
3,启动到PE,打包为WIM.我选的是快速压缩,WIN81.WIM
4,启动到系统,新建立一个VHD文件,1.8G,并挂载盘符E(实际可能不同)
使用我的DWIM工具,应用WIN81.WIM到E盘选择WIMBOOT选项,WIMLIB方式.(我应用后只占用92M)
同样,使用我的DWIM工具,应用WIN81.WIM到R盘选择WIMBOOT选项,WIMLIB方式.

5.加载E盘的SYSTEM注册表到1111,删除MountedDevices下面的C盘(\DosDevices\C:),并修改\DosDevices\R:为\DosDevices\C:
导入一下注册表(在PE下得到的注册表)
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\1111\ControlSet001\Services\Ramdisk]
"DisplayName"="Windows RAM Disk Driver"
"ErrorControl"=dword:00000001
"ImagePath"=hex(2):73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,44,00,\
  52,00,49,00,56,00,45,00,52,00,53,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

[HKEY_LOCAL_MACHINE\1111\ControlSet001\Services\Ramdisk\Debug]
"DebugLevel"=dword:00000005
"DebugComponents"=dword:7fffffff

然后导入下面的注册表
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\1111\ControlSet001\Services\Ramdisk]
"Group"="Event Log"
"Start"=dword:00000000

[HKEY_LOCAL_MACHINE\1111\ControlSet001\Services\FancyRd]
"Start"=dword:00000000
"Group"="File System"
这里主要是修改了组,start
卸载1111注册表,并复制修改后的注册表在R盘对应位置!
查找E盘RAMDISK.SYS,并复制到E盘,R盘对应目录
手动保存一次R盘.(和传统方法相比省了一步不用文件连续,实际保存文件大小也很小!,我的是118M.

6,配置内存启动.偏移为65536(可以参考其他帖子)
7,启动内存系统,居然一次成功!但是会提示新驱动重启,不要重启.再次激活系统.然后导出SYSTEM文件.
这里有个坑,我第一次就是直接去VHD替换了,蓝屏.可以先修改Ramdisk的Group,为Event Log,Start为0,也可以在加载导出的文件到1111,导入上面的注册表.(系统发现了Ramdisk所以自动安装了驱动,设置已经被修改!)顺便我还修改Ramdisk的盘符为R
改好后替换到内存VHD

8再次启动,已经没有新驱动重启提示了..然后为了节省空间,也能加快载入速度,先修改内存VHD文件为IMG文件,运行Virtual Drive Manager,对其压缩,实际占152M.压好改回原来文件名.

9.完毕!
回复

使用道具 举报

发表于 2019-12-3 11:28:48 | 显示全部楼层
以下是我整理的步骤:

支持uefi启动的P-wimboot半内存系统手动制作教程
内存:16G  SSD:傲腾可用13G(4K读200+)  HDD:1T   系统:Windows10 x64 LTSB201

需求:P驱动+WIMBOOT使用的文件进内存,僵尸文件在HDD。指针释放于傲腾盘13G内。
支持UEFI,开机正常,系统有RAMOS的速度也有正常系统的稳定性。


第1步:
用winntsetup安装一个win10系统到C盘,安装时在winntsetup的优化调整中直接关闭页面文件和休眠等不利于Ramos的设置。

第2步:
安装promidisk,创建SCSI内存盘默认的Z盘。设置内存盘大小视内存条容量而定(16G内存条可以设置12000mb)。注意过程中要勾选动态内存管理(即DMM)和紧凑模式。另外还可以勾选禁用NTFS索引服务,上面的卷标可以自己命名。

最后设置关联镜像,硬盘上没有关联镜像没关系,可以先命名,等后面第四步制作好的wim后移入后再手动保存,加载保存中选择“仅加载”。后面点确定。(需要说明的是,如果该处选择延时加载模式,则制作的ramos与wim较类似,启动快,启动后仍需读取硬盘。)

完成这一步后,硬盘上是没有vdf实体文件的,只有虚拟的内存Z盘。


第3步:
重启后进入PE,替换掉win10系统里\Windows\System32\WimBootCompress.ini文件。 随后用附件里的dabaoWIM.CMD打包出一个10.wim。

第4步:
重启进入win10原系统,把上一步产生的10.wim拷贝到Z盘。用shifangWIMzhizhen.CMD把Z盘的10.Wim的指针文件释放到傲腾SSD盘里。

运行regedit加载配置单元,把傲腾SSD盘\Windows\System32\config中的SYSTEM挂载为sys,导入p驱的驱动调整注册表文件Win10.reg。再修改调换调整MountedDevices下面的C盘盘符为其它盘符(或者直接删掉C盘盘符这条),删掉C盘这一条。最后卸载载注册表配置!

最后保存P驱Z盘为关联的vdf,这个时候硬盘上才会产生真实的vdf文件。由于uefi启动的ramos是由那个fat32小分区微软官方bcd直接引导的,而不是grub4dos加载(要求要连续存放),所以不需要复制粘贴vdf删除原件再把附件改回原件名字这种操作。

第5步:
用bootice修改BCD启动盘为傲腾SSD盘。

sairen139坛友补充了以下内容:
我知道原因了,是我的那个windows10的reg的驱动调整文件不完整,完整的如下(你可以对照以前的看看):

Win10.reg
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\system\ControlSet001\Services\disk]
"Group"="SCSI Class"
[HKEY_LOCAL_MACHINE\system\ControlSet001\Services\volsnap]
"Group"="SCSI Class"
[HKEY_LOCAL_MACHINE\system\ControlSet001\Services\FancyRd]
"Group"="Event Log"
[HKEY_LOCAL_MACHINE\system\ControlSet001\Services\fvevol]
"Group"="SCSI Class"
[HKEY_LOCAL_MACHINE\system\ControlSet001\Services\rdyboost]
"Group"="SCSI Class"
[HKEY_LOCAL_MACHINE\system\ControlSet001\Services\volume]
"Group"="File System"
[HKEY_LOCAL_MACHINE\system\ControlSet001\Services\iorate]
"Group"="File System"
[HKEY_LOCAL_MACHINE\system\ControlSet001\Services\uwfvol]
"Group"="SCSI Class"
[HKEY_LOCAL_MACHINE\system\ControlSet001\Control\PnP]
"PollBootPartitionTimeout"=dword:0000ea60

你如果是离线挂载的话要把路径里的就依样画葫芦改system改\system\为\sys\即可。如果你做成功了,请回复一下。
回复

使用道具 举报

发表于 2019-12-3 12:17:39 来自手机 | 显示全部楼层
不是有一键制作吗?为什么要手动做?      
回复

使用道具 举报

发表于 2019-12-4 11:05:59 | 显示全部楼层
看看想想,学习学习
回复

使用道具 举报

 楼主| 发表于 2019-12-5 08:13:58 | 显示全部楼层
liuzhaoyzz 发表于 2019-12-3 12:17
不是有一键制作吗?为什么要手动做?

一键制作的好像是全RAMOS或基于VHD启动的!!
回复

使用道具 举报

 楼主| 发表于 2019-12-9 19:42:22 | 显示全部楼层
VHD放指针方式制作P驱半内存系统,从WIN7到WIN10都能成功,但指针放物理分区,就WIN7能成功。
回复

使用道具 举报

发表于 2019-12-9 20:26:12 | 显示全部楼层
请问。。。你做半内存系统的母系统是否为 VHD系统??
如果是的话  我可能知道这是为什么了。。嘿嘿_(:D)∠)_

点评

母系统是直接在物理分区中安装的  详情 回复 发表于 2019-12-9 20:39
回复

使用道具 举报

 楼主| 发表于 2019-12-9 20:39:09 | 显示全部楼层
mysxbg2000 发表于 2019-12-9 20:26
请问。。。你做半内存系统的母系统是否为 VHD系统??
如果是的话  我可能知道这是为什么了。。嘿嘿_(:D) ...

母系统是直接在物理分区中安装的
回复

使用道具 举报

 楼主| 发表于 2019-12-9 20:47:04 | 显示全部楼层
我的步聚是,先在物理分区安装好系统及P驱,并设置好注册表→在PE中打包该分区系统成WimBoot文件→复制WimBoot文件到新建VHD中,并将指针文件原地释放到该VHD中→从VHD中加载系统→将WimBoot文件复制P驱内存盘,并保存该内存盘为VDF文件→释放内存盘中的WimBoot文件指针到物理分区。
这样操作WIN7是成功的,但Win8不成功!!Win10没有测试。
回复

使用道具 举报

发表于 2019-12-9 20:51:51 | 显示全部楼层
那应该是制作方法不对
VHD的方法跟磁盘方法还是有区别的
详细说下吧或者大致上说下

点评

由于没有太多的参考,自己动手能力又较差,没有太多的方法进行调整。从WIN7到WIN10我都只是调整FancyRd的Group的值为“Boot Bus Extender”或“System Bus Extender”,及Tag的值为1(WIN7还要调整PNP的PollBootPart  详情 回复 发表于 2019-12-9 21:01
回复

使用道具 举报

 楼主| 发表于 2019-12-9 21:01:16 | 显示全部楼层
本帖最后由 上帝是笨蛋 于 2019-12-9 21:23 编辑
mysxbg2000 发表于 2019-12-9 20:51
那应该是制作方法不对
VHD的方法跟磁盘方法还是有区别的
详细说下吧或者大致上说下

由于没有太多的参考,自己动手能力又较差,没有太多的方法进行调整。从WIN7到WIN10我都只是调整FancyRd的Group的值为“Boot Bus Extender”或“System Bus Extender”,及Tag的值为1,Start值为0(WIN7还要调整PNP的PollBootPartitionTimeout值 为30000),从VHD中启动都没有问题,但从物理分区在启动就只有WIN7成功。也参考过全RAMOS方式修改注册表,但都不能成功!!!
回复

使用道具 举报

发表于 2019-12-9 21:12:29 | 显示全部楼层
最后一步  指针释放到其他物理分区还是其他硬盘的分区上?

点评

就是安装系统的分区  详情 回复 发表于 2019-12-9 21:14
回复

使用道具 举报

 楼主| 发表于 2019-12-9 21:14:14 | 显示全部楼层
mysxbg2000 发表于 2019-12-9 21:12
最后一步  指针释放到其他物理分区还是其他硬盘的分区上?

就是安装系统的分区
回复

使用道具 举报

 楼主| 发表于 2019-12-9 21:15:33 | 显示全部楼层
上帝是笨蛋 发表于 2019-12-9 21:14
就是安装系统的分区

就是在VHD中启动系统后,格式化原安装系统的物理分区,然后在内存盘中释放指针文件到物理分区。
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-4-19 06:20

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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