制作一个 Windows 安装 U 盘是很容易的,使用 UltraISO 这样的刻录工具量产一个 iso 镜像文件到 U 盘即可。然而随着 Windows 10 版本号的提升,镜像变得越来越大,终于 FAT32 文件系统不再能够容纳得下安装镜像文件 install.wim 了。

本文将介绍如何制作镜像文件大于 4GB 的 UEFI 启动的系统安装盘。


 

充分利用 Windows 8 和 Windows 10 中的特性——“快速启动”,我们必须使用 UEFI 模式启动操作系统;这就要求我们制作的 U 盘安装盘必须以 UEFI 模式启动;这就要求 U 盘文件系统必须是 FAT32 的;这就要求我们的系统镜像文件 install.wim 不大于 4GB。然而 Windows 10 1709 的镜像文件就是大于 4GB,于是悲剧诞生……

如果你熟悉如何制作 U 盘安装盘,那么可直接从第二步开始阅读;如果不了解,就直接开始吧!

第一步:下载 Windows 10 iso 镜像文件

微软一般不提供 Windows 10 的下载镜像,但 MSDN I Tell You 收集了几乎所有的 Windows 10 正式版本镜像文件,所以可以 前往 MSDN I Tell You 下载。

第二步:使用镜像文件制作安装 U 盘

曾经我一直使用 UltraISO 来制作启动 U 盘,毕竟是老牌刻录软件。

无论刻录的时候选择了什么样的配置,刻录完之后 U 盘文件系统都会是 FAT32 格式。直到 Windows 10 的前一两个版本,install.wim 都没有超过 4GB,所以我一直以为微软会刻意避免让镜像文件超过 4GB;于是我依然使用它来制作安装盘。然而没有想到的是,当真的超过了 4GB 后,整个刻录过程居然没有报错(虽然事实上证明会安装失败)。

可能因为 UltraISO 太老了,以至于都没有看到对大尺寸镜像文件的支持。于是,我招到了另一款——rufus:

推荐使用开源软件 rufus

官方对它的广告词是:

The Reliable USB Formatting Utility
靠谱的 U 盘格式化工具

启动后就只有一个设置界面:

对我们至关重要的选项就是分区方案和目标系统类型(Partition scheme and target system type):

这意味着我们量产后的 U 盘将支持 UEFI 启动,同时支持 GPT 分区。这样,我们便能够以 UEFI 的方式启动 U 盘。

另一个选项是文件系统(File system):

由于 Windows 10 的系统镜像大于 4GB,所以我们需要选择 NTFS(exFAT 也行,但此文件系统不太成熟)。

其他保持默认即可,或者按照我图中所选。记得点击此处选择要使用的镜像 iso 文件。

点击“开始”后静待进度条结束,我们便得到了一个可以 UEFI 启动的 Windows 安装 U 盘。

观察 rufus 制作的 U 盘

这不是安装过程中必要的步骤,只是为了满足好奇心。

可以看到,rufus 实际做了这些事情:

  1. 将 U 盘所有内容清除,并转换成 GPT 格式(更多转换信息可阅读我的另一篇博客)。
  2. 将 U 盘分成两个区,一个 FAT,包含用于在 EFI 下加载 NTFS 文件系统所必须的组件;一个 NTFS,包含安装 Windows 所需的真正文件(4GB 的镜像不在话下)。

第三步:重启电脑并选择 UEFI U 盘启动

在 Windows 系统中

按住 Shift,然后点击“重启”按钮,Windows 10 将会在重启后进入 RE 环境:

在 RE 环境中选择使用可移动存储设备启动即可使用 U 盘启动。

使用更传统的方案

当然,大部分主板都支持开机期间按下 F12 来临时选择启动设备。不过,如果在主板上开启了“快速启动”,那么很有可能根本就来不及按下 F12!这时可以采用上面的方案。

选择带 UEFI 前缀的 U 盘。

不管使用哪一种方案,启动后将看到此时启动的 U 盘会提示正在加载 NTFS EFI loader:

第四步:选择 GPT 分区的驱动器,并按套路安装 Windows

在安装界面中,我们需要确保选择的驱动器是 GPT 分区的,因为 UEFI 启动时不支持 MBR 分区表。

如果没有驱动器是 GPT 分区的,该怎么办?可以使用命令转换一个 MBR 分区的驱动器到 GPT 分区。参见 在 Windows 安装期间将 MBR 驱动器转换为 GPT 驱动器。

接下来,一路下一步并略加设置即可。


参考资料

解决大于 4GB 的 Windows 10 镜像在 UEFI 模式下的安装问题的更多相关文章

  1. Windows 10操作系统针对不同环境下的安装方法

    一.电脑系统能正常运行 1.解压win10镜像文件 到电脑的非系统分区,运行setup安装文件 2.点击setup应用程序,准备安装 3.准备安装 4.等待安装过程结束,重启即可. 二.光盘安装 1. ...

  2. 如果您想确保Windows 10在新用户登录时不安装内置应用程序,则必须删除所有配置的应用程序。

    原文 如果您想确保Windows 10在新用户登录时不安装内置应用程序,则必须删除所有配置的应用程序. 本文的内容 已安装与配置的应用程序 删除配置的应用程序 安装与配置的应用程序^ 在介绍如何删除所 ...

  3. 20160223 - Windows 10 的文件资源管理器下出现重复文件夹的解决办法

    现象: 安装 OneDrive 从 Windows 7.8.8.1 升级来的 Windows 10 的电脑,可能会出现文件资源管理器左侧面板中出现重复的文件夹. 通常有:视频.图片.文档.下载.音频. ...

  4. 在Windows 10 + Python 3.6.5 中用 pip 安装最新版 TensorFlow v1.8 for GPU

    声明 什么cuDNN之类的安装,应该是毫无难度的,按照官网的教程来即可,除非...像我一样踩了狗屎运.咳咳,这些问题不是本文的关键. 本文的关键是解决pip安装tensorflow gpu版的问题. ...

  5. Windows 10 Creaters Update 画中画模式和窗口高斯模糊

    在Windows 10 Creaters Update中,可以给窗口设置高斯模糊了,只要几行代码! <Grid Loaded="Grid_Loaded"> <Gr ...

  6. 在Windows 10中开启开发者模式

    及以上)的电脑上使用Visual Studio来开发Windows 10或者Windows 8.1的应用,你可能会遇到下面的问题,要求你开启开发者模式. 于是你跑到设置里面,把开发者模式打开: 结果你 ...

  7. [ClickOnce] - Win10 管理员模式下无法安装 ClickOnce 之解决

    Issue Windows 10 管理员模式下,点击 ClickOnce 安装程序无反应. 解决 1. 按 WIN+R 键打开“运行”窗口,输入 “gpedit.msc" 打开组策略.2.  ...

  8. Ubuntu 18.04 on Windows 10 更改 Oh-My-Zsh agnoster 主题下的目录背景色

    题外话 我的 MacBook Pro 已经使用了6年多的时间,尽管作为一个 .NET 程序员绝大部分时间都是在 Windows 下工作,直到 .NET Core 的逐步成熟.要说 Mac OS,最满意 ...

  9. Windows 10在2018四月更新中默认安装了OpenSSH客户端

    客户端安装路径 C:\Windows\System32\OpenSSH 版本:

随机推荐

  1. pycharm社区版创建django项目(Windows 8.1)

    django是Python的一个开源web框架,在pycharm开发环境中,pycharm专业版在新建一个项目的时候有django选项,帮助创建一个django框架的项目.pycharm社区版需要自己 ...

  2. 使用 Python 连接 Caché 数据库

    有不少医院的 HIS 系统用的是 Caché 数据库,比如北京协和医院.四川大学华西医院等.用过 Caché 开发的都知道,Caché 数据库的开发维护同我们常见的关系型数据库有很大差别,如 SQL ...

  3. ubuntu下python安装pandas和numpy等依赖库版本不兼容的问题RuntimeWarning: numpy.dtype size changed

    习惯了linux下用pip install numpy及pip install pandas命令了.折腾了好久了. 上来先在python3中pip3 install numpy装了numpy,然后再p ...

  4. OSI7层网络模型协议精析

    OSI7层网络模型协议精析 一.总结 一句话总结:在7层模型中,每一层都提供一个特殊的网络功能.从网络功能的角度观察:下面4层(物理层.数据链路层.网络层和传输层)主要提供数据传输和交换功能,即以节点 ...

  5. 《Think in Java》(十七)容器深入研究

    阿西吧,这一章好长啊,感觉看了快一个月了吧!JDK 自带的容器框架真是很好很强大啊,这一章看得有点蒙蒙的,接下来还得去看看官方文档啊!

  6. 关于BFS和dijkstra(2019.04.20)

    我的BFS板子 struct node{/*略*/};//表示一个状态 std::map<node,bool>vis;//判断每个状态是否已访问过 std::queue<node&g ...

  7. Hibernate[延迟加载] [三种状态] [脏检查] [缓存机制]

    一.持久化对象的唯一标识 java中按内存地址不同区分同一个类的不同对象,关系数据库用主键区分同一条记录,Hibernate使用OID来建立内存中的对象和数据库中记录的对应关系 什么是OID? 解析: ...

  8. HQL查询中取个别几个字段

    数据表:

  9. poj 1379 Run Away 模拟退火 难度:1

    Run Away Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 6482   Accepted: 1993 Descript ...

  10. CF 916

    题解: 首先看题目 A题看不懂... 花了5分钟才做出来 还wa了 B题 一看好像是堆+位运算? 然后A了样例 C题 wa了好激发 似乎加边加错了 然后看D,似乎是可持久化平衡树? 我又不会... E ...