![如何使用 Ubuntu 创建 Windows 可启动 USB 记忆棒?](https://linux22.com/image/1531539/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%20Ubuntu%20%E5%88%9B%E5%BB%BA%20Windows%20%E5%8F%AF%E5%90%AF%E5%8A%A8%20USB%20%E8%AE%B0%E5%BF%86%E6%A3%92%EF%BC%9F.png)
我已经擦除了整个硬盘并且正在尝试安装 Ubuntu 和 Windows 的双启动。
- 首先,我使用 Ubuntu .iso 文件制作了一个可启动的 USB 驱动器。我在 BIOS 中正确设置了启动顺序。重新启动计算机后,我正确地看到了 Ubuntu 的设置步骤。我成功安装了 Ubuntu。
- 在第二步中,我使用 Windows 7 .iso 文件制作了另一个可启动 USB 驱动器。我正确设置了启动顺序。当我重新启动计算机时,我什么也看不到,但缺少操作系统.然后Ubuntu开始启动并加载。
有人能帮我解决这个安装 Windows 的问题吗?
答案1
尽管您尚未安装 Windows 7,但您也可以使用 USB 闪存驱动器从 Ubuntu 创建可启动的 USB 闪存驱动器以安装 Windows 7。WoeUSB 是一种用于创建用于安装 Windows 的可启动 USB 闪存驱动器的工具。Windows 7 及更高版本的映像支持原生 UEFI 启动。WoeUSB 是 WinUSB 项目的更新分支。
一些第三方安装程序具有/sources/install.wim
大于 4GB 的 Windows 安装映像 (),因此无法将 FAT32 作为目标文件系统。WoeUSB 3.0.0 及更高版本已添加 NTFS 文件系统支持。
安装
要在 Ubuntu 14.04/16.04/17.10-20.04 中安装 WoeUSB(GUI+CLI):
sudo add-apt-repository ppa:nilarimogard/webupd8
sudo apt update
sudo apt install woeusb
这将安装 WoeUSB 图形界面和 WoeUSB 命令行工具。WoeUSB 支持 FAT32/NTFS/ExFAT USB 闪存驱动器的 UEFI 和 BIOS。
要在所有当前支持的 Ubuntu 版本中安装 WoeUSB 命令行工具 snap 包,请打开终端并输入:
sudo snap install --edge woe-usb
sudo snap connect woe-usb:removable-media
要启动 woe-usb snap 包命令行工具,请运行以下命令:
/snap/bin/woe-usb.woeusb
如果出现permission denied
错误,请点击权限按钮悲哀的USBUbuntu 软件中的屏幕,将权限选项从关闭切换到打开,如下面的屏幕截图所示。
WoeUSB GUI 比 WoeUSB 命令行工具更易于使用。单击其左侧的单选按钮来自磁盘映像 (iso),浏览到 Windows .iso 文件的位置,在目标设备选择一个 USB 闪存驱动器,打开“磁盘”应用程序并检查“磁盘”中的设备名称是否与 WoeUSB 中的目标设备匹配(应该是 /dev/sdX在哪里X是字母表中的字母),然后单击安装按钮进行安装,在 USB 闪存驱动器上创建可启动的 Windows 安装媒体。
答案2
如果使用 rufus:
- 确保分区方案是 MBR(用于 BIOS 或 UEFI)
- NTFS 文件系统
如下图所示
- 创建 Windows (7) 可启动磁盘的更好方法是使用微软 -Windows USB/DVD 下载工具
或者直接从 codeplex 中获取:Windows USB/DVD 下载工具
第二种选择没有麻烦,因为设置很简单,不需要像 rufus 那样进行额外的配置。
答案3
根据onetransistor.blogspot.co.uk
在开始之前,让我们先提一下,有两种类型的启动方法。一种是 MBR 代码类型,其中可启动的可执行文件存储在存储设备开头的保留部分中。还有一种是 EFI 类型,其中引导加载程序可执行文件存储在 FAT32 文件系统中的标准路径中。
您必须提前决定要使用什么。每种引导类型都有一些变量。如果您不知道使用什么,最常见的适用于未修改的 Windows 源的设置是
msdos
使用文件系统的分区表fat32
并使用boot
。这样,您将获得 MBR 和 UEFI 可启动驱动器。
- 格式化 USB 驱动器
插入您的 USB 闪存驱动器并启动 GParted。选择 USB 驱动器并卸载它。您必须通过转到设备菜单然后选择创建分区表来重新创建分区表。选择
msdos
(或者gpt
如果您想要仅 UEFI 可启动驱动器)并单击应用。右键单击未分配的空间并选择新建。创建主 NTFS 或 FAT32 分区并为其添加标签。标签必须尽可能奇怪,因为引导加载程序将识别可启动分区。如果您有
install.wim
大于 4 GB 的空间,那么您绝对应该选择 NTFS。从编辑菜单中应用所有待处理操作 - 应用所有操作。右键单击分区并选择管理标志。如果您选择分区
msdos
表,请勾选boot
。如果您选择gpt
分区表,msftdata
应该已经选中。
- 复制 Windows 文件
退出 GParted 并使用文件管理器将所有文件从 Windows ISO 复制到 USB 棒。使用“打开方式 - 磁盘映像装载器”装载 ISO。复制过程完成后,在 USB 根文件夹中查找启动目录。如果是大写,请将其重命名为小写。
- 使其可启动
如果您使用 NTFS 文件系统和 MSDOS 表,则只能使用方法 A。如果您使用 FAT32 和 MSDOS 表,则可以应用方法 A、B 或两者。如果您使用 GPT 分区表,则只能遵循方法 B。
- A. MBR 可启动
将使用 GRUB 来实现这一点。打开终端并运行:
sudo grub-install --target=i386-pc --boot-directory="/media/<username>/<drive_label>/boot" /dev/sdX
代替:
/media/<username>/<drive_label>
以及 USB 驱动器的安装路径/dev/sdX
使用 USB 驱动器,而不是分区(例如/dev/sdb
)现在,创建一个文本文件并在其中写入以下内容:
default=1 timeout=15 color_normal=light-cyan/dark-gray menu_color_normal=black/light-cyan menu_color_highlight=white/black menuentry "Start Windows Installation" { insmod ntfs insmod search_label search --no-floppy --set=root --label <USB_drive_label> --hint hd0,msdos1 ntldr /bootmgr boot } menuentry "Boot from the first hard drive" { insmod ntfs insmod chain insmod part_msdos insmod part_gpt set root=(hd1) chainloader +1 boot }
将
<USB_drive_label>
其替换为您格式化驱动器时为其指定的标签(如果标签中包含空格,则可以将其放在引号之间,尽管不建议在驱动器标签中使用空格)。将文件另存为 grub.cfg,并将其放在 USB 驱动器的 boot/grub 文件夹中。就是这样。USB 驱动器现在可以从 BIOS 启动,并可用于在您的 PC 上安装 Windows。第一次从 MBR BIOS 或 CSM 模式启动时,请选择Start Windows Installation
。
- B. UEFI 可启动
并非所有 Windows 版本都受支持。64 位 Windows 7、Windows 8 及更新版本应该可以运行。
复制过程完成后,在 USB 根文件夹中查找 efi/boot 目录。如果那里有 bootx64.efi 或 bootia32.efi 文件,则大功告成。您可以在 UEFI 模式下从 USB 启动。
如果您要为其制作可启动 USB 的操作系统是 Windows 7,请浏览 efi/microsoft 文件夹,并将整个启动文件夹从此路径复制到 efi 文件夹中的上一级。如果启动已存在,则合并文件夹。
如果 efi/boot 文件夹中没有 bootx64.efi 文件,请执行以下操作。将已安装的 Windows ISO 映像浏览到源文件夹中。使用存档管理器打开 install.wim(或 install.esd)(您需要安装 7z)。转到路径 ./1/Windows/Boot/EFI 并将文件 bootmgfw.efi 提取到您想要的任何位置。将其重命名为 bootx64.efi 并将其放在 USB 驱动器的 efi/boot 文件夹中。如果您在 install.wim 中找不到 bootmgfw.efi,则您可能拥有 32 位 Windows ISO 或其他类型的映像(恢复磁盘、升级版本)。
您现在可以以 UEFI 模式从 USB 启动。
我引用原网站为了可靠性,但该网站的风格和细节要好得多,所以除非你被迫不这样做,否则请使用它。