无忧启动论坛

标题: win7_VHD二级差分无法验证数字签名。。想独立引导系统 [打印本页]

作者: 2013pili8    时间: 2013-6-23 05:00
标题: win7_VHD二级差分无法验证数字签名。。想独立引导系统
本帖最后由 2013pili8 于 2013-6-23 05:23 编辑

     用win8很有一段时间了,已经习惯了它的metro开始菜单,而且这也成为我继续用win8的主要原因。。不过win8的卡已经让我无法忍受了,时不时硬盘都100%,加之其他一些问题。我决定得再做个辅助系统了。。。早在几个月前发现了用VHD来装系统这个较新方式。也实践了,用了一段时间的win7-VHD,感觉真的不错,根据差分,秒还原不是问题。不过那时只是试试玩玩,没想用vhd的win7,也只差分了一次。。。。
     由于前段时间意外地换了硬盘,系统全部重做。。首先毫不犹豫地装win8,因为我已经离不开metro开始菜单(虽然有用win8的人还拼命找win7xp时代的开始按钮)。。。双系统是我们这些玩电脑的人必须要有的。。。最好的方式便是用VHD来装个win7了,因为还原方便。配置优化好了后就可以随便玩了,系统有任何问题直接copy一文件就还原了,修复都懒得修复。。。
我安装好后的WIN7_VHD.VHD,然后差分一次为WIN7_VHD_CHILD.VHD。。。继续在差分的win7上打补丁装软件美化等。。搞好后再次
正文:
差分WIN7_VHD_CHILD.VHD为WIN7_VHD_CHILD_CHILD.VHD,这是二次差分的文件了。。。可是这个二级差分的VHD系统却进不去了,显示无法验证数字签名(如图)。。

可是,我二级差分跟一级差分的步骤完全一致啊,而一级差分的WIN7_VHD_CHILD.VHD都能正常使用,二级的却不行。。用的VHD软件是VHD_OneKey_2012_1001。。。

反复实验,都是WIN7_VHD_CHILD.VHD能进去,而WIN7_VHD_CHILD_CHILD.VHD失败。。。。试了试把win8镜像安装文件的bootmgr复制到c盘(其实也是win8的bootmgr)的方式,仍不能解决。。。。回来后到发现WIN7_VHD_CHILD.VHD也进不去了,也是显示windows无法验证数字签名。换回原来的bootmgr也无解。不确定是不是换bootmgr产生的问题。。。
又继续百度查找,我感觉是MBR、系统引导文件之类出错的问题。想要做成把系统引导文件放到独立分区来引导系统的形式。。但不是搞的很明白。。主要要两篇文章的参考。
Grub4DOS引导Win7、Win8、XP多系统启动:wenku.baidu.com/view/cf08ece9102de2bd96058846.htm
Windows系统分区、安装、引导与移除的一些经验:lhi.baidu.com/4o7647406/item/0f98f5e3189dc70f560f1dc5

所以望求助各位朋友:
1.是不是我差分的方法出错,最好是VHD差分是什么方法?
2.windows无法验证此文件的数字签名什么原因?
3.系统引导文件在哪里,是bootmgr和bcd么?把引导文件独立如何实现?
4.在群里谈论时听说个“幸运草Clover”这种引导方式,但感觉是黑苹果用的,这能用到我这上面么?
5.VHD系统启动时是靠什么来把VHD文件挂载成分区的?
6.选择win7时,会重启再进win7.。后面明白这是win8的metro化引导选择界面惹的货。。后来我改为win7为默认操作,这样进win7的话不会再重启下了。。。但新问题来了:win8关机再开机的话,根本就不弹出系统引导选择按钮,直接就进入win8了,只有把win8重启才行,这是win8快速启动模式惹的货,跟开机不能进bios一样。。。。。这问题能解决么??
作者: lasti    时间: 2013-6-23 09:28
3.系统引导文件bootmgr在c盘,bcd在boot目录下
5.你用bootmgr引导的win7vhd,是靠bootmgr引导的,操作命令在bcd里

我就只懂这么多,反正我用的win7vhd是用ghost写上去,二级差分也没问题.....
作者: 2013pili8    时间: 2013-6-23 12:43
lasti 发表于 2013-6-23 09:28
3.系统引导文件bootmgr在c盘,bcd在boot目录下
5.你用bootmgr引导的win7vhd,是靠bootmgr引导的,操作命令在 ...

谢谢
5.。是靠c盘bootmgr引导,那么什么听说只能win7或win8装成VHD呢
作者: lasti    时间: 2013-6-23 15:38
2013pili8 发表于 2013-6-23 12:43
谢谢
5.。是靠c盘bootmgr引导,那么什么听说只能win7或win8装成VHD呢

vhd是微软收购vpc虚拟机之后才合并进windows的技术,收购的时间大概是win7发布之前,而且vhd实际需要系统的内核支持,除了现在靠第三方vboot支持才实现vhd里运行的winxp,不靠第三方实现vhd的只有win7和win8了
作者: 2013pili8    时间: 2013-6-23 17:27
本帖最后由 2013pili8 于 2013-6-23 19:48 编辑
lasti 发表于 2013-6-23 15:38
vhd是微软收购vpc虚拟机之后才合并进windows的技术,收购的时间大概是win7发布之前,而且vhd实际需要系统 ...


哦。。谢谢。。。
我发现我做的这个VHD差分的都不能用了。。至于母盘 可以用。。。
这个母盘是我用ghost克隆的一个,只为节省一些碎片空间。。。难道这一切都是ghost惹的祸??
(原来没用ghost母盘正常使用。。。。)
作者: lasti    时间: 2013-6-23 20:51
2013pili8 发表于 2013-6-23 17:27
哦。。谢谢。。。
我发现我做的这个VHD差分的都不能用了。。至于母盘 可以用。。。
这个母盘是我用gh ...

请问你的win7版本是哪个?还有有些精简版系统会缺少一点东西,或许找个更完整的win7就能正常使用vhd差分了
作者: 2013pili8    时间: 2013-6-23 21:35
lasti 发表于 2013-6-23 20:51
请问你的win7版本是哪个?还有有些精简版系统会缺少一点东西,或许找个更完整的win7就能正常使用vhd差分了 ...

旗舰版呢:HF-WIN7_SP1_X64_V6.2.iso  3.70 GB (3,982,577,664 字节)。。。不应该是精简版吧
作者: ungrown    时间: 2013-6-24 11:21
差分VHD系统,分多少级都没有问题,至少我之前用的VHD系统最多时有四级:install.wim安装后第一次重启前——初步设置+激活——系统和软件具体配置调整——使用中的系统。即便是这种结构也没有出现无法启动的情况。你的系统提示winload.exe文件的数字签名有问题,我觉得应该从这里下手,上网搜一下有没有类似案例。同时,请回忆一下,当前子盘在最后一次正常运行时有没有什么操作可能动到winload这个文件的。另外,有一个方法你可以先尝试一下,用母盘里的winload和bootmgr替换掉子盘里的相应文件,试试看,毕竟你的母盘还是正常的对吧?

顺便一提,已经建立子vhd的父级vhd是不能随便动的,任何变更,包括对其进行启动进入系统,都将导致其下级的所有子vhd失效,这点不知你的操作中有没有注意。

最后关于你的几个提问:
1、不存在所谓最好的差分方法,只要是符合微软vhd格式标准的软件制作的vhd文件都是有效且受支持的(我用的windows自带的diskpart制作vhd工具),只要是符合微软的vhd系统启动模式都是可以启动的。具体的差分vhd的级数不会导致启动失败,但是级数过多会造成启动时间延长(我想你能够理解其原因)并且使管理复杂化,另注意永远不要随便更改已经建立差分vhd(子vhd)的vhd文件。
2、无法验证文件数字签名的原因非常多,有的原因设置不涉及对相关文件的更改,我建议你搜索一下。但是有一个方法是肯定值得一试的(上面也提到了),就是用官方原文件进行替换
3、bootmgr是主要的引导程序,引导扇区根据其中记录指向的下一个文件就是引导程序,nt60引导扇区记录->bootmgr,随后bootmgr根据自身对应的启动文件bcd载入相应的启动信息(比如各个启动菜单的入口)。所谓将引导文件独立是指什么呢?nt60引导相关的文件bootmgr和同一目录下的boot文件夹中所有文件都是可以和系统分区分开放置的,启动分区和系统分区不一定是同一个分区,只要引导分区是主分区并且激活,只要引导分区的引导扇区是nt60,分区下包含bootmgr和boot文件夹,boot文件夹中的bcd文件配置了正确的启动项(名称、类型、语言、系统位置等等),那么整个nt60引导过程就能正常执行。当然,引导成功之后,系统能不能正常启动就是另一回事了。winload文件的使命正好处在引导和启动这两个阶段进行交接的时候,所以说,你需要两边都检查一下。
4、你说的那个我不知道,因为我没有相应的需求,所以无可奉告。我只知道黑苹果的启动有比较强的特殊性和针对性。
5、vhd的引导和普通系统的引导包括可启动WIM镜像的引导(比如官方PE和系统自带的恢复环境)都是依靠bootmgr进行的,bootmgr->boot manager,即启动管理器。具体启动的类型是什么,参数如何,由bcd保存。bcd的修改配置可以用官方工具bcdboot,也可以用第三方软件BOOTICE。
6、win8的快速启动,其本质原理是休眠,只是它没有休眠整个系统,而只是休眠了系统内核。因为在引导成功之后,系统启动的第一个重要工作就是初始化内核,这个过程设计的数据量不大,但是步骤多,耗时长。快速启动或者说”混合启动“(这名字可能记错了,印象里是hybird boot吧),就是将已经启动成功的系统的内核从内存中休眠进磁盘,这样下次启动过程中只要直接从休眠文件中把现成可用的内核读进内存即可,省去了内核初始化的过程,事实证明,效果显著。那么我们回过头来看,既然快速启动的本质是休眠,那么既要说说bootmgr的休眠机制。bootmgr能且只能记住一个休眠任务!注意这点!不管机器上的bootmgr实际管理着多少系统,但是它能管理的休眠任务只能有一个!能够休眠的系统只能有一个,能够从休眠中恢复的系统也只能有一个,而且休眠的执行优先级最高,如果bootmgr记录中有一个休眠的系统,那么不好意思,一旦引导就是直接进行该休眠的恢复,至于bcd中其他的系统启动项?对不起bootmgr表示它重任在身。你如果要启动其他的系统,就必须手动终止当前的休眠恢复,并且在重启后bootmgr会提醒你:上次休眠的恢复失败了,是继续重试还是放弃?放弃的话,该休眠也就被彻底放弃了,没有然后了。
作者: 2012studyvhd    时间: 2013-6-24 11:42
已经建立子vhd的父级vhd是不能随便动的,任何变更,包括对其进行启动进入系统,都将导致其下级的所有子vhd失效

我觉得楼主可能忽视了楼上说的这个事实。楼主可能忽视了这一点吧。
至于显示windows无法验证数字签名,我觉得楼主不妨把自己在用的原生系统自带的win8的bootmgr拷贝到win7 VHD系统的父级里的bootmgr,可能会有效。
当然子VHD得重新建立了。==
毕竟以前遇到过类似的问题,俺是菜鸟,希望能帮到你。
作者: lasti    时间: 2013-6-24 16:38
lasti 发表于 2013-6-23 20:51
请问你的win7版本是哪个?还有有些精简版系统会缺少一点东西,或许找个更完整的win7就能正常使用vhd差分了 ...

我用的版本是 霄中鹤 的win7 x64系统,由于office2007的问题,比较少用,不过三级差分vhd的确是正常使用着,建立差分是用那个2013版本的,环境是阿尼托佛的win8x64pe下,格式化c盘,用bootice写入nt6.0的引导,启动后,差分磁盘的盘符会成为c盘。
作者: 2012wuzhong    时间: 2013-6-24 19:21
会不会是空间问题?2级差分,可能需要很大的空间。
不知道楼主vhd是固定大小的还是可变的?

作者: 枯萎的季节    时间: 2013-7-9 11:28
提示: 作者被禁止或删除 内容自动屏蔽
作者: 2013pili8    时间: 2013-11-19 10:44
ungrown 发表于 2013-6-24 11:21
差分VHD系统,分多少级都没有问题,至少我之前用的VHD系统最多时有四级:install.wim安装后第一次重启前—— ...

谢谢。这么多字辛苦了。。学习了
作者: 2013pili8    时间: 2013-11-19 10:44
2012studyvhd 发表于 2013-6-24 11:42
我觉得楼主可能忽视了楼上说的这个事实。楼主可能忽视了这一点吧。
至于显示windows无法验证数字签名,我 ...

互学
作者: km560    时间: 2016-4-15 15:57
这个问题也困扰我好一阵,搜索高人的方案,是这样解决的:在无法启动那个vhd系统里面 进PE 找到windows/system32/boot/ 里面的winload.exe 复制到windows/system32/ 里面替换 就可以了。
原理不清楚




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