在便携式办公流行、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 均可在“控制面板”→“使阅读屏幕上的内容更容易”中统一设置显示比例。

参考文献