无忧启动论坛

标题: 基于PrimoCache的原生USBVHD系统 [打印本页]

作者: 上帝是笨蛋    时间: 2018-1-22 10:06
标题: 基于PrimoCache的原生USBVHD系统
本帖最后由 上帝是笨蛋 于 2018-1-23 15:00 编辑


基于PrimoCache的原生USBVHD系统


在写此教程之前,我曾在VHD区发贴简单易做、自己定制USB移动系统简易教程http://bbs.wuyou.net/forum.php?mod=viewthread&tid=404327&extra=),该方法在我想来应属上上之选:

一是该方法不需要太多的专业知识,简单易学;

二是你可以尽情地定制你的系统,只要你的U盘够大;

三是不需要在U盘上“慢慢地”安装系统,只要在硬盘上安装好,拷过来就可以用;

四是你可以很容易地随时更新系统。

这些优点我想应该足够了,但,呼应之人甚廖,细想之下,会不会是教程没有细述所致,因而再次开贴……

该贴所述USBVHD系统,只能应用到WIN8以上系统,因为本人利用的就是WIN8以上系统原生支持在U盘启动,所以对于行家来说,该教程只有四个过程:

1、在你的硬盘VHD磁盘上安装好系统及应用,不管是精简版还是完全版都行;

2、将你的U盘分成2个区:Boot区和数据区;Boot区格式为fat32,数据区格式化为NTFS,并确保你的U盘能引导系统,并让你的U盘被VHD系统驱动1次以上;

3、安装好PrimoCache,并设置好缓存目标及缓存大小;

4、将VHD系统复制到U盘,然后添加引导。

资源链接:https://pan.baidu.com/s/1nwO5JRz 密码:rtg0
网盘链接资料列表:




该教程中USBVHD操作系统,以WIN10为例


第一步:进入正常Win8或Win10系统或PE系统(WIN8以上核心PE),在硬盘上创建VHD,固定大小为10G,初始化磁盘为MBR,并格式化为NTFS





作为USB系统使用,VHD不要使用“动态扩展”,不然在U盘上执行保存操作时会非常的慢,当然本人同样建议不要在U盘上对系统作出任何更改,除非你的U盘是SSD或移动硬盘,你完全可以把USB系统保留在你的计算机中,当需要装卸软件或安装系统补丁时,先在你的硬盘VHD中安装更新好,再重新复制到U盘使用




建立好分区,并格式化为NTFS

第二步:灌装系统




建议手动添加引导,我们需要去掉“启动Win8 Metro 启动界面”的勾选,不然下次启动时想选择硬盘PE,可就有点不方便。
装好系统后,卸载VHD





第三步:添加新VHD引导项




如果你是在正常系统操作,就直接选择“当前系统BCD”,如果是在PE系统中操作,就选择“其它BCD文件”,当然一般情况BCD文件应当处于“C:\boot\”或“C: \efi\microsoft\boot”下面。




说明:“启动磁盘”是你创建的VHD存放的物理磁盘

      “启动分区”是你的VHD当前存放的实际分区

      “设备文件”也就是你VHD所存放分区的绝对路径(但不包括盘符)及VHD文件名称

       “启动文件”,如果你的计算机是BIOS引导,那么启动文件就是“winload.exe”,如果是UEFI引导,那么就是“winload.efi

       “启动Win8 Metro 启动界面”就选用四方块好了,不然启动时就看不到BCD菜单了。

        最后,我们把“Win10 1709企业版G x64”设为默认启动项,

保存好设置,退出BOOTICE,重启计算机,系统会进入3分钟左右的安装过程,并进入系统桌面。


第四步:系统进入桌面后,我们首先要做的是去掉系统的页面文件,去掉系统的睡眠功能,不然你的VHD将会被它们俩占用至少6G以上的空间。当然页面文件系统会自动地放到非VHD磁盘,但睡眠文件肯定会放在VHD磁盘的C盘根目录下。

4.1、去掉系统页面文件





4.2、去掉系统的睡眠功能








如果你还要用于笔记本,那么还要进行如下设置







我们还要进入CMD命令窗口,用命令关闭睡眠开关:Powercfg –h -off







这些都设置好后,我们需要重启系统,重启进入系统桌面后,查看刚才设置是否正确。尤其是查看分区可用容量是否已经增大。


第五步:相对重要的一步,识别U盘。


5.1插入你用于做移动系统的U盘,让系统给U盘装上驱动;
我们先查看U盘盘符:

5.2进入注册表HKEY_LOCAL_MACHINE/SYSTEM/MountedDevices删除除了C盘及优盘的所有信息,并把U盘盘符改为D,如果U盘显示有多个分区,你可以依次递增盘符;








5.3重启VHD系统,查看盘符D是不是U盘,如果不是,再次按5.2步骤改动,再重启VHD系统,再查。如果多次改动都无效,说明你的U盘不能承载移动系统,请换一个U盘再试;这是成功与否的关键点;



第六步:我们进入其它正常系统或PE系统,挂载该VHD,然后对其启用磁盘压缩。这一步一是增加VHD可用容量,二是增加在U盘上启动系统的启动速度。





执行压缩过程中,会有一些“无权限”的提示,选择忽略全部。





第七步VHD磁盘分区进行压缩后,我们再次重启计算机进入该VHD系统,安装必要的驱动,但我们最好以系统自带的为主,我们只装未被系统识别的声卡、网卡、显卡,这样做只是为了增加兼容性,安装独显驱动会增加当机的概率。驱动安装好后,就可以安装我们要用的软件。最后安装系统缓存软件PrimoCache

7.1 安装PrimoCache

7.2 永远60天试用
把“PrimoCacheCracker-破解补丁.exe”复制到C盘任意目录,只要你能找到就行。我是复制到PrimoCache安装目录下面。

复制“PrimoCacheCracker-破解补丁.exe”

粘贴“PrimoCacheCracker-破解补丁.exe”到安装目录“C:\Program Files\PrimoCache”

在CMD窗口中运行“gpedit.msc”
脚本参数是:--SILENT,前面是两个英文状态的横线,字母部分全是大写,不要弄错了。

7.3 完成PrimoCache安装完成后,重启系统进入桌面,打开PrimoCache,进行系统缓存设置。


7.3.1   4G以下内存设置,任何更改,都会延时批量保存。









7.3.2   4G以上内存设置(另类RAMOS或说影子系统),打开PrimoCache的免写开关,也就是系统的任何更改,都在系统重启后消失。



6144M.cfg”是我已打开“免写开关”的配置文件,缓存大小可以自己设定。

命令行方式:

在安装目录下运行rxpcc ls,找到VHD磁盘索引号,然后再运行命令:

C:\Progra~1\primocache\rxpccnew -v 2 -m 6144 -b 4 -a skipflush -g rw -w INF –s

其中“2”为VHD磁盘索引号,“6144”为缓存大小(MB

缓存大小设置有一点需要注意,使用EWF时,当缓存将满,系统只是越来越慢,至最后死机,重启即可;而PrimoCache会造成磁盘存储溢出,最终导致分区崩溃,系统随之损毁。因此你必须保证设置有足够的缓存来避免这一点。那究竟需要设置多少才合适呢?

假设USBVHD剩余磁盘空间为2G,如果安装的是Win10_1709x64Cool8X64(V42),该系统运行需要占用缓存1G,那么缓存最低需要设置(2G+1G+2G+1G*1.6%(额外开销)=3072+503122MB4G的物理内存勉强可以运行,6G物理内存就可以畅游了。如果你安装的是原版(非优化),系统运行所需要占用的缓存,最好考虑在2G以上,最好是3G。当然,如果物理内存足够大,你完全可以全盘缓存,即你的VHD有多大,你就设置缓存有多大。






执行“暂停缓存(本卷)”,可以让PrimoCache设置生效。这一操作也是我们保存系统更改,比如你安装系统补丁、新安装某个软件之后的操作。




7.3.3 执行“暂停缓存(本卷)”后,重启系统并进入桌面,查看还有没有漏掉的东西,如果没有就基本结束了。




第八步:复制VHD到你的U盘,手动添加到UBCD引导中。参考“第三步:添加新VHD引导项”。

第九步:用你的U盘启动刚刚做好的移动系统,进入桌面后,在管理员CMD窗口中运行如下命令:
bcdedit /set {current} bootstatuspolicy ignoreallfailures(忽略错误继续)
由于USBVHD系统的每次启动,哪怕你没有做任何更改,VHD文件时间属性都会发生变化,但VHD磁盘内的系统文件由于受到PrimoCache软件的保护,没有与之同步,所以下次启动时,会有硬件有变化的一个错误提示,执行上述命令后,该错误提示就不会出现了。




预祝大家玩得开心!


###2018年1月23日修正
gdcjg (7楼)2018.1.22日提醒,PrimoCache3.0破解不成功,是一个假破解,在此深表感谢!经本人反复测试验证,仅有2.2破解可以永远60天试用,随意调整日期均不会出现破解失败的情况,在此也非常感谢雪峰提供的破解(http://www.xsnow.moe/2016/03/22/PrimoCacheToolBox/)。
好了,闲话少说,教程现修正如下:
1、卸载3.0版


2、安装PrimoCache2.2与破解请参照“7.1 安装PrimoCache”与“7.2 永远60天试用”。

作者: 2010sya    时间: 2018-1-22 10:34
谢谢分享
作者: fxq    时间: 2018-1-22 10:37
好教程、好详细、谢谢分享。
作者: fk2001    时间: 2018-1-22 13:21
真心得顶!!!!!!!!!
作者: 易广白    时间: 2018-1-22 16:25
谢谢分享,花了不少功夫折腾,俺捡了个现成
作者: 青青草    时间: 2018-1-22 17:49
教程好详细。楼主辛苦了!支持一下!
作者: gdcjg    时间: 2018-1-22 21:33
弱弱地问下:PrimoCache这样是真破解还是伪破解,改日期到2个月后重启两次是不是会提示过期?
作者: 上帝是笨蛋    时间: 2018-1-22 22:13
gdcjg 发表于 2018-1-22 21:33
弱弱地问下:PrimoCache这样是真破解还是伪破解,改日期到2个月后重启两次是不是会提示过期?

不好意思,刚刚按你的提示操作后,确实是假破解!,还是2.2版的永远60天比较靠谱,只不过2.2版的破解,也必须在使用满59天的时候进行一次保存操作,然后又可以继续59天。
作者: gdcjg    时间: 2018-1-23 09:04
上帝是笨蛋 发表于 2018-1-22 22:13
不好意思,刚刚按你的提示操作后,确实是假破解!,还是2.2版的永远60天比较靠谱,只不过2.2版 ...

谢谢!目前好像只有2.2破解最靠谱
作者: 上帝是笨蛋    时间: 2018-1-23 11:40
gdcjg 发表于 2018-1-23 09:04
谢谢!目前好像只有2.2破解最靠谱

谢谢你的提醒,解决方法我已补充到贴子尾部。非常感谢!
作者: 上帝是笨蛋    时间: 2018-3-20 15:02
难道大家都喜欢现成的VHD系统,不觉得下载很费时吗?
作者: 掩嘴一笑    时间: 2018-3-26 05:54
不明觉厉!小白路过赞一个!
作者: hszgb    时间: 2018-3-27 08:48
下载学习一下
作者: xffd    时间: 2018-3-27 09:46
真的是方便 又强大 的东西啊
作者: ls68057121    时间: 2018-3-30 05:00
非常的好,有没有高手直接做成移动的系统
作者: Jereme00    时间: 2018-4-5 21:57
rqdq的确很喜欢现成的,费时下载没事,就怕费脑动手,哈哈
作者: dk5689    时间: 2018-4-15 08:14
怎么都找不到“6144M.cfg”????
作者: 上帝是笨蛋    时间: 2018-4-15 11:38
dk5689 发表于 2018-4-15 08:14
怎么都找不到“6144M.cfg”????

该文件漏传了,一直没注意,刚刚已经补传至网盘。
作者: dk5689    时间: 2018-4-15 20:03
文件已收到,谢谢.
好人一生平安
作者: dk5689    时间: 2018-4-15 20:30
请教楼主,想改变6144m这个数值
应该怎么编辑6144M.cfg??
记事本,或者其他软件打开都是乱码,
系统是win7x64

1.JPG (100.19 KB, 下载次数: 187)

1.JPG

作者: 上帝是笨蛋    时间: 2018-4-16 15:37
dk5689 发表于 2018-4-15 20:30
请教楼主,想改变6144m这个数值
应该怎么编辑6144M.cfg??
记事本,或者其他软件打开都是乱码,

不用编辑,你直接导入,导入后的界面,可以手动修改缓存大小。
作者: iliwan1982    时间: 2018-6-9 15:55
好教程、好详细、谢谢分享
作者: ls68057121    时间: 2018-8-11 19:59
3.02怎么开启  免写呢
作者: 上帝是笨蛋    时间: 2018-8-14 19:28
ls68057121 发表于 2018-8-11 19:59
3.02怎么开启  免写呢

看本教程的7.3.2 章节有详细说明
作者: 上帝是笨蛋    时间: 2018-8-14 19:50
关于3.02你可以参看http://bbs.wuyou.net/forum.php?m ... p;extra=&page=1此贴或许对于有所帮助。
作者: scph_50001    时间: 2018-10-1 22:42
要是Win7也能这么玩就好了,顺便问下U盘启动的Win7 RAMOS有什么可行的办法?

我参照下面这个帖子,做成GRUB启动硬盘上的VDF很顺利,但把VDF放到U盘同样用GRUB启动就不行(蓝屏),已经修改了WIN7的两处使其增加USB启动的注册表键值了,盘符也修改了(比如关联镜像原本在硬盘D上,做WIM文件时离线把D盘盘符删除,再把U盘的盘符改为D,)

ramos P驱单镜像手动工具——win7 8 10三合一,稳定通用,简单明了
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=386353
作者: 上帝是笨蛋    时间: 2018-10-3 08:41
本帖最后由 上帝是笨蛋 于 2018-10-3 08:49 编辑
scph_50001 发表于 2018-10-1 22:42
要是Win7也能这么玩就好了,顺便问下U盘启动的Win7 RAMOS有什么可行的办法?

我参照下面这个帖子,做成G ...


你肯定是将它运行在USB3.0或USB3.1接口上,才导致蓝屏,因为WIN7原生仅支持USB2.0,我测试过,即使在虚拟机上安装好USB3.0或USB3.1驱动,蓝屏的机率还是有的。如果你以纯RAMOS格式启动,由于系统初始是以2.0模式加载系统核心,当硬件初始化完成后,由P驱接管并加载全系统至内存,当系统识别并加载USB驱动时,系统已经脱离USB接口的支持,所以你即使没有安装USB3.0驱动,WIN7RAMOS也很少出现蓝屏。
作者: scph_50001    时间: 2018-10-3 09:44
本帖最后由 scph_50001 于 2018-10-3 09:45 编辑
上帝是笨蛋 发表于 2018-10-3 08:41
你肯定是将它运行在USB3.0或USB3.1接口上,才导致蓝屏,因为WIN7原生仅支持USB2.0,我测试过,即使在虚 ...


感谢回复,我的配置是H61+4G,主板上没有usb3.0接口(4个接口都是黑色的)。

U盘是FAT32的单分区,MBR是UltraISO USB-HDD+,PBR是BOOTMGR,启动WIN7PE,启动GRUB都是没问题的。

问题就是GRUB启动VDF(放在U盘根目录)的时候,可以看到U盘指示灯闪了一下,进入系统,下面的进度条不停的运行,然后过了大概十几秒,出现7B蓝屏。

如前所述,在制作VDF文件前,制作WIM及释放指针前,已经对VHD系统添加了WIN7 USB启动支持注册表。

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control]
"BootDriverFlags"=dword:00000004

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\PnP]
"PollBootPartitionTimeout"=dword:00007530

制作WIM及释放指针后进行了盘符离线修改,PRIMO RAMDISK 关联镜像原在硬盘D根目录,离线把D盘盘符删除,再把U盘的盘符改为D。(如果把仅加载的关联镜像放在U盘盘符上,那重启后根本看不到内存盘了,更加不可行)

U盘文件结构是根目录bootmgr, grldr、grldr.mbr、menu.lst和VDF,BOOT目录两个文件(一个bcd, 一个MEMTEST,FONTS文件夹,ZH-CN文件夹)

不知应该如何操作,我希望达成的是情况是没有硬盘,只有U盘,进入Windows以后,U盘可以拔出运行,如果GRUB引导VDF这个办法不行的话,还有什么其他办法,谢谢!!




作者: 上帝是笨蛋    时间: 2018-10-5 11:18
scph_50001 发表于 2018-10-3 09:44
感谢回复,我的配置是H61+4G,主板上没有usb3.0接口(4个接口都是黑色的)。

U盘是FAT32的单分区,M ...

你试试这个注册表

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\PnP]
"PollBootPartitionTimeout"=dword:00003a98

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control]
"BootDriverFlags"=dword:00000004

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\PnP]
"PollBootPartitionTimeout"=dword:00003a98

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control]
"BootDriverFlags"=dword:00000004

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\amdsata]
"Start"=dword:00000000
      
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\amdsbs]
"Start"=dword:00000000
      
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\iaStorV]
"Start"=dword:00000000
      
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\msahci]
"Start"=dword:00000000
      
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\nvraid]
"Start"=dword:00000000
      
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\nvstor]
"Start"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\pciide]
"Start"=dword:00000000
      
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\intelide]
"Start"=dword:00000000
      
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\usbccgp]
"Group"="Boot Bus Extender"
"Start"=dword:00000000
      
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\usbehci]
"Group"="Boot Bus Extender"
"Start"=dword:00000000
      
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\usbhub]
"Group"="Boot Bus Extender"
"Start"=dword:00000000
      
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\usbohci]
"Group"="Boot Bus Extender"
"Start"=dword:00000000
      
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\USBSTOR]
"Start"=dword:00000000
"Group"="Boot Bus Extender"
      
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\usbuhci]
"Group"="Boot Bus Extender"
"Start"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\Usb Boot Watcher Service]
"ImagePath"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,\
  74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,55,\
  00,73,00,62,00,42,00,6f,00,6f,00,74,00,57,00,61,00,74,00,63,00,68,00,65,00,\
  72,00,2e,00,65,00,78,00,65,00,00,00
"ObjectName"=hex(2):4c,00,6f,00,63,00,61,00,6c,00,53,00,79,00,73,00,74,00,65,\
  00,6d,00,00,00
"Start"=dword:00000002
"Type"=dword:00000020
"ErrorControl"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\amdsata]
"Start"=dword:00000000
      
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\amdsbs]
"Start"=dword:00000000
      
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\iaStorV]
"Start"=dword:00000000
      
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\msahci]
"Start"=dword:00000000
      
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\nvraid]
"Start"=dword:00000000
      
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\nvstor]
"Start"=dword:00000000
作者: 15359380859    时间: 2019-7-7 17:06
太详细了,连我这个小白多看的懂,非常感谢!
作者: davidcui    时间: 2019-10-10 14:55
谢谢分享。
作者: hxd9724    时间: 2019-10-15 08:26
晕,昨天照着做了一次,居然出错了,害得我做了一次系统(最后发现问题是删除EWF的问题,与本操作无关)
作者: 上帝是笨蛋    时间: 2019-12-2 20:07
其实现在用WIN8、WIN10做USB系统,没以前那么费劲了,只要将USB驱动的Star值改为0,就基本上可以通过了,如果还有蓝屏,再调整Tag的值为1左右,应该就没有问题了。甚至WIN10还可以放在非深度隐藏分区启动。WIN8、WIN10USB系统,完全可以利用电脑上现有系统来制作,不过要记得删除独显驱动。
作者: luyou006    时间: 2020-7-24 07:40
支持技术帖。。很给力。
作者: 宏通2020    时间: 2021-9-3 12:03
教程不错,有空试试看,行不行
作者: promrhxq    时间: 2021-9-25 17:54
难得用心的帖子

太好了,PrimoCache真是神一般的存在
作者: wawakuliao    时间: 2022-4-24 19:50
做个记号




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3