UEFI 分区为 NTFS 时,如何使用 Windows 10 安装 Ubuntu 双引导?

jri*_*oot 5 partitioning dual-boot ntfs uefi system-installation

我最近收到了一台安装了 OEM Windows 10 的机器。但是我不能在上面安装 Ubuntu,因为 UEFI 分区是 NTFS 格式。而不是像UEFI 规范规定的 vfat/fat32 。那里甚至没有提到 NTFS。但一如既往:微软比任何国际标准都要大,所以其他人需要适应。

我尝试了不同的方法来重新创建 UEFI 分区,但如果不删除 Windows 安装,我就无法让它工作。我正在考虑重新安装 Windows 10 并尝试以 FAT 格式强制使用 UEFI。

但是我能够说服客户/用户不要本地使用 Windows,因为他只需要它来管理 Windows 服务器并模拟 Windows 用户/客户的问题。Remmina 将用于连接到 Windows 服务器,虚拟机将用于模拟 Windows 软件问题。

我仍然认为收集 NTFS UEFI 分区双引导的解决方法/修复程序是个好主意。因为我担心我不会是唯一面临这个问题的人。

sda*_*aau 1

编辑:事实证明,下面的内容是某种“误报”;稍后,我意识到托管此 NTFS“EFI”分区的磁盘格式为 MBR,而不是 GPT;它也没有 EFI 文件夹,也没有典型的预期 Windows EFI 文件EFI/Microsoft/Boot/bootmgfw.efi. 我想,这个分区上“esp”标志的存在让我感到困惑。

\n

最后,我最终这样做了:

\n
    \n
  • 首先在 EFI 启动 USB 的备用分区上安装 Ubuntu,并忽略在 NTFS 上安装 grub 的失败
  • \n
  • 我希望我可以在 NTFS 分区上手动刷新 GRUB2,但 grub2 2.04 明确检查 FAT,所以暂时不可能:
  • \n
\n
if (!efidir_is_mac && grub_strcmp (fs->name, "fat") != 0)\n  grub_util_error (_("%s doesn\'t look like an EFI partition"), efidir);\n
Run Code Online (Sandbox Code Playgroud)\n
    \n
  • 然后我尝试了评论中的推荐:
  • \n
\n
\n

要更改关闭 ntfs EFI 分区,只需将文件复制下来,更改分区类型并重新格式化为 FAT,然后将文件复制回来

\n
\n

此时这仍然对双引导没有帮助,但是,既然我有一个 FAT32 分区,我可以从以 EFI 模式启动的棒重新安装 Ubuntu,同时在此分区上刷新 GRUB2。

\n
    \n
  • 现在 Ubuntu 确实启动了,但os-prober根本没有检测到 Windows;boot-repair没有更正任何内容,但它提到它看到了“旧版窗口”
  • \n
  • 最后,从 Ubuntu 安装中,我在分区上重新安装了 grub2,但带有--target=i386-pc; 并从 BIOS 强制仅传统启动
  • \n
  • 现在重新启动到 Ubuntu,boot-repair删除所有与 grub EFI 相关的软件包 - 最后,os-prober可以看到 Windows 分区;但它添加的条目(带有chainload)无法启动到 Windows,声称磁盘不可启动(事实并非如此,因为 Windows 安装在分区 2 上,该分区未标记为可启动)
  • \n
  • 最后,根据当 grub 安装在 Windows 分区中时如何启动到 Windows 7 中的建议?- 我手动添加了一个使用的 Windows 10 条目ntldr ($root)/bootmgr- 最后我有了双启动!
  • \n
\n

也就是说,第一个 NTFS 分区是可引导的(并标记为 esp),很可能不是真正的 EFI 分区,也许它以某种方式促进了恢复或其他什么;(我猜)事实证明,我只能通过强制传统启动来实现 Windows 的双重启动。

\n
\n

不是答案,只是想对此做出回应:

\n
\n

我想在该系统上使用据称为 NTFS ESP 的系统上查看 sudo parted -l 和 sudo blkid 的输出。我以前曾多次看到过这样的说法,但没有证据。...

\n

不过,请先提供parted -l 和 blkid 输出;这可以提供重要信息。

\n
\n

是的,刚刚得到了这样的系统,翻新的 ThinkPad。

\n

我在这台笔记本电脑上的 USB 拇指驱动器上启动了 Slax(在传统模式下),它提供了此信息(请注意,除了磁盘上已经存在的内容之外,我还进行了一些手动分区;我已经还删除了有关其他驱动器的信息):

\n
root@slax:~# parted -l\nModel: ATA KINGSTON SUV400S (scsi)\nDisk /dev/sda: 120GB\nSector size (logical/physical): 512B/4096B\nPartition Table: msdos\nDisk Flags:\n\nNumber  Start   End     Size    Type      File system     Flags\n 1      1049kB  368MB   367MB   primary   ntfs            boot, esp\n 2      368MB   54.1GB  53.7GB  primary   ntfs\n 4      54.1GB  118GB   64.4GB  extended\n 5      54.1GB  75.5GB  21.5GB  logical   ext4\n 6      75.5GB  108GB   32.2GB  logical   ntfs\n 7      108GB   118GB   10.7GB  logical   linux-swap(v1)\n 3      118GB   120GB   1611MB  primary   ntfs            diag\n
Run Code Online (Sandbox Code Playgroud)\n

因此,分区 1 既标记为 ntfs,又标记为 boot & esp。

\n
root@slax:~# blkid\n/dev/zram0: TYPE="swap"\n...\n/dev/sda1: LABEL="System" UUID="64C89227C891F78E" TYPE="ntfs" PARTUUID="5e4a12da-01"\n/dev/sda2: LABEL="Windows" UUID="EE3E98553E9818A3" TYPE="ntfs" PARTUUID="5e4a12da-02"\n/dev/sda3: LABEL="Recovery" UUID="28DE98A6DE986E36" TYPE="ntfs" PARTUUID="5e4a12da-03"\n/dev/sda5: UUID="80bbb011-a20f-489f-99dc-bbcc9422f7f4" TYPE="ext4" PARTUUID="5e4a12da-05"\n/dev/sda6: LABEL="XXXXXX" UUID="3BBF7C062DC0E351" TYPE="ntfs" PARTUUID="5e4a12da-06"\n/dev/sda7: UUID="abf91577-e9e8-4cd5-9e3f-48393f6c084c" TYPE="swap" PARTUUID="5e4a12da-07"\n/dev/sdb1: UUID="D4D5-9DAC" TYPE="vfat" PARTUUID="000568d1-01"\n
Run Code Online (Sandbox Code Playgroud)\n

我想在这台机器上安装 Ubuntu 双引导和 Windows,因此我从 USB 拇指驱动器(在 EFI 模式下)启动了 mini.iso,它运行文本安装程序;最初它显示了这种分区状态:

\n

文本安装零件-01

\n

然后,我尝试将分区 1 设置为“用作”EFI 系统分区,结果显示以下状态:

\n

文本安装零件-02

\n

...但是,文本安装程序不会有任何这些 - 并且失败,并显示“尝试在 SCSI2 (0,0,0),分区#1 (sdb) at /boot/efi 中安装类型为 vfat 的文件系统”失败的。”:

\n

文本安装零件-03

\n

所以,是的 - 文本安装程序似乎确实假设 EFI 分区始终是 vfat,在本例中它是 NTFS,那里的过程失败了......

\n

所以我真的不知道我能做什么,在这个系统上安装 Ubuntu 和 Windows 的双启动配置 - 而不更改 EFI 分区......

\n
\n

编辑:这里大约是第一个 NTFS 分区上存在的文件,安装在/mnt此处(我已经删除了一些明显的翻译和字体文件以使其更易于阅读) - 请注意,任何地方都没有 EFI 文件夹:

\n
$ tree /mnt/\n\n/mnt/\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 Boot\n\xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 BCD\n\xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 BCD.LOG\n\xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 BCD.LOG1\n\xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 BCD.LOG2\n\xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 bg-BG\n\xe2\x94\x82   \xe2\x94\x82   \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 bootmgr.exe.mui\n\xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 BOOTSTAT.DAT\n\xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 bootuwf.dll\n\xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 bootvhd.dll\n\xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 cs-CZ\n\xe2\x94\x82   \xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 bootmgr.exe.mui\n\xe2\x94\x82   \xe2\x94\x82   \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 memtest.exe.mui\n\xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 da-DK\n\xe2\x94\x82   \xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 bootmgr.exe.mui\n\xe2\x94\x82   \xe2\x94\x82   \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 memtest.exe.mui\n...\n\xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 Fonts\n\xe2\x94\x82   \xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 chs_boot.ttf\n\xe2\x94\x82   \xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 cht_boot.ttf\n...\n\xe2\x94\x82   \xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 segoen_slboot.ttf\n\xe2\x94\x82   \xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 segoe_slboot.ttf\n\xe2\x94\x82   \xe2\x94\x82   \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 wgl4_boot.ttf\n\xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 fr-CA\n\xe2\x94\x82   \xe2\x94\x82   \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 bootmgr.exe.mui\n...\n\xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 memtest.exe\n\xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 nb-NO\n\xe2\x94\x82   \xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 bootmgr.exe.mui\n\xe2\x94\x82   \xe2\x94\x82   \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 memtest.exe.mui\n...\n\xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 Resources\n\xe2\x94\x82   \xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 bootres.dll\n\xe2\x94\x82   \xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 da-DK\n\xe2\x94\x82   \xe2\x94\x82   \xe2\x94\x82   \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 bootres.dll.mui\n...\n\xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 ro-RO\n\xe2\x94\x82   \xe2\x94\x82   \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 bootmgr.exe.mui\n...\n\xe2\x94\x82   \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 zh-TW\n\xe2\x94\x82       \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 bootmgr.exe.mui\n\xe2\x94\x82       \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 memtest.exe.mui\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 bootmgr\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 BOOTNXT\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 gboot\n\xe2\x94\x82   \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 grub\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 grub\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 manboot\n\xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 bcd\n\xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 bootfix.bin\n\xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 boot.sdi\n\xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 efisys.bin\n\xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 efisys_noprompt.bin\n\xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 etfsboot.com\n\xe2\x94\x82   \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 fonts\n\xe2\x94\x82       \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 chs_boot.ttf\n\xe2\x94\x82       \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 cht_boot.ttf\n\xe2\x94\x82       \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 jpn_boot.ttf\n\xe2\x94\x82       \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 kor_boot.ttf\n\xe2\x94\x82       \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 wgl4_boot.ttf\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 System Volume Information\n    \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 tracking.log\n
Run Code Online (Sandbox Code Playgroud)\n