所以最近我弄到了一个足够好的硬盘,可以很好地运行 Ubuntu,并安装了它。它是东芝 1TB USB 3.0,虽然我不知道型号。
我在东芝硬盘上安装了 Linux。使用“Something Else”安装选项,我给它分配了 2GB(2048mb)的交换存储空间和 128GB(131072mb)的主操作系统空间,安装后,我在 Windows 10 中用剩余存储空间创建了一个分区,用于两个操作系统都可以读取的存储。我的 Windows 10 安装在我的内置 SSD 上,很典型。
所以我的问题如下:我无法在 PC 上安装 Ubuntu,因为它会覆盖默认的 Windows 10 引导程序。这个问题有几个原因。其中之一是,如果不插入 Hand Drive,我无法启动我拥有的任何操作系统。如果我尝试启动,它会说 ubuntu 安装不存在且不可读,并且它会进入 GRUB 恢复模式,而我对此一无所知。
另一个原因是,上次我安装 Ubuntu 时,简直是一场灾难。我在硬盘上为 Ubuntu 分区,然后双启动它。我当时认为 GRUB 引导加载程序是正常的,与安装无关,尽管它有点像 Ubuntu 风格,但我还是保留了它。然后发生了一些事情,我怀疑它与 Windows 更新有关,我突然无法启动它。我不得不买一个硬盘,即使我的一个朋友对 Windows 非常了解(对 Linux 一无所知)。所以我决定不对任何东西进行分区,而是将 Ubuntu 安装到一个单独的硬盘上。然后,我按照上面描述我的问题之前提到的方法做了。这与引导加载程序有关,尽管我仍然不想对我的内部 SSD 进行分区,因为它里面只有 Windows。
所以无论如何,我已经安装了 Windows 更新,禁用了所有自动更新任何内容的 Windows 服务和任务,并且我在更新任何东西时都很小心,即使是我的视频游戏。
在您说我应该使用安装其他 Windows Bootloader 的应用程序之前,我试过了,但结果不是我能接受的。我使用了我知道的唯一应用程序,但它不起作用。我可以安装的唯一引导加载程序是 Windows 7,因为那是最新版本。我对 Windows 7 引导加载程序没有问题,但 Ubuntu 无法启动。当我尝试选择我的东芝作为我的临时启动设备时,它几乎立即返回菜单以选择临时启动设备。
我需要一些方法来摆脱 GRUB 引导加载程序,同时能够启动我的东芝 Ubuntu 硬盘。谢谢,SwagMasterIV
PS:我使用的是ThinkPad T540p笔记本电脑,如果这些信息有用的话。
答案1
安装到外部驱动器的常用方法是将 grub 也放在该驱动器上,并更改 BIOS 中的启动顺序,以便在启动内部硬盘之前启动 (USB) 驱动器。这样,就不需要将任何内容写入内部硬盘,并且没有外部驱动器,内部 (Windows) 启动就会发生。旧版只允许一个引导加载程序,它从主引导块启动,是的,在一个磁盘上,Windows 引导加载程序将被覆盖。但在双磁盘系统上,如果您将引导加载程序的位置指定为外部磁盘,则不会发生这种情况(但您可能已使用指向内部磁盘的位置运行安装程序)。由于您可以运行 Ubuntu,请立即将 grub 安装到外部磁盘(在您用 Windows 引导加载程序替换内部磁盘上的 grub 之前)。
关于如何替换 Windows 引导加载程序,有很多答案——如果您有 Windows 安装介质(而不是供应商恢复垃圾)。如果没有,如果您在内部磁盘上有一个 FAT 分区,则可以在那里安装 grub 文件。您可以创建一个目录“boot”,并将其作为 --boot-directory 提供给 grub-install。您已经表明 grub 可以启动您的 Windows,所以这应该足够了。
较新的机器上的 UEFI(我的 Thinkpad W520 允许在 BIOS 中进行选择,因此我假设您的 T540 也允许)允许多个引导加载程序。太棒了,没有任何东西会被覆盖,但 Ubuntu 安装会忽略引导加载程序位置,只会将 ubuntu 引导加载程序放在内部磁盘的 EFI 分区上,与 Windows 引导加载程序放在一起。哦,好吧,您需要外部磁盘上的 EFI 分区,复制内部磁盘的 EFI 文件,然后由于外部磁盘是“可移动的”,因此有一个默认的引导加载程序被使用并且可能设置不正确,因此只需将 /EFI/ubuntu 中的文件复制到 /EFI/Boot 并将 shimx64.efi 重命名为 bootx64.efi。另一件事可能是内部启动路径的更改,但可以使用 efibootmgr 重置,而且您可能根本不会使用 UEFI。