我最近将 60GB SSD 升级为 500GB SSD。我在 SSD 上全新安装了 Windows 8.1,一切正常。然后为了好玩,因为我是 Ubuntu 的超级粉丝(目前安装在我的笔记本电脑上),我想将旧的 60GB SSD 插入热插拔托架并在其上安装 Ubuntu 14.04。一切进展顺利,我非常高兴!但是,当我在 60GB SSD 上安装 Ubuntu 时,它还将 grub 安装到它上面,而不是安装到装有 Windows 的新 500GB SSD 上。所以现在当 60GB SSD 被移除时,我无法启动 Windows 或 Ubuntu(显然)。
当安装 60GB SSD 时,两种操作系统都可以完美运行,所以这不是什么大问题。只是非常烦人。我尝试将 grub 移动到新的 500GB SSD(使用 sudo install-grub /dev/sda),这样即使没有连接 Ubuntu 的 60GB SSD,Windows 也可以运行,但我无法让它工作。每当移除 60GB SSD 时,它都会显示 grub 救援屏幕。
有人对我如何从旧 SSD 中删除 grub 并将其移动到新 SSD 有什么建议吗?
我目前正在考虑应该使用实时 USB 重新安装 Ubuntu,并指定 /dev/sda 作为引导加载程序的位置。
答案1
只有使用 Something Else 手动安装选项时,您才可以选择将引导加载程序安装到哪个驱动器中。因此,如果有多个驱动器,您总是使用 Something Else。
您可以使用 Boot-Repair 的高级选项,选择操作系统以及将其引导加载程序安装到哪个驱动器。或者将 Windows 安装到 Windows 驱动器,将 grub 安装到 Ubuntu 驱动器。或者您可以使用 Windows 修复闪存驱动器来修复 Windows,然后在 Ubuntu 中将 grub 安装到 sdb。
https://help.ubuntu.com/community/Boot-Repair
您不希望 grub 位于 sda 中,它是 500GB 驱动器,但 sdb 是 60GB 驱动器,并且只能位于 60GB 驱动器中。
从工作系统(不是 liveCD/DVD/USB)重新安装 - 首先找到 Ubuntu 驱动器(例如驱动器 sdb,但使用您的驱动器而不是分区):
sudo fdisk -l
如果是“/dev/sdb”,则只需运行:
sudo grub-install /dev/sdb
如果返回任何错误,请运行:
sudo grub-install --recheck /dev/sdb
sudo update-grub
如何恢复 Ubuntu/XP/Vista/7 引导加载程序
https://help.ubuntu.com/community/RestoreUbuntu/XP/Vista/7Bootloader