从USB上安装Ubuntu在外部硬盘驱动器上后进行抢救

我在我的内置硬盘中安装了Windows 7,想要试用Ubuntu,所以我有一个USB可以将Ubuntu LiveUSB打开,并在外置硬盘上安装Ubuntu,一切正常。

现在的问题。 如果我移除外部硬盘并尝试正常启动Windows,它会显示grub救援屏幕。 启动Windows的唯一方法是连接外置硬盘。

我有什么方法可以做到这一点所以我不需要连接外置硬盘来启动我的Windows 7吗?

当您安装Ubuntu时,它将Grub引导加载程序放在您的内部驱动器MBR上,但所有grub模块都存储在外部驱动器上的Ubuntu分区上。 如果Grub无法加载模块,Grub将不会让你做很多事情,因此,如果没有外部插入,你无法启动任何东西。

你应该做的是将Windows引导程序保留在内部驱动器上,并将Grub安装到外部。 然后,无论何时插入外部,只需在启动时覆盖以从外部启动。

要将Grub安装到外部MBR(假设它是/dev/sdb ):

 sudo grub-install /dev/sdb 

要在没有外部设备的情况下启动Windows,请重新安装Windows引导加载程序。 要执行此操作从Windows 7修复CD或Windows安装DVD启动到修复提示并运行:

 bootrec /fixmbr 

如果没有Windows修复CD,则可以从Windows制作Windows修复CD。 也可以从Ubuntu安装中安装类似Windows的引导加载程序:

 sudo apt-get install lilo sudo lilo -M /dev/sda mbr 

请注意, lilo会弹出一个大的警告屏幕,但忽略它是安全的,因为它指的是它用于启动linux时。

这就是使用lilo样子(注意命令是区分大小写的):

 bcbc@neptune:~$ sudo apt-get install lilo [sudo] password for bcbc: Reading package lists... Done Building dependency tree Reading state information... Done Suggested packages: lilo-doc The following NEW packages will be installed: lilo 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. Need to get 275 kB of archives. After this operation, 807 kB of additional disk space will be used. Get:1 http://mirror.csclub.uwaterloo.ca/ubuntu/ precise/main lilo amd64 1:23.2-2 [275 kB] Fetched 275 kB in 1s (198 kB/s) Preconfiguring packages ... Selecting previously unselected package lilo. (Reading database ... 505850 files and directories currently installed.) Unpacking lilo (from .../lilo_1%3a23.2-2_amd64.deb) ... Processing triggers for man-db ... Setting up lilo (1:23.2-2) ... bcbc@neptune:~$ sudo lilo -M /dev/sda mbr Backup copy of /dev/sda in /boot/boot.0800 The Master Boot Record of /dev/sda has been updated. bcbc@neptune:~$ 

您将看到一个类似于此的警告 – 当您将lilo用作Windows样式的引导加载程序时,可以忽略它:

在此处输入图像描述

  1. 您必须使用Windows CD / DVD修复内部HDD的MBR 。 ( startup-repair

  2. 连接辅助磁盘,使用Live CD boot-repair ,然后使用boot-repair工具在辅助HDD上安装GRUB。 见下图:

    在此处输入图像描述

    从下拉菜单中选择Place Grub into – 您的辅助HDD。

    要识别辅助HDD的名称,请打开资源管理器,然后查看引导修复工具说明 。

轻松拯救GRUB2 ……
脚步:
1.下载YUMI Multiboot USB创建器。
2.下载Rescatux / Super Grub2磁盘
3.1使用YUMI多重引导USB创建器将Rescatux或Super Grub2磁盘安装到Pendrive中。
要么
3.2将其安装在CD中,或者甚至可以尝试使用Floppy(Super Grub2 Disk)。
4.从您创建的其他媒体(Pendrive / CDROM / Floppy)启动。

  1. Super Grub2磁盘说明(方法1)
    5.1从YUMI Mulitboot界面选择GRUB Bootable ISOs或Windows XP / 7/8,然后按enter键
    5.2在下一个屏幕上选择Super Grub2 Disk entry,然后按enter键。
    5.3在Super Grub2磁盘主屏幕上。 从菜单中选择第二个(检测任何操作系统。新建下载我的列表不同,只需从菜单列表中选择第二个)。
    5.4接下来从操作系统选择列表中选择Ubuntu。 这将加载您的Ubuntu操作系统。
    5.5登录后使用终端并输入以下命令。
    5.6键入sudo fdisk -lu以确定您的硬盘和根分区设备。 将是这样的Disco /dev/sda: 500.1 GB
    5.7恢复Grub2:输入sudo grub-install /dev/sda
    结果将类似于Installation finished. No error reported. Installation finished. No error reported.
    5.8如果您与Ubuntu一起安装了其他操作系统,则需要使用sudo update-grub执行Grub2更新。 这将检测系统中加载的其他操作系统。
  2. Rescatux的说明(方法2)
    6.1从YUMI Mulitboot界面选择GRUB Bootable ISOs或Windows XP / 7/8,然后按enter键
    6.2在下一个屏幕上,选择Rescatux Disk条目,然后按enter键。
    6.3在Recatux引导屏幕上,如果您看到Unable to boot due to CPU error选择Live 486,否则选择默认Live(amd64)
    6.4几个系统初始化屏幕后,将显示Rescapp GUI 。 6.5从Rescapp GUI中选择Grub(+)然后选择Restore Grub ,最后选择Restore Grub !!!
    6.6从下一个屏幕中选择Linux分区(避免大多数时候都是Rescatux设备分区的loop1)并按OK。
    6.7选择硬盘分区以安装Grub,然后按OK。
    6.8等待Rescapp执行安装操作,成功安装后会显示一条消息,然后按OK。
    6.9在屏幕的右下角单击它以关闭Rescatux。

    GRUB2获救

我这样解决了:

问题

从USB驱动器安装时,USB驱动器变为SDA。 磁盘变为SDB,SDC等。 卸下USB驱动器并重新启动后,磁盘将变为SDA,SDB等,系统将无法启动。

解:

临时添加连接到SATA(内部)的光学阅读器。 通过USB连接的外部读卡器很可能会产生与上述相同的问题。

由于光学阅读器没有显示为磁盘,第一个磁盘将是SDA,安装顺利,系统将成功启动。