安装 Windows 到移动硬盘或 U 盘,UEFI 引导 ± VHD(X),Mac 适用

在便携式办公流行、Web OS 尚在娘胎的今天,我们不仅仅对硬件的便携性有着越来越高的要求,对个人文档“随身行”、甚至个人工作环境的可便携都有着不一般的需求。早在 2011 年,微软就发布了含有成熟可用的 Windows To Go 工具的 Windows 8 Enterprise(企业版),但因其限制居多,故许多爱折腾的朋友诸如笔者一直以“打破常规办事”的心态,寻找各种不一般的解决方案。加上使用 Mac 上的 OS X Boot Camp 安装 Windows 等系统的各种缺点,催生了本文。本文将讲解如何将 U 盘或移动硬盘制作成 UEFI(GPT 分区表)引导,且以虚拟硬盘的形式启动操作系统。

通过本文读者可以做到:

  • 在各种 Mac 上正常启动 Windows 7 / 8 / 8.1,并完整发挥 Mac 的性能,同时解决散热问题,痛痛快快玩儿游戏
  • 在各种 Mac 上正常启动各种主流 Linux 系统(驱动需折腾)
  • 打造真实的便携 Windows,在任何满足硬件要求的 PC 上流畅运行,每当在不同的 PC 上启动时,Windows 将自动安装合适的驱动程序,以解决兼容性问题

笔者在 WD Passport 500G 和 Toshiba V3SZK-064G(64G) 上测试成功,理论上适用于所有正规品牌及厂家生产的移动硬盘及 U 盘。假如读者对自己 U 盘的芯片没信心,请不要轻易尝试。本文文字上将通篇以移动硬盘作为研究对象。

第一部分:准备工作

工具:

方案:

这里有两种实现方案。考虑到现在主流 PC 主板 BIOS 都支持 UEFI 引导模式,且 Mac 只允许 UEFI 引导,故两种方案都作 UEFI 引导。

  • 方案 1:将 Windows 等系统安装到创建于移动硬盘的 VHD(X) 虚拟硬盘上;
  • 方案 2:将 Windows 等系统直接安装在移动硬盘的真实分区上。

采用虚拟硬盘和直接安装的区别

采用虚拟硬盘安装,Windows 以及其运行的应用程序,将把操作系统所在分区作为普通硬盘来对待,而不是移动磁盘(包括移动硬盘和 U 盘等)。自从 Windows 8 推出“Windows To Go”工具后,Windows 及其软件对 Windows 所在磁区的不同而有着不同的处理方式。例如 Adobe 公司的产品在便携式 Windows 中,对自身的内存占用有特殊的限制,不能最大化发挥性能。

其次,由于 Windows 安全机制的限制,直接安装在真实分区上的 Windows 的文件,将移动硬盘插入现有计算机上将无法直接存取。

再次,Windows Recovery 不可用,这个貌似没多大影响。但对于习惯了虚拟机的快照功能的朋友,虚拟硬盘的“差分 VHD(X)”创建的从属虚拟硬盘,其树状结构跟虚拟机的快照结构几乎完全一样,这点足够吸引人。因此,备份还原功能可以被完美实现。

第二部分:移动硬盘分区、创建虚拟硬盘

首先,我们进入现有的 Windows 系统,笔者这里使用的 VMware Fusion 运行的 Windows 8.1 Pro 虚拟机。通过 DiskGenius 分区工具对移动硬盘直接调整为 GPT 分区表并重新分区,这里笔者的分区方案是:

  • 分区 1:EFI 分区,100 MB,FAT32 文件系统,盘符 U(用来存储 EFI 引导信息文件)
  • 分区 2:主分区,100 GB,NTFS 文件系统,盘符 V(用来放置虚拟硬盘 .vhd / .vhdx 文件)
  • 分区 3:主分区,265 GB,NTFS 文件系统(闲置)
  • 分区 4:主分区,100 GB,Mac OS X 文件系统(用作 OS X Time Machine 备份)

其中,第一个 EFI 分区必不可少,且必须是 FAT 或 FAT32 文件系统,而 Windows 的 BCD 作 EFI 引导文件时大小在 24 MB 左右。通常我们分配该分区 100 MB。

安装 Windows 到移动硬盘或 U 盘,UEFI 引导 ± VHD(X),Mac 适用

接着我们创建一个新的虚拟硬盘,来到“计算机”右键菜单→“管理”→“磁盘管理”,在菜单上选择“操作”→“创建 VHD”。

VHD 与 VHDX 的区别

VHDX 是 2012 年微软为了适应新时代的存储需求,建立更加可靠的存储实例而提出的新虚拟硬盘的格式,其相比 VHD 支持更大的容量最大值(64 TB),同时逻辑扇区大小也有了多种选择。

安装 Windows 到移动硬盘或 U 盘,UEFI 引导 ± VHD(X),Mac 适用

在弹出的对话框中,我们在前文分好的分区 2 中建立一个新的虚拟硬盘,这里我们选择 VHDX 格式,且选择固定大小。

固定大小模式与增量模式

经过广大网友的评测(评测文章可自行 Google),在 VHD 虚拟硬盘中,固定大小模式下的读写性能较增量模式都要好一些。而在 VHDX 虚拟硬盘中,两种模式下性能几乎没有差别。缘于完美主义和强迫症,笔者毅然选择了固定大小模式的虚拟硬盘。

点击确定继续。如果选择了固定大小模式,则立即分配虚拟硬盘的实际空间,耗时可能有点长。

安装 Windows 到移动硬盘或 U 盘,UEFI 引导 ± VHD(X),Mac 适用

创建完成后,我们可以看到磁盘列表里多了个 Disk 2 (30.00 GB),该磁盘即为我们刚才创建的大小为 30 G 的 VHDX 虚拟硬盘。

安装 Windows 到移动硬盘或 U 盘,UEFI 引导 ± VHD(X),Mac 适用

同样地,我们可以在 DiskGenius 软件里看到这个虚拟硬盘。接着我们对其进行分区,分区表类型选择 GUID 或 MBR 均可,此处笔者在虚拟硬盘划分完整的 30 G 的 NTFS 分区,并将其指派盘符为 W

安装 Windows 到移动硬盘或 U 盘,UEFI 引导 ± VHD(X),Mac 适用

第三部分:安装操作系统、写入引导数据

笔者安装 Windows 是通过采用 ImageX 工具直接解压缩 Windows 安装盘中的 install.wim 文件内容到系统分区的形式实现的。除了 ImageX,7-zip、DISM 等软件同样可以实现这个功能。

以管理员身份启动命令提示符,这里笔者使用 ImageX 的 /apply 参数,将位于光驱 D: 中的 \sources\install.wim 的第 1 卷解压缩到分区 W: 根目录下。

C:\Windows\system32>imagex /apply D:\sources\install.wim 1 W:

此处的 1 意为 install.wim 的第 1 卷,笔者采用的安装盘是 Windows 8.1 Enterprise,其 install.wim 有且仅有一卷。具体的分卷信息可以通过 Win$Man 等主流工具直接查看。

Windows 7 / 8 / 8.1 安装镜像 install.wim 分卷

我们可以通过 DISM 工具查看指定 .wim 文件的分卷信息,以便在使用 ImageX 工具解压缩时使用。命令如下:

C:\Windows\system32>dism /get-imageinfo /imagefile:D:\sources\install.wim

其中已知 Windows 7 Ultimate ~ x86(32位)install.wim 分卷:

  1. Windows 7 Starter(简易版)
  2. Windows 7 Home Basic(家庭普通版)
  3. Windows 7 Home Premium(家庭高级版)
  4. Windows 7 Professional(专业版)
  5. Windows 7 Ultimate(旗舰版)

Windows 7 Ultimate ~ x64(64位)install.wim 分卷:

  1. Windows 7 Home Basic(家庭普通版)
  2. Windows 7 Home Premium(家庭高级版)
  3. Windows 7 Professional(专业版)
  4. Windows 7 Ultimate(旗舰版)

Windows 8 / 8.1 Pro ~ x86 / x64(32位 / 64位)install.wim 分卷:

  1. Windows 8 / 8.1(标准版)
  2. Windows 8 / 8.1 Pro(专业版)

Windows 7 / 8 / 8.1 Enterprise ~ x86 / x64(32位 / 64位)install.wim 分卷:

  1. Windows 7 / 8 / 8.1 Enterprise(企业版)

安装 Windows 到移动硬盘或 U 盘,UEFI 引导 ± VHD(X),Mac 适用

解压缩完成后,ImageX 工具提示 Successfully applied image.

紧接着下一步我们安装 EFI 引导信息文件到前文分区的 EFI 分区中,以实现我们的移动硬盘的可引导性。安装引导目前的主流工具有大名鼎鼎的 Bootice,还有 Windows 8.1 Enterprise 自带的 Bcdboot 命令行工具。

同样是在以系统管理员身份运行的命令提示符窗口中,笔者采用 bcdboot 命令行工具安装,将位于 W:\Windows 的操作系统添加到引导信息中,并将安装位置设置为 U: 即 EFI 分区。

C:\Windows\system32>bcdboot W:\Windows /s U: /f UEFI /l zh-cn

此处的 /f UEFI 即建立的此 BCD 信息以 UEFI 形式保存,/l zh-cn 即设置 BCD 的界面语言为简体中文。

安装 Windows 到移动硬盘或 U 盘,UEFI 引导 ± VHD(X),Mac 适用

BCD 引导信息创建成功后,提示 Boot files successfully created.

安装 Windows 到移动硬盘或 U 盘,UEFI 引导 ± VHD(X),Mac 适用

如果读者打算在 Mac 上运行此移动硬盘上的系统,则需将之前下载好的 Boot Camp 支持软件的安装程序完整解压缩到移动硬盘中,以备在初始化完成 Windows 系统后在没有网络的情况下顺利过渡到驱动程序安装的阶段。

安装 Windows 到移动硬盘或 U 盘,UEFI 引导 ± VHD(X),Mac 适用

如果读者使用的是虚拟硬盘方案,在正式引导移动硬盘内的操作系统之前我们需要在“磁盘管理”中对已挂载的虚拟硬盘进行卸载。

第四部分:引导系统启动

退出所有程序,包括关闭虚拟机,到目标机器上,插入移动硬盘(或 U 盘),如果是 PC 请在开机时激活引导菜单(具体快捷键因主板型号和品牌不同),如果是 Mac 请按住 Option 键同时点按电源键(按住 Option 键保持到引导选项菜单出现为止)。

安装 Windows 到移动硬盘或 U 盘,UEFI 引导 ± VHD(X),Mac 适用

这里我们选择移动硬盘上的 Windows Boot Manager(Mac 上则为 EFI Boot)并回车确定开始引导。接下来便是熟悉的 Windows 初始化以及各种首选项配置的界面。完成后我们进入 Windows 桌面环境。

安装 Windows 到移动硬盘或 U 盘,UEFI 引导 ± VHD(X),Mac 适用

这里我们可以看到“计算机”里共列出了三个分区,分别是系统分区(即虚拟硬盘上的惟一 NTFS 分区),放置虚拟硬盘 VHD(X) 文件的分区,以及闲置分区。

第五部分:安装驱动程序

安装驱动程序这一步较为简单,笔者不再纂述。

Mac 上直接启动预先复制好的 Boot Camp 安装程序,按照常规的安装方法一步一步进行安装。

结束后重新启动 Windows。如果在 PC 的 BIOS 设置里没有将移动硬盘的引导项设置为首选,则需要在每次启动 PC 时激活引导项选择菜单来引导启动移动硬盘上的系统。如果是 Mac,则每次都要按住 Option 键来开机。

安装 Windows 到移动硬盘或 U 盘,UEFI 引导 ± VHD(X),Mac 适用

如果是在 Mac 上运行,安装 Boot Camp 完成后我们可以在“设备管理器”中清楚看到各项硬件的运行状态。

安装 Windows 到移动硬盘或 U 盘,UEFI 引导 ± VHD(X),Mac 适用

至此,便携式 Windows 打造完毕!

第六部分:杂项

1. Mac 发热量过大及风扇转速调节

如果是运行在 Mac 上的 Windows,由于 Mac 的硬件与 Mac 的操作系统设计得紧密结合,而 Windows 对 Mac 平台硬件的不兼容,同样的使用环境下运行 Windows 的发热量和功耗比 OS X 要高许多,因此我们通常需要对 Mac 的风扇转速进行人为调节,此处笔者采用的是 Macs Fan Control 软件。(如下图所示)

安装 Windows 到移动硬盘或 U 盘,UEFI 引导 ± VHD(X),Mac 适用

2. Windows 下无法挂载 EFI 分区

关于在 DiskGenius 挂载 EFI 类型的分区盘符失效的问题,笔者给出 DiskPart 工具的解决方法。

在以管理员身份运行的命令提示符中键入 diskpart 并回车进入 DiskPart 工具。

C:\Windows\system32>diskpart

列出所有硬盘

DISKPART> list disk

选中磁盘 1

DISKPART> select disk 1

列出所选磁盘上的所有分区

DISKPART> list partition

选中分区 1

DISKPART> select partition 1

分配盘符 U 给所选分区

DISKPART> assign letter=U

完成。(执行结果如下图所示)

安装 Windows 到移动硬盘或 U 盘,UEFI 引导 ± VHD(X),Mac 适用

3. Windows BCD 引导信息编辑

有读者朋友对 BCD 引导信息感兴趣,可以用 Bootice 工具的 BCD 编辑功能打开指定 BCD 文件查看及编辑。

通常,EFI 分区下的 BCD 文件位于 \EFI\Microsoft\Boot 中,MBR 分区表的硬盘中则在引导分区的 Boot 文件夹中。

想要折腾或有需要的读者可以自行创建、编辑 BCD。Bootice 软件编辑 BCD 文件如下图所示。

安装 Windows 到移动硬盘或 U 盘,UEFI 引导 ± VHD(X),Mac 适用

安装 Windows 到移动硬盘或 U 盘,UEFI 引导 ± VHD(X),Mac 适用

4. MacBook Pro Retina Display(视网膜屏)

Windows 8 / 8.1 天生支持高分屏(视网膜屏),但效果仍有不足。Windows 7 / 8 / 8.1 均可在“控制面板”→“使阅读屏幕上的内容更容易”中统一设置显示比例。

参考文献



《“安装 Windows 到移动硬盘或 U 盘,UEFI 引导 ± VHD(X),Mac 适用”》 有 12 条评论

  • 您好,多谢您的教程。
    我试着在U盘上分区,但是无法成功给每个分区分配盘符,只有ESP分区能得到盘符,其他分区无法得到盘符。所以也无法创建虚拟磁盘。
    请问我该怎么操作?谢谢!

  • 非常清晰的教程分享,等周末有空的时候打算照着这个教程在我西数移动硬盘上装windows8。
    再次感谢你的分享!

  • 请教一下,用虚拟硬盘安装这种方法,对读写速度会不会有很大影响?因为我想如果是把windows直接安装在移动硬盘上的话,速度应该也就和机械硬盘持平吧,如果安装在虚拟硬盘,会不会像额外套了一层,变得更慢呢?如果有具体读写速度的数据就更好了。

    • 因为没有具体的评测数据,我不好断言孰优孰劣。就我个人使用经验而言,两种方式的运行速度的差别可以忽略不计。

      我的使用情况是,顶配 MBP + 西数第八代 Passport,GPT 分区 VHD 安装 Windows 8.1,主要用于 Office 2013、音视频后期和编码压缩,以及多个主流 3D 游戏。卡顿程度同普通机械硬盘 PC,没有额外的感受。

      • 谢谢回复,好惊喜~我想多问一个关于Windows问题。因为15寸的MBP短期内不太可能更新,我想现在入手今年出的13寸MBP到明年换,这样一来因为钱不多而且这台电脑可能只用一年,想省点银子。现在纠结要不要上256G的SSD。

        我想了下,使用Windows主要是为了Office,机率并不高,安装在移动硬盘上就不会把MBP本身的SSD搞得很乱,很干净,我担心的是虚拟内存的速度应该会很慢,其它方面应该性能足够吧?想问问您的看法,或者这种方式会有其它方面影响性能的吗?

        多谢!

        • 如果只是为了 Office,个人建议 Parallels Desktop 最新版 + Windows 7 + Office 2010/2013,同时 pd 虚拟机设置其鼠标键盘模式为【为游戏优化】,这样的使用体验非常棒。我甚至还在这虚拟机里跑 Bluestacks 模拟器,CPU 温度并不高。而且虚拟机支配自由,可以放 SSD 也可以扔移动硬盘。

          1. 低配 13 吋 rMBP 内存有 8G,可以完全关闭 Windows 的虚拟内存;
          2. 低配 13 吋旧款 MBP 内存也有 4G,不跑多余的程序的话,Win7 + Office 2013 也是可以禁用虚拟内存的。
          3. 前文我提到在开机速度和程序运行速度方面,跟普通机械硬盘 PC 差别几乎感受不到,因此同理,就算开启虚拟内存也不应该会造成很强的卡顿。
          4. 如果你是完美主义者,就算不跑 Bootcamp,也请分两个分区,一个 OS,一个 Data。至于为何,等你想重装 OS X 的时候你就会知道了。

  • 楼主,你的教程就是我需求已久的教程! 我按照你的步骤一步一步做了,可是。。。把我的盘放入我的iMAC 进入启动盘选择 EFI 然后回车。。。 它就卡死了。 过很久 如果再摁回车,就进入OS系统了。 十分头疼。
    无耻的求个教导,弄WIN系统前前后后弄了一个月了。。。先谢谢了。
    我的苹果电脑是1年前买的27寸iMAC 移动硬盘是seagate的

  • 直接使用 Windows To Go 制作的移动 Windows 无法进行系统升级(提示无法升级安装在 VHD 上的 Windows ),想升级的话只能重新制作。
    这种办法制作的外置 Windows 可以升级吗?

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注