请不要将此问题移交给超级用户。我的问题与 EFI 分区操作有关,这不是 Windows 固有的。
背景
我遇到了 UEFI 和操作系统版本的问题,我需要一些帮助。这绝不是我的 OEM 的广告,也不是操作系统的偏好,但我使用它们来对问题进行全面的描述。最近,我发现了Xidax,一家游戏系统的 OEM 构建商。除了游戏之外,我还使用他们为 Linux 和操作系统实验构建的系统。我曾经自己建造,但年龄和残疾严重限制了我的手力和耐心,这就是这个问题的开始。
问题
我的系统采用支持 UEFI、SecureBoot 等的 MSI 主板构建(相当新近构建)。我已将现有的 MS Windows UEFI 加载程序替换为rEFInd。这个 EFI 启动管理器允许我启动以下操作系统,所有操作系统都位于不同的驱动器上:
- Windows 11 M2 - 1TB(也是 EFI 分区所在的位置)
- Gentoo Linux
- FreeBSD 12 或 13(我删除了它,因为我已经很久没有接触或更新它了)
删除 #3 后,我现在有一个空驱动器(大小为 8TB),并决定尝试一些我从未做过的事情。我在空的 8TB 上安装了 Windows 11,希望将其“转换”为当前的AtlasOS。Windows 安装程序在我的 M2 驱动器上正确找到了 EFI 分区,并将条目添加到 Windows 加载程序 (WinLoad.efi)。我现在有一个基于winloader
(白色和蓝色屏幕)的启动菜单,其中有 2 个适用于 Widows 11 的选项。
Linux 的并行版本
暂时忘记了这是 Windows,并记住我无法断开第一次安装来欺骗第二次安装在第二个驱动器上构建 EFI 分区(由于残疾),并使用以下场景:
- 将上面的 Word Windows 替换为 Linux 发行版
- 为了这个例子,我将选择 Ubuntu
- 将 Ubuntu
grub
版本 X 副本 1 安装到唯一的 EFI 分区 - 将 Ubuntu
grub
版本 X 副本 2 安装到唯一的 EFI 分区
现在意识到我已经grub
用第二个安装破坏了第一个安装,因为 EFI 分区中只有一个ubuntu
文件夹,我陷入困境,因为我想独立访问两个副本。有关我需要以不同方式实现的修复类型的示例,请参阅In rEFInd, need 2 different OS icon for 2instance of same OS (Ubuntu-MATE)。
为了对 Windows/rEFInd 执行此操作,我从以下内容开始:从第三方启动管理器启动多个 Windows 安装。如果您查看“7 进入 Windows...”步骤,这正是我在修复此问题之前必须执行的操作才能进入任一版本。
在使用在双启动 Windows 10 计算机上安装 rEFInd中的第二个答案之前,我尝试仅使用 1 个 EFI 分区来执行此操作(看看为什么我现在不希望它移动?)。如果可以的话,我不想在我的驱动器上到处都是 EFI 分区。
尝试修复
- 从 Windows 命令提示符发出
mountvol b: /s
.- 那行得通,我第一次安装时就这样做了
rEFInd
,没有访问我的 Gentoo 安装
- 那行得通,我第一次安装时就这样做了
mkdir b:\EFI\Win10
和mkdir b:\EFI\AtlasOS
。- 再次工作,但该死的他们是空的,我肯定不想搞砸我的 EFI 分区。
- 第一的
xcopy /s b:\EFI\Microsoft\Boot b:\EFI\win10
- 好吧,拍摄失败了
Sharing Violation
。什么?!?!等等,我不是以管理员身份运行提示吗,并且我的帐户不是在管理员组中吗...正在检查...是的哦等等,微软认为我很愚蠢,因为想要在我的计算机上手动更改 EFI自己的。但是等等,我可以在我的 Gentoo 安装中编辑它:
- 好吧,拍摄失败了
- 重新启动进入 Gentoo
- 已安装
boot
- 打开是
gparted
因为我记不住/dev
EFI 分区的名称 Mount
将 EFI 分区编辑为/boot/efi
Cd
编为/boot/efi/EFI/Microsoft/Boot
- 已发布
cp -xa . /boot/EFI/Win10
且与 AtlasOS 相同 - 重新安装,
grub
因为我必须直接从rEFInd
.
现在我终于到了更改 BCD 的步骤,回到 Windows。那个时候已经是昨晚12点30分了,我需要睡觉,所以我决定来这里寻求建议/帮助。
问题
正如我所说,我宁愿有 1 个 EFI 分区,所以我想通过询问以下问题来稍微修改该修复:
/boot/efi/EFI/{Win10,AltlasOS}
为了顺利启动, 需要具备哪些准系统要素?cp -xa
事实上确实复制了,但是当我重新启动以在 BCD 上启动时,我注意到菜单xcopy
上列出了各种文件等。rEFInd
当可能有数百个时,我不想将它们全部隐藏。
- 有没有比我选择的方法更简单的方法来拆分条目?
- 以后如何对待EFI分区的更新,即如果Windows Update决定将更新推送到EFI/BCD,是否需要阅读手动添加?
我提供我在这里使用的方法,以避免我给可能经过此页面的其他读者带来的麻烦。
我选择的解决方案
经过近两周(包括周末)的努力,发现:
以及其后的注释:
我决定使用Sachithm 的答案中概述的方法的变体,尽管这不是我的初衷。遗憾的是他没有更多的答案,因为这个答案是彻底且易于理解的。我将按顺序列出我的方法以及随后的注意事项部分。
shrink
. 这只是我个人的观点:我从来不信任基于 Microsoft 的工具来管理分区操作,而不会以某种方式破坏分区本身内的数据。注意事项
我将把这些问题列为问题,然后是原因: