Ubuntu无法启动时如何修复GRUB2
Ubuntu和许多其他Linux发行版都使用GRUB2引导加载程序。例如,如果GRUB2中断,则如果在安装Ubuntu之后安装Windows,或者覆盖MBR,则将无法启动到Ubuntu。
我们可以轻松地从Ubuntu Live CD或者U盘还原GRUB2. 此过程与在较旧的Linux发行版上还原旧版GRUB引导加载程序不同。
此过程应适用于所有版本的Ubuntu。它已经在Ubuntu 16.04和Ubuntu 14.04上进行了测试。
图形方法:引导修复
引导修复是一种图形工具,可以单击以修复GRUB2. 对于大多数用户来说,这是解决启动问题的理想解决方案。
如果我们具有从中安装Ubuntu的介质,请将其插入计算机,重新启动并从可移动驱动器启动。如果不这样做,请下载Ubuntu Live CD,然后将其刻录到光盘上或者创建可引导的USB闪存驱动器。
Ubuntu启动时,单击"尝试Ubuntu"以获取可用的桌面环境。
在继续之前,请确保我们具有Internet连接。我们可能需要选择一个Wi-Fi网络并输入其密码。
从Dash打开一个Terminal窗口,然后运行以下命令来安装和启动Boot Repair:
sudo apt-add-repository ppa:yannubuntu/boot-repair sudo apt-get update sudo apt-get install -y boot-repair boot-repair
运行" boot-repair"命令后," Boot Repair"窗口将自动扫描系统。扫描完系统后,单击"推荐的修复"按钮一次即可修复GRUB2.
我们可以在此处选择使用高级选项,但是Ubuntu的Wiki建议除非我们知道自己在做什么,否则不要使用高级选项。推荐的修复选项可以自动修复大多数问题,并且通过选择错误的高级选项,我们甚至可能使系统更加混乱。
引导修复将开始工作。它可能会要求我们打开终端,然后将一些命令复制/粘贴到其中。
只需按照屏幕上显示的说明进行操作即可。执行引导修复所需的说明,然后单击"前进"以继续执行向导。该工具将引导我们完成所有需要做的事情。
引导修复工具完成更改后,重新启动计算机。 Ubuntu应该正常启动。
终端法
如果我们不愿动手,则可以从终端上自己进行操作。我们需要从活动CD或者U盘启动,如上面的图形方法所示。确保CD上的Ubuntu版本与计算机上安装的Ubuntu版本相同。例如,如果我们安装了Ubuntu 14.04,请确保使用Ubuntu 14.04 Live CD。
进入实时环境后,打开终端。使用以下命令之一标识安装了Ubuntu的分区:
sudo fdisk -l sudo blkid
这是这两个命令的输出。在" fdisk -l"命令中,Ubuntu分区由"系统"列中的单词" Linux"标识。在" blkid"命令中,分区由其" ext4"文件系统标识。
如果我们有多个Linux ext4分区,则可以通过在此处查看分区的大小及其在磁盘上的顺序来了解哪个分区。
运行以下命令以将Ubuntu分区挂载到/ mnt / ubuntu,并通过上述命令将/ dev / sdX#
替换为Ubuntu分区的设备名称:
sudo mkdir /mnt/ubuntu sudo mount /dev/sdX# /mnt/ubuntu
在上面的屏幕截图中,我们的Ubuntu分区是/ dev / sda1. 这意味着第一个硬盘设备上的第一个分区。
要点:如果我们有单独的引导分区,请跳过上述命令,然后将引导分区挂载到/ mnt / ubuntu / boot。如果我们不知道是否有单独的启动分区,则可能不知道。
运行以下命令从实时CD重新安装grub,将/ dev / sdX替换为上面硬盘的设备名称。省略数字。例如,如果我们在上面使用/ dev / sda1
,请在此处使用/ dev / sda
。
sudo grub-install --boot-directory=/mnt/ubuntu/boot /dev/sdX
重新启动计算机,Ubuntu应该可以正常启动。