Win 10 和 Win 7,独立驱动器,uefi;从 USB 启动

Win 10 和 Win 7,独立驱动器,uefi;从 USB 启动

我是一名新手用户。我曾为 eufi、gpt、grub 等问题而苦恼。

我想在我的盒子中移除/添加驱动器,并且当带有 WinBootLoader 的驱动器已被移除或现在是驱动器 2 时,不要搞砸事情。

驱动器 1 = Windows 10 3TB。uefi/gpt 大约 6 个分区(当前未启动)驱动器 2 = Windows 7 3TB。uefi/gpt 大约 5 个分区驱动器 3 = Linux(未来计划)60 GB。

我想从 USB 驱动器链式加载到任何硬盘驱动器的操作系统。我还想能够使用其他驱动器的内容。写入 USB 驱动器的第一个块,而不是让引导加载程序写入 HDD 的第一个块,然后搞砸一切。

也许我的研究已经过时了,但这似乎很难。特别是因为我想从 USB 启动到 Windows(而不是 Linux),而且因为 3TB 驱动器是 UEFI(因为它们的大小)。

最后,我想移除除 1 个驱动器之外的所有驱动器,并移除 USB,在 BIOS 中进行适当的更改,然后启动它。我该怎么做?

如果可行,我希望可以挽救一个故障的 mbr 驱动器 - 在同样的方案下可行吗?很确定 USB 必须是 uefi。

答案1

实现目标的最简单方法可能是在 USB 闪存驱动器上放置一个启动管理器,并将其配置为启动 Windows 安装。我自己的重新索引可以很容易地做到这一点,因为它会扫描所有可读卷并根据每次启动构建启动菜单。事实上,rEFInd 下载页面无需修改即可完成此任务。其他启动管理器也可以配置为执行此操作,尽管大多数启动管理器依赖于静态配置文件,您需要手动维护这些配置文件。

另一种方法是将 Windows 7 安装在驱动器 #1 上,将其 Windows 引导加载程序文件 ( EFI/Microsoft/Boot/bootmgfw.efi) 复制到备用文件名 ( EFI/BOOT/bootx64.efi),拔下驱动器,将 Windows 10 安装在驱动器 #2 上,然后将其引导加载程序文件复制到备用文件名。(这些文件操作在EFI 系统分区 (ESP)。) 但是,当您将 Linux 添加到组合中时,事情会变得更加复杂;您需要使用 rEFInd 或将 GRUB 移至后备文件名,并确保 GRUB 配置文件包含两个 Windows 安装的条目。此方法不涉及 USB 驱动器(除非您将 ESP 或 Linux/boot分区放在 USB 驱动器上)。保持此方法有效需要特别注意,因为大多数发行版在内核或 GRUB 更新时都会更新其 GRUB 配置文件,如果在发生这种情况时拔下磁盘,则安装在其上的任何操作系统都将从更新的 GRUB 菜单中被删除。

退一步说,拔掉磁盘以确保 OS A 不会损坏 OS B(安装在不同的磁盘上)的老办法在 EFI 下比在 BIOS 下更难,因为 EFI 将启动路径存储在 NVRAM 中,并且当检测到启动路径不再有效时可能会删除它。因此,驱动器交换会产生在 BIOS 下不存在的新问题。rEFInd-on-USB 方法通过使用替换启动管理器(我专注于 rEFInd,尽管其他启动管理器也可以工作)来绕过这个问题,该管理器在每次启动时都会扫描启动加载程序,而不是依赖内置的 NVRAM 条目。在这种情况下,rEFInd 安装在 USB 驱动器上的后备文件名中,这是启动可移动介质的正常方式。我的第二种方法是通过使用普通硬盘上的后备文件名来绕过这个问题——但正如我所指出的,GRUB 有一个类似的问题,因此必须小心更新软件包。本段的重点是您可能需要重新考虑您的方法。通过物理插入和拔出电缆将操作系统彼此隔离有其好处,但也会产生问题,尤其是在 EFI 下。

答案2

您说:“我想在我的盒子里移除/添加驱动器,而不会弄乱一切”。

可以这样解决:在仅连接驱动器的情况下安装每个操作系统(或启动修复)确保每个驱动器都可以独立启动,无需任何其他东西(如棒等)。您只需从启动 UEFI/BIOS 热键进行启动选择即可。

很难理解你最终想要用 USB 做什么。你不需要这么做。在 USB 上为所有东西制作一个引导加载程序并用它来选择引导驱动器是不必要的。

相关内容