无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
楼主: AndroidOL

[教程] 【待编辑】UEFI + GPT 引导下加载 VHD/VHDX 安装 Windows

[复制链接]
发表于 2015-2-11 00:12:05 | 显示全部楼层 |阅读模式
本帖最后由 AndroidOL 于 2015-2-11 00:37 编辑


  前言:  最近几天由于工作关系需要装几个软件,但就用几天,虽然可以卸载但是软件本身的行为比较流氓。于是在网上搜索解决方案,找到的除了沙盒、虚拟机之外就是 VHD 了。第一次接触这个东西不会玩,特别感谢 lianjiang 大大的 OneKey 工具,但由于计算机是 UEFI,重启后黑屏有鼠标,搜索得到是 BCD 的引导应该是 winload.efi 而不是 winload.exe。
  今天研究了一天总算可以独立完成不依靠其他工具了,给各位参考下所有步骤,当然为了方便起见还是用了 ImageX 组件,如果各位对 DISM 熟悉的话可以用这个代替。

图片版本(论坛限制所以分卷了,也有百度盘,文件一样):

本文所有提到的工具有:
  • diskpart.exe 或 mmc.exe
      文件位置:C:\Windows\System32\diskpart.exe
      文件位置:C:\Windows\System32\mmc.exe
  • cmd.exe
      文件位置:C:\Windows\System32\cmd.exe
  • ImageX.exe 或 GImageX.exe
      ImageX.exe 下载地址:http://www.microsoft.com/en-US/download/details.aspx?id=39982
        【数字签名:有 | SHA】发行商:Microsoft Corporation
      GImageX.exe 下载地址:https://www.autoitscript.com/site/autoit-tools/gimagex/
        【数字签名:有 | SHA】发行商:AutoIt Consulting Ltd
  • BCDEdit.exe
      文件位置:C:\Windows\System32\BCDEdit.exe
  • shutdown.exe
      文件位置:C:\Windows\System32\shutdown.exe


XML 描述文档,所有命令均需管理员权限:
<root>
  // 第一部分
  <part index="1" method="1" tool="diskpart.exe">
  // 方式一:通过 diskpart.exe 进行命令行方式的 VHD/VHDX 虚拟磁盘创建
    <step do="0" command="diskpart.exe" />
    <step do="1" command="create vdisk file=D:\tempVHDX.vhdx maximun=1024000 type=expandable" />
    // 创建自动增长上限容量为 1TB 且文件名为 D:\tempVHDX.vhdx 的 VHDX 文件,基本指令如下:
    // create vdisk file="VHD/VHDX 文件路径" maximun=磁盘容量 (MB) type=增长方式 (expandable | fixed)
    <step do="2" command="select vdisk file=D:\tempVHDX.vhdx" />
    // 选择 VHD/VHDX 文件于 D:\tempVHDX.vhdx,基本指令如下:
    // select vdisk file="VHD/VHDX 文件路径"
    <step do="3" command="attach vdisk" />
    // 挂载已选择的 VHD/VHDX 文件
    <step do="4" command="list disk" />
    // 列出所有存在磁盘信息
    <step do="5" command="select disk 0" />
    // 选择需要进行操作的磁盘序号,基本指令如下:
    // select disk 磁盘序号
    <step do="6" command="clean" />
    // 清除分区信息,用于转换为 GPT 分区
    <step do="7" command="convert gpt" />
    // 执行转换命令
    <step do="8" command="create partition primary" />
    // 创建并指定所有空间为主分区
    <step do="9" command="format fs=ntfs quick" />
    // 快速格式化分区为 NTFS 文件系统
    <step do="10" command="assign letter=V" />
    // 指派该分区盘符为 V,基本指令如下:
    // assign letter=分区盘符
  </part>
  ###
  <part index="1" method="2" tool="mmc.exe">
  // 方式二:通过 mmc.exe 进行命令行方式的 VHD/VHDX 虚拟磁盘创建
    <step do="1" command="Disk Management" />
    <step do="2" command="More Actions -> Create VHD" />
    <step do="3" command="Location=D:\tempVHDX.vhdx" />
    <step do="4" command="Virtual hard disk size=1 (TB)" />
    <step do="5" command="Virtual hard disk format=VHDX" />
    <step do="6" command="OK -> GPT -> OK" />
    <step do="7" command="New Sample Volume" />
    <step do="8" command="Next -> Next -> V -> Next -> Finsh" />
  </part>
### ### ### ### ### ### ### ###
  // 第二部分
  <part index="2" method="1" tool="ImageX.exe">
  // 方式一:通过 ImageX.exe 释放 WIM 指 VHD/VHDX 中
    <step do="1" command="ImageX.exe /apply D:\sources\install.wim V:" />
    // 基本指令:ImageX.exe /apply install.wim 目录
  </part>
  ###
  <part index="2" method="2" tool="GImageX.exe">
  // 方式二:通过 GImageX.exe 释放 WIM 指 VHD/VHDX 中
    <step do="1" command="Apply" />
    <step do="2" command="Source=D:\sources\install.wim" />
    <step do="3" command="Destination=V:\" />
    <step do="4" command="Apply" />
  </part>
### ### ### ### ### ### ### ###
  // 第三部分
  <part index="3" method="0" tool="BCDEdit.exe">
    <step do="1" command="BCDEdit.exe /copy {current} /d "Windows Technical Preview from VHD"" />
    // 基本指令:BCDEdit.exe /copy {current} /d "系统启动项名称"
    <step do="2" command="BCDEdit.exe /set {<GUID>} device vhd=[D:]\tempVHDX.vhdx" />
    // 基本指令:BCDEdit.exe /set {<GUID>} device vhd=[分区:]"VHD/VHDX 文件路径"
    <step do="3" command="BCDEdit.exe /set {<GUID>} osdevice vhd=[D:]\tempVHDX.vhdx" />
    // 基本指令:BCDEdit.exe /set {<GUID>} osdevice vhd=[分区:]"VHD/VHDX 文件路径"
    <step do="4" command="BCDEdit.exe /set {<GUID>} detecthal on" />
    // 基本指令:BCDEdit.exe /set {<GUID>} detecthal on
    <step do="5" command="BCDEdit.exe /set {<GUID>} path \Windows\System32\winload.efi" />
  </part>
### ### ### ### ### ### ### ###
  // 第四部分
  <part index="4" method="0" tool="shutdown.exe">
    <step do="1" command="shutdown.exe -r -t 0" />
  </part>
</root>
发表于 2015-2-11 08:23:07 | 显示全部楼层
谢谢分享啊
回复

使用道具 举报

发表于 2015-2-11 11:16:20 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

 楼主| 发表于 2015-2-11 16:11:47 | 显示全部楼层
hai2002713 发表于 2015-2-11 11:16
晕,看不太懂。。

现在人们都喜欢各种一键工具,我还是习惯这样一步一步的命令行。
回复

使用道具 举报

发表于 2015-2-13 14:27:09 | 显示全部楼层
等待编辑完成,学习学习
回复

使用道具 举报

发表于 2015-3-2 15:08:39 | 显示全部楼层
做个记号,等待编辑完成
回复

使用道具 举报

发表于 2015-3-2 18:49:11 来自手机 | 显示全部楼层
不错,谢谢分享
回复

使用道具 举报

发表于 2015-3-11 17:37:02 | 显示全部楼层
本帖最后由 netfood 于 2015-3-11 17:42 编辑

麻烦把 ImageX.exe GImageX.exe 也放网盘上一份吧
回复

使用道具 举报

发表于 2015-3-23 02:26:15 来自手机 | 显示全部楼层
楼主能详细说明一下bcdedit.exe的用法吗?
回复

使用道具 举报

发表于 2015-4-5 21:41:44 | 显示全部楼层
谢谢分享
回复

使用道具 举报

发表于 2015-4-6 09:41:35 | 显示全部楼层
本帖最后由 lm0006 于 2015-4-6 09:42 编辑

请问怎么用命令添加快速还原差分呢
建立开机快速还原选项菜单
在UEFI GPT环境下
回复

使用道具 举报

发表于 2015-4-12 22:12:14 | 显示全部楼层
不错,好好学一下
回复

使用道具 举报

发表于 2015-4-23 21:37:52 | 显示全部楼层
要鱼肉
回复

使用道具 举报

发表于 2015-4-26 21:04:55 | 显示全部楼层
学习了
回复

使用道具 举报

发表于 2015-4-27 21:42:54 | 显示全部楼层
不知道在预装win8的gpt环境下的电脑能否通过vhd来安装ghost系统   
昨晚测试了下 bios  mbr模式下  随意在vhd上安装ghost系统
回复

使用道具 举报

发表于 2015-5-7 17:26:23 | 显示全部楼层
我想问楼主  你这个办法  如果是预装了win8的电脑  安装64位的win7行的通么 ?
我之前也是用vhd安装过原版的74位win7  结果提示啥没验证   需要改BIOS
  如果不改BIOS的前提下是否行得通 ?
回复

使用道具 举报

发表于 2015-5-11 02:13:50 | 显示全部楼层
执行第三步
BCDEdit.exe /set {<GUID>} device vhd=[D:]\tempVHDX.vhdx
提示系统找不到指定文件
回复

使用道具 举报

发表于 2015-11-16 15:05:22 | 显示全部楼层
好复杂啊,有没有简单一点的呀!
回复

使用道具 举报

发表于 2020-4-21 15:24:10 | 显示全部楼层
谢谢分享。                       
回复

使用道具 举报

发表于 2020-4-26 06:48:03 | 显示全部楼层
谢谢分享
回复

使用道具 举报

发表于 2020-12-31 08:03:48 来自手机 | 显示全部楼层
学习一下
回复

使用道具 举报

发表于 2020-12-31 12:38:47 | 显示全部楼层
进阶了,楼主辛苦了
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-3-29 17:56

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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