sairen139 发表于 2022-3-27 22:05:40

单一P驱双镜像uefi启动的ramos内存系统直接在当前系统下手动制作的方法详细步骤分享

本帖最后由 sairen139 于 2023-6-28 17:34 编辑

单一P驱双镜像uefi启动的ramos内存系统直接在当前系统下手动制作的方法详细步骤分享

该uefi启动单一p驱双镜像ramos的原理和制作方法如下:
本论坛dido的imgboot来引导一个30mb的小引导vdf,该30mb的小引导vdf启动后对接上一个完全无压缩的系统大VDF镜像格式为【完全镜像】,该系统大vdf里是一个安装了p驱并设置了一个p驱scsi内存盘windows10系统!

详细步骤1如下:
安装一个系统到vhd里,然后安装P驱。创建一个P驱的SCSI内存盘为Z盘,然后把这个创建的内存盘保存一下保存为镜像格式为【完全镜像】的VDF格式文件。(把这个系统大VDF保存到非系统盘里即可,我个人偏好喜欢把这个系统大VDF保存在非系统盘的System Volume Information系统级文件夹里防止熊孩子删除破坏!)

详细步骤2如下:
下载附件tools.zip并解压后运行解压出来的!当前系统中抓取出一个引导用最少目录最小启动镜像(适用于uefi启动的64位Windows系统).bat,取到了引导小镜像vdf里的内容文件。注册表挂载d:\aaaaaaaaaayindaoWindows10VDF这个文件夹里的\Windows\system32\config\SYSTEM文件为sys。接着把挂载出来的sys里的注册表项目【MountedDevices】下系统盘盘符C这一条删除,然后把注册表里的Z盘右键菜单里选重命名为\DosDevices\C:然后按照系统不同导入下面不同系统的注册表文件reg:

调整P驱动和系统相关驱动顺序Win8 win8.1 win2012不带uwf.reg
Windows Registry Editor Version 5.00

"Group"="SCSI Class"

"Group"="SCSI Class"

"Group"="Event Log"

"Group"="SCSI Class"

"Group"="SCSI Class"


Win8 win8.1 win2012带UWF(工业版).reg
Windows Registry Editor Version 5.00

"Group"="SCSI Class"

"Group"="SCSI Class"

"Group"="Event Log"

"Group"="SCSI Class"

"Group"="SCSI Class"

"Group"="SCSI Class"



Win10.reg
Windows Registry Editor Version 5.00

"Group"="SCSI Class"

"Group"="SCSI Class"

"Group"="Event Log"

"Group"="SCSI Class"

"Group"="SCSI Class"

"Group"="File System"

"Group"="File System"

"Group"="SCSI Class"

"PollBootPartitionTimeout"=dword:0000ea60


详细步骤3如下:
DiskGenius菜单项【硬盘】选择【打开虚拟硬盘文件】打开步骤一生成的VDF文件盘,之后DiskGenius选中C盘使用的盘符右键的【克隆分区】然后【按文件复制(可消除碎片的方法)】将vhd里的系统直接灌注入详细步骤一生成的VDF文件盘里,用dg把这个系统大VDF的磁盘签名改为80即为活动分区后保存即可(如果diskgenius是未付费的未注册版本就加载VDF文件后右键菜单里按【激活当前分区(F7)】然后保存一下变更效果也是一样的,没有diskgenius的话直接cmd窗口里输入diskpart命令激活分区也行,以上三种方法都不会的话可以用扇区工具命令%~dp0Bootice /device=Z /partitions /activate /quiet也能把Z盘变成激活分区)。


详细步骤4如下:
用下载tools.zip附件解压后的1备份系统大VDF(P驱内存盘Z盘)的前3个扇区MBR.cmd将P驱内存盘Z盘的前3个扇区备份一下生成一个3.bin文件,然后新建立一个120mb左右小vdf(格式化时候分配单元大小为4096字节和大VDF一致方便Imdisk后续挂载小引导vdf更新system注册表使用!)随后把d:\aaaaaaaaaayindaoWindows10VDF这个文件夹里的东西拷贝复制过来放进去即可,然后把选中保存在任意一个非ESP分区的引导小V.vdf复制到ESP分区根目录下,将3.bin文件和tools.zip解压后的2用dd工具把系统大VDF覆盖掉启动小vdf的前3扇区MBR.bat以及dd.exe也复制到ESP分区根目录下,单击2用dd工具把系统大VDF覆盖掉启动小vdf的前3扇区MBR.bat覆盖掉ESP分区根目录下V.vdf的前3扇区即可!



详细步骤5如下:用下载tools.zip附件解压后的EFI文件夹覆盖到ESP分区根目录下,效果等同于67kb的bootx64.efi覆盖了同名文件,ESP分区的子文件夹EFI\BOOT里增加了imgboot.cfg和ntfs.efi两个文件。重启即可进入uefi启动的双镜像RamOS内存系统里!


sairen139 发表于 2022-3-27 22:08:25

本帖最后由 sairen139 于 2023-6-7 15:00 编辑

本教程没有对引导小镜像V.vdf里的\Windows\System32\drivers里的驱动做最少化处理,需要减小V.vdf到30mb左右的朋友请查看我的另外一个帖子http://bbs.wuyou.net/forum.php?mod=viewthread&tid=416048&extra
另外如果很久前制作的双镜像vdf里的小引导vdf和原始vhd系统文件都丢失了,只要ramos系统大VDF在,就能备份系统VDF的mbr的前3扇区出来,方法如下图所示dd命令行语句,当然没有dd.exe直接用DG复制粘贴前3扇区也可以!:

taskkill /im "FancyRd.exe" /f 1>nul 2>nul
"C:\Program Files\Primo Ramdisk\rxprd.exe" add -n 120 -im -t SCSI -c 4KB -d V: -dmm -f NTFS -Q F -I "D:\V.vdf" -l BOOT -D -nosave -s 1>nul 2>nul
pause


sairen139 发表于 2022-3-27 22:09:39

本帖最后由 sairen139 于 2022-3-27 22:46 编辑

如果想要缩减非系统盘的System Volume Information系统级文件夹里的【完全镜像】格式的系统大VDF可以使用Virtual Drive Manager压缩到实际占用大小如下图所示:

mrzhonghb 发表于 2022-3-27 22:23:39

沙发支持

sairen139 发表于 2022-3-27 22:28:30

利用主楼教程帖里的所说的DiskGenius的【分区克隆】方法可以直接在ramos内存系统是当前运行的系统的情况下,直接在线克隆ramos内存系统的C盘到VDF文件的盘里,这样也是实时热备份了ramos内存系统的一种方法!

481416322 发表于 2022-3-28 06:14:59

谢谢楼主分享,我用win2022的内存系统,制作办法就是克隆当前VHD到一个VDF,也没激活VDF分区,仅这一个VDF就能启动,运行流畅。

sairen139 发表于 2022-3-28 06:43:45

481416322 发表于 2022-3-28 06:14
谢谢楼主分享,我用win2022的内存系统,制作办法就是克隆当前VHD到一个VDF,也没激活VDF分区,仅这一个VDF ...

请问你用的是哪个引导的单VDF?g4e还是别的?

ynkm169 发表于 2022-3-28 07:59:45

谢谢分享,先收藏。有时间试试

sevenyu 发表于 2022-3-28 08:02:46

请教楼主,按DiskGenius的【分区克隆】方法克隆ramos系统盘和直接克隆原能启动成功的镜像始终不能启动成功(有windows启动画面出现),可能是什么情况?

481416322 发表于 2022-3-28 08:17:56

本帖最后由 481416322 于 2022-3-28 08:21 编辑

sairen139 发表于 2022-3-28 06:43
请问你用的是哪个引导的单VDF?g4e还是别的?
我有两种方式引导VDF,即g4e和grub2。和BIOS不同的是,在UEFI下引导需要先加载ntfs_x64.efi。

sairen139 发表于 2022-3-28 08:50:07

本帖最后由 sairen139 于 2022-3-28 09:17 编辑

sevenyu 发表于 2022-3-28 08:02
请教楼主,按DiskGenius的【分区克隆】方法克隆ramos系统盘和直接克隆原能启动成功的镜像始终不能启动成功 ...
是按照我这个方法搞的吗?一般出现启动画面一直转圈却迟迟进不去系统桌面是引导小镜像V.vdf里的system里的注册表项目【MountedDevices】下盘符没有把P驱动内存盘\DosDevices\Z:改为C盘即\DosDevices\C:

sairen139 发表于 2022-3-28 09:00:52

sairen139 发表于 2022-3-28 08:50
是按照我这个方法搞的吗?一般出现启动画面一直转圈却迟迟进不去系统桌面是system里的盘符没有把P驱动内 ...

可以查看:详细步骤2如下:
下载附件tools.zip并解压后运行解压出来的!当前系统中抓取出一个引导用最少目录最小启动镜像(适用于uefi启动的64位Windows系统).bat,取到了引导小镜像vdf里的内容文件。注册表挂载d:\aaaaaaaaaayindaoWindows10VDF这个文件夹里的\Windows\system32\config\SYSTEM文件为sys。接着把挂载出来的sys里的注册表项目【MountedDevices】下系统盘盘符C这一条删除,然后把注册表里的Z盘右键菜单里选重命名为\DosDevices\C:

旁观者清 发表于 2022-3-28 09:45:24

谢谢分享。

sevenyu 发表于 2022-3-28 14:00:27

sairen139 发表于 2022-3-28 09:00
可以查看:详细步骤2如下:
下载附件tools.zip并解压后运行解压出来的!当前系统中抓取出一个引导用最少 ...

谢谢指导,不会搞,慢慢研究下

sairen139 发表于 2022-3-29 01:12:14

本帖最后由 sairen139 于 2022-3-29 01:27 编辑

sairen139 发表于 2022-3-27 22:08
本教程没有对引导小镜像V.vdf里的\Windows\System32\drivers里的驱动做最少化处理,需要减小V.vdf到30mb左 ...
经测试步骤1不用微软自带格式化一下内存盘Z也能制作成功双镜像ramos,只是第四步的120mb的引导小vdf也不格式化虽能成功但imdisk默认打不开小引导vdf。所以最好格式化引导小vdf(用微软右键自带或者dg都行)把配置单元大小设为4096字节,这样imdisk就能直接打开了。否则imdisk挂载后盘符不可用打不开!

sairen139 发表于 2022-3-29 08:44:41

sairen139 发表于 2022-3-29 01:12
经测试步骤1不用微软自带格式化一下内存盘Z也能制作成功双镜像ramos,只是第四步的120mb的引导小vdf也不 ...

经测试这种P驱内存盘Z不格式化的双镜像ramos可以直接使用P驱关机自动保存和手动保存按钮来热备份ramos,下次启动ramos所做变化就全部保持住了!

sairen139 发表于 2022-3-29 15:03:20

本帖最后由 sairen139 于 2022-3-29 15:16 编辑

sairen139 发表于 2022-3-29 01:12
经测试步骤1不用微软自带格式化一下内存盘Z也能制作成功双镜像ramos,只是第四步的120mb的引导小vdf也不 ...
另外一种稍作变更的流程也行:
详细步骤1如下:安装一个系统到vhd里,然后安装P驱。创建一个P驱的SCSI内存盘为Z盘,此时硬盘上并无真实生成的完整镜像VDF文件存在!
详细步骤2如下:下载附件tools.zip并解压后运行解压出来的!当前系统中抓取出一个引导用最少目录最小启动镜像(适用于uefi启动的64位Windows系统).bat,取到了引导小镜像vdf里的内容文件。注册表挂载d:\aaaaaaaaaayindaoWindows10VDF这个文件夹里的\Windows\system32\config\SYSTEM文件为sys。接着把挂载出来的sys里的注册表项目【MountedDevices】下系统盘盘符C这一条删除,然后把注册表里的Z盘右键菜单里选重命名为\DosDevices\C:然后按照系统不同导入下面不同系统的注册表文件reg:
调整P驱动和系统相关驱动顺序Win8 win8.1 win2012不带uwf.regWindows Registry Editor Version 5.00"Group"="SCSI Class""Group"="SCSI Class""Group"="Event Log""Group"="SCSI Class""Group"="SCSI Class"

Win8 win8.1 win2012带UWF(工业版).regWindows Registry Editor Version 5.00"Group"="SCSI Class""Group"="SCSI Class""Group"="Event Log""Group"="SCSI Class""Group"="SCSI Class""Group"="SCSI Class"


Win10.regWindows Registry Editor Version 5.00"Group"="SCSI Class""Group"="SCSI Class""Group"="Event Log""Group"="SCSI Class""Group"="SCSI Class""Group"="File System""Group"="File System""Group"="SCSI Class""PollBootPartitionTimeout"=dword:0000ea60

详细步骤3如下:DiskGenius选中C盘使用的盘符右键的【克隆分区】然后【按文件复制(可消除碎片的方法)】将vhd里的系统直接克隆到P驱动内存盘Z盘里,diskgenius是未付费的未注册版本就选中Z盘出现右键菜单点击【激活当前分区(F7)】然后保存一下变更效果,最后P驱点击保存按钮将内容保存到硬盘上生成一个真实存在的VDF文件。
详细步骤4如下:用下载tools.zip附件解压后的1备份系统大VDF(P驱内存盘Z盘)的前3个扇区MBR.cmd将P驱内存盘Z盘的前3个扇区备份一下生成一个3.bin文件,然后新建立一个120mb左右小vdf(格式化时候分配单元大小为4096字节和大VDF一致方便Imdisk后续挂载小引导vdf更新system注册表使用!)随后把d:\aaaaaaaaaayindaoWindows10VDF这个文件夹里的东西拷贝复制过来放进去即可,然后把选中保存在任意一个非ESP分区的引导小V.vdf复制到ESP分区根目录下,将3.bin文件和tools.zip解压后的2用dd工具把系统大VDF覆盖掉启动小vdf的前3扇区MBR.bat以及dd.exe也复制到ESP分区根目录下,单击2用dd工具把系统大VDF覆盖掉启动小vdf的前3扇区MBR.bat覆盖掉ESP分区根目录下V.vdf的前3扇区即可!


详细步骤5如下:用下载tools.zip附件解压后的EFI文件夹覆盖到ESP分区根目录下,效果等同于67kb的bootx64.efi覆盖了同名文件,ESP分区的子文件夹EFI\BOOT里增加了imgboot.cfg和ntfs.efi两个文件。重启即可进入uefi启动的双镜像RamOS内存系统里

sairen139 发表于 2022-3-29 15:10:17

sairen139 发表于 2022-3-29 15:03
另外一种稍作变更的流程也行:

经过比较第1步如果不直接生成真实存在的完整镜像VDF文件,那么第3步用P驱来保存内存盘Z盘为完整镜像VDF时费时稍长,个人觉得还是教程的直接打开步骤一生成的VDF文件挂载为盘直接diskgenius克隆好,不需要P驱速度较慢的保存VDF完整镜像这一步了!

ma__jjuunn 发表于 2022-3-30 18:33:02

本帖最后由 ma__jjuunn 于 2022-4-4 22:12 编辑

感谢楼主辛苦做教程,有空学习制作!
试了一下win8.1系统,失败了,步骤应该是对的,成功率好像不高。

sairen139 发表于 2022-3-31 02:01:04

本帖最后由 sairen139 于 2022-3-31 13:48 编辑

回收内存的批处理,也可以用bat2exe转成exe再在组策略里加上开机启动脚本自动运行,我就是转成cc.exe来开机腾出空闲内存!组策略配置了启动和关机脚本保存在Windows\System32\GroupPolicy\Machine\Scripts文件夹里

sairen139 发表于 2022-3-31 10:23:51

本帖最后由 sairen139 于 2022-3-31 10:34 编辑

sairen139 发表于 2022-3-31 02:01
回收内存的批处理,也可以用bat2exe转成exe再在组策略里加上开机启动脚本自动运行,我就是转成cc.exe来开机 ...
由本论坛坛友yiyu2012改进的不弹出黑框的更完美的批处理如下
@echo off
setlocal EnableDelayedExpansion
:: 获取管理员权限
set _Args=%*
if "%~1" NEQ "" (
set _Args=%_Args:"=%
)
fltmc 1>nul 2>nul || (
cd /d "%~dp0"
cmd /u /c echo Set UAC = CreateObject^("Shell.Application"^) : UAC.ShellExecute "cmd.exe", "/k cd ""%~dp0"" && ""%~dpnx0"" ""%_Args%""", "", "runas", 1 > "%temp%\GetAdmin.vbs"
"%temp%\GetAdmin.vbs"
del /f /q "%temp%\GetAdmin.vbs" 1>nul 2>nul
exit
)

cd /d "%~dp0"
set "str=U O P R W V C"
echo 开始释放内存盘%str%内存
for %%a in (%str%) do (
set ckd=%%a:
set dd=0
if exist !ckd! set dd=!ckd!
call :filldisk
)
echo.&echo 操作完成!
pause>nul
exit


:filldisk
if !dd!==0 exit /b
echo.&echo 正在释放内存盘!dd!内存...
del !dd!\test*.zip /f 1>nul 2>nul
for /f "tokens=3 delims=:" %%i in ('bootmode !dd!^|find /i "FreeSpace"') do set size=%%i
set /a n=!size!/1024
set /a nn=n+1
set /a m=!size!-n*1024-100
set /a l=m*1024*1024
set rt=0
fsutil file createnew !dd!\test_!nn!.zip !l! 1>nul 2>nul
:ctt
set /a rt+=1
fsutil file createnew !dd!\test_!rt!.zip 1073741824 1>nul 2>nul
if !rt! LSS !n! goto :ctt
del !dd!\test*.zip /f 1>nul 2>nul
exit /b

sairen139 发表于 2022-3-31 10:53:16

sairen139 发表于 2022-3-31 10:23
由本论坛坛友yiyu2012改进的不弹出黑框的更完美的批处理如下
@echo off
setlocal EnableDelayedExpansi ...

此批处理是yiyu给自己机子多p驱动内存盘清理定制的,大家要用可加以改动,pause要删除,str值也要改的。

liujun2000 发表于 2022-4-7 01:19:52

谢谢共享

chinacfm 发表于 2022-4-8 11:26:09

这种方式是不是特别适合小内存?就是ram盘按小VDF盘的容量,大VDF盘只是imdisk加载,不占内存的吧?

sairen139 发表于 2022-4-8 12:39:04

chinacfm 发表于 2022-4-8 11:26
这种方式是不是特别适合小内存?就是ram盘按小VDF盘的容量,大VDF盘只是imdisk加载,不占内存的吧?

如果需要降低内存请使用延迟加载开机内存比正常系统多1g,如果要开机常规完全加载的话内存占用多得多

chinacfm 发表于 2022-4-8 14:14:07

本帖最后由 chinacfm 于 2022-4-8 14:15 编辑

sairen139 发表于 2022-4-8 12:39
如果需要降低内存请使用延迟加载开机内存比正常系统多1g,如果要开机常规完全加载的话内存占用多得多
谢谢,我还是没明白:
假设我VHD系统盘有10G,做了一个小镜像VDF 1G,大VDF5G,我的系统物理内存只有4G,是否能跑起来?
就是说,我的RAM盘只需要1G 是否就够了?那个5G 的VDF镜像实际是一直在硬盘上,只是按需取出文件?

sairen139 发表于 2022-4-8 17:49:38

chinacfm 发表于 2022-4-8 14:14
谢谢,我还是没明白:
假设我VHD系统盘有10G,做了一个小镜像VDF 1G,大VDF5G,我的系统物理内存只有4G, ...

你这种假设的话设置为延时加载内存足够用,但设置成开机把整个系统都加载到内存里的常规加载内存不够。

sairen139 发表于 2022-4-8 17:52:33

chinacfm 发表于 2022-4-8 14:14
谢谢,我还是没明白:
假设我VHD系统盘有10G,做了一个小镜像VDF 1G,大VDF5G,我的系统物理内存只有4G, ...

一句话内存比系统文件占用的空间大可以开机常规加载把所有文件加载到内存使用,如果内存不够大那就设置为延时加载需要时才会从硬盘加载到内存。延时加载适合小内存

lifeway 发表于 2022-4-9 15:14:11

请问能否GRUB2引导?本人按照教程不成功,引导时有一10几行字的一闪而过,好像找不到文件之类

sairen139 发表于 2022-4-9 16:39:12

lifeway 发表于 2022-4-9 15:14
请问能否GRUB2引导?本人按照教程不成功,引导时有一10几行字的一闪而过,好像找不到文件之类

可以的
页: [1] 2 3
查看完整版本: 单一P驱双镜像uefi启动的ramos内存系统直接在当前系统下手动制作的方法详细步骤分享