如果没有其他硬盘就无法启动

如果没有其他硬盘就无法启动

我有两个问题:

我拿出我的旧硬盘,把它放在硬盘盒里。
然后我把它连接到一台运行 Windows Vista 的笔记本电脑上。
我还把一个装有 Ubuntu 14.04 的 USB 连接到笔记本电脑上。
下一步是在外置硬盘上安装 Ubuntu。
安装完成后,我必须重新启动才能启动 Ubuntu。我关掉笔记本电脑,把 BIOS 改成在外置硬盘上启动。
我打开它,什么也没发生。
好的,我决定从笔记本电脑启动内置硬盘。然后出现了一个来自 Ubuntu 的紫色窗口,询问我是要启动 Ubuntu 还是 Windows Vista。
我选择了 Ubuntu,它成功了。之后我做了同样的事情,选择了 Windows。它也成功了。但现在,如果不将外置硬盘连接到笔记本电脑,我就无法启动内置硬盘。它显示类似错误 grub 救援的内容。这是第一个问题。

问题二是我想在没有这台笔记本的情况下使用硬盘盒中的硬盘。我想将其连接到其他电脑。
我该怎么办?

答案1

您的 grub 似乎已安装在外部驱动器上,因此您需要修复它。是的,您可以在其他机器上使用外部硬盘。

修复 grub:

当您安装 Windows 时,Windows 会假定它是机器上唯一的操作系统 - 或者至少它不考虑 Linux。因此,它会用自己的引导加载程序替换 grub。您需要做的是用 grub 替换 Windows 引导加载程序。我见过各种使用 grub 命令或类似命令替换 grub 的说明,但对我来说,最简单的方法是直接chroot进入您的安装并运行update-grub. 。chroot这很棒,因为它允许您在实际安装上工作,而不是尝试在这里和那里重定向内容。它真的很干净。

就是这样:

  1. 从实时 CD 启动。
  2. 确定主分区的分区号。GParted 可以帮到你。我假设这个答案是/dev/sda2,但是确保您的系统使用了正确的分区号!
  3. 挂载你的分区:

    sudo mount /dev/sda2 /mnt  # make sure that sda2 is correct!
    
  4. 绑定安装一些其他必要的东西:

    for i in /sys /proc /run /dev; do sudo mount --bind "$i" "/mnt$i"; done
    
  5. chroot进入你的 Ubuntu 安装:

    sudo chroot /mnt
    
  6. 此时,您处于安装状态,而不是实时 CD,并以 root 身份运行。更新 grub:

    update-grub
    

    如果出现错误,请转到步骤 7。(否则,这是可选的。)

  7. 根据您的情况,您可能必须重新安装 grub:

    grub-install /dev/sda
    update-grub # I'm not sure if this is necessary, but it doesn't hurt.
    
  8. 如果一切顺利,没有错误,那么一切就完成了:

    exit
    sudo reboot
    
  9. 此时您应该可以正常启动。

如果您无法正常启动,并且由于没有错误消息而未执行步骤 7,请重试步骤 7。

  • 有时给 GRUB2 正确的配置为您的分区安装此步骤是不够的,您必须将其安装(或重新安装)到主引导记录,步骤 7 就是这么做的。在聊天中帮助用户的经验表明,即使没有显示任何错误消息,步骤 7 有时也是必要的。

===================================================

Windows 安装程序不关心系统中的其他操作系统。因此,它会在主引导记录上写入自己的代码。这不是 Windows 安装程序的问题,而是故意造成的。如果您重新安装或升级 Windows,您将面临此问题。幸运的是,解决方案也很简单。

您需要修复 mbr。执行以下操作

使用 ubuntu 的实时 usb/cd 启动。用来boot-repair修复问题。

使用 live usb/cd 启动后,在终端中运行以下命令,

sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update
sudo apt-get install -y boot-repair && boot-repair

使用Recomended Repair

在此处输入图片描述

更多信息 -https://help.ubuntu.com/community/Boot-Repair

这些答案最初是在这里给出的。

相关内容