具有自动隐藏分区的双启动,因此它们在每个操作系统上都显示为 C:

具有自动隐藏分区的双启动,因此它们在每个操作系统上都显示为 C:

我的想法是设置 Windows 7 和 XP 的双启动,并且我希望每个操作系统的系统驱动器都是 C:。另一方面,我希望每个操作系统都看不到其他分区。

Windows 7 是主要的操作系统,XP 用于旧版软件(我没有足够的 RAM 来安装 VM)。

有没有简单的方法可以做到这一点?

答案1

是的,有办法。可能:是的。简单:可能。

首先让我们澄清一些术语。你所说的是引导体积。 那是微软术语,我将在整个回答中使用它,以免您在阅读从这个答案超链接的使用相同术语的文章时感到困惑。您希望每个操作系统都有自己的引导体积。

幸运的是,这实际上是 Windows 7 安装程序的标准操作程序。这甚至是 Windows 7 安装程序的标准操作程序,但要考虑我稍后将概述的注意事项,即为 Windows 7 启动驱动器指定驱动器号“C”。因此,您想要的大部分就会发生

你还需要的是,这是非常重要的,可能是整个过程中最复杂的部分,是一个系统卷。这对于双启动是必需的。如果你想双启动,你几乎必须使用微软的启动管理器作为主启动管理器。尝试让 Windows XPNTLDR启动 Windows 7 太痛苦了。而让微软的启动管理器启动 Windows XP 相当容易。如果你必须使用微软的启动管理器,那么你必须有一个单独的单身的,系统分区。这是 Microsoft 的启动管理器所在的位置。

总体来说,该流程如下:

  1. 从空白磁盘开始。创建一个 200MiB 的 NTFS 主分区。 这最终会成为你的系统卷,其中包含 Microsoft 的启动管理器。
  2. 创建第二个 NTFS 主分区。使其成为“活动”分区,然后将 Windows XP 安装到其中。 将其设为“活动”主分区将防止 Windows XP 认为需要修改系统卷而导致的任何问题。目前还不应该将任何东西放入系统卷中。现在您有了 Windows XP 启动卷。不幸的是,目前它也是一个组合的启动+系统卷。
  3. 将系统卷设为“活动”分区。创建第三个 NTFS 分区。通过从 CD 介质启动,将 Windows 7 安装到第三个分区中。 微软对该过程提供了相当肤浅的概述。 不要在 Windows XP 中安装 Windows 7,这一点很重要。 如果您这样做,Windows 7 将会知道 Windows XP 驱动器号,并且您将不会在 Windows 7 中获得驱动器“C”作为启动卷。 同样重要的是,Windows 7 可以识别系统卷及其活动标志,以便将 Microsoft Boot Manager 放在那里。 Windows 7 启动分区(创建的第三个分区)是辅助分区还是主分区并不重要。事实上,从某些方面来说,它是辅助分区更好。只有您的系统卷在此过程结束时才需要成为主分区。您的 Windows XP 分区只是一个主分区,因此很容易将其安装到空白光盘上。
  4. 将 Windows XP 引导加载程序文件移入您的系统卷。 需要将文件ntldrboot.inintdetect.com从 Windows XP 分区的根目录复制到系统卷的根目录中。
  5. 告诉系统卷中的 Microsoft Boot Manager 有关 Windows XP 操作系统加载器的信息,并将其添加到其菜单中。 M. McTavish 提供执行此操作的命令:
    bcdedit /create {ntldr} /d “Windows XP” 
    bcdedit /set {ntldr} 设备分区=\Device\HarddiskVolume1
    bcdedit /set {ntldr} 路径 \ntldr
    bcdedit /displayorder {ntldr} /addlast
  6. 告诉 Windows XP 和 Windows 7 不要为彼此的启动卷分配驱动器号。 这是使用磁盘管理工具或命令remove letterdiskpart,在启动到每个操作系统时。

这个过程可能会被破坏。一种破坏方式是 Windows 7 将 Windows XP 分区视为系统卷。幸运的是,微软有一个漫长的逐步程序来摆脱这一困境最后,就像这里一样,Microsoft Boot Manager 和 Windows XP 加载器位于单个单独的共享系统分区中,其中 Windows XP 和 Windows 7 各自都有自己的启动分区。

另一种导致在安装 Windows 7 后重新启动时出现错误消息的情况是,系统分区上最终出现了 Windows NT 5.x NTFS VBR,而不是 Windows NT 6.1 NTFS VBR,后者应该存在,以便调用 Microsoft 的启动管理器,而 Windows 7 安装会将 VBR 放在那里。Microsoft 有一个分步程序,涵盖了一些相同的内容正如 M. McTavish 所做的那样, 为了摆脱困境, 也。

答案2

我使用本教程和 Master Booter(共享软件,但 3 个操作系统免费)完成了此操作:

http://www.megalab.it/4115/dual-boot-installare-windows-xp-vista-e-windows-7-sullo-stesso-pc-nel-modo-corretto

现在我让 Win XP 和 Win 7 交替运行,互不相见,而且我有一个由所有具有相同字母的操作系统共享的逻辑分区。

它是用意大利语写的,但非常清楚。

答案3

我知道现在已经是 2017 年了,可能很多人都不会这么做,但我有一个客户要求我做一台双启动电脑,里面装的是 XP 和 Win 7。我们考虑过 VM,但他更喜欢双启动系统。这台电脑有一个 SSD,出于性能和 TRIM 的原因,我们希望它处于 AHCI 模式。

由于计算机没有软盘驱动器,我不得不使用 nLite 为 SATA/AHCI 模式添加文本模式驱动程序。这比我记得的 13 年前快得多。:)

现在我必须进行双重启动。关于如何进行双重启动的文章有很多,而且都运行良好。

我有一个 32GB SSD 的 Clonezilla 映像,我将 Win 7 安装在其中。我启动了 Clonezilla 拇指驱动器,恢复了驱动器映像,启动了 Win 7,进入磁盘管理并将 C:\ 分区扩展到 SSD 的所有空间,除了最后 80GB。到目前为止一切顺利。

然后我安装了 Win XP,挑战就从那时开始了。XP 安装程序看到了 100MB 的小分区和用于安装 Win 7 的较大分区,并分别将它们分配到 C:\ 和 D:\。安装 XP 后,它会安装到不同的驱动器号上。就我个人而言,这不是什么大问题,但我的客户可能不够精明,在我把这个给他后,他不会更改他要安装的每个程序的安装路径。我真的想要一个解决方案,让每个操作系统都能看到自己的 C:\,而不是其他操作系统的。

寻找解决方案的过程让我来到了这里,Velcro 让我找到了 GAG Bootloader。这彻底解决了我的问题。

我必须进入 Win 7,删除安装有 XP 的分区,然后创建一个新的主分区。

然后,我将计算机启动到我从提供的 ISO 刻录的 GAG CD。然后我可以添加一个新条目。我看到了三个分区,并选择了列表中的第一个分区,将其标记为“Win 7”,然后添加了另一个条目,选择了最后一个分区,将其标记为“Win XP”。然后我返回主菜单并选择隐藏主分区的选项,然后将其保存到驱动器中。

我现在可以打开计算机,进入 GAG 的菜单,选择任一操作系统选项并启动,计算机只能看到 C:\ 驱动器而看不到其他操作系统的分区。

谢谢您的帮助,我希望这可以帮助其他人避免几个小时的挑战。

答案4

对于每个尝试此操作的人来说,只需获得 2 个驱动器就可以变得更容易。

然后只需拔掉 1 个,在另一个上安装 Windows,然后拔掉它。插入另一个并安装所需的第二个版本的 Windows。

使用 bcdedit 工具使它们在启动时成为选项,或者在需要时简单地通过 BIOS 启动覆盖启动辅助系统。

然后,在 Vista 的情况下,您需要做的就是进入计算机管理器/驱动器管理器并删除您找到的 100 到 500 MB 分区的驱动器号,以隐藏辅助 Windows 版本的 Windows 系统驱动器。

我刚刚对 Windows 7 和 Windows 10 10 执行了此操作,但坚持使用 BIOS 启动覆盖。

相关内容