![恢复 Grub - 找不到文件](https://linux22.com/image/813301/%E6%81%A2%E5%A4%8D%20Grub%20-%20%E6%89%BE%E4%B8%8D%E5%88%B0%E6%96%87%E4%BB%B6.png)
答案1
我假设这些步骤与 有关grub
,而不是 有关grub2
。 使用grub2
,文件结构已更改,因此目录中不再有stage
文件grub
。 在此主题,在#13下,您将找到如何从 LiveCD 恢复 grub2 的描述。编辑2:它有以下步骤(致谢drs305):
启动 Ubuntu Live CD(无需安装即可尝试)。
从桌面打开一个终端 - 应用程序、附件、终端。
确定您的正常系统分区 -
sudo fdisk -l
(小写的 L)。如果不确定,请运行
df -Th
。查找正确的磁盘大小和 ext3 或 ext4 格式。挂载您的正常系统分区:
sudo mount /dev/sdXY /mnt
- 如果您不确定是否安装了正确的分区,请在安装后运行“
nautilus /mnt
”来检查分区。如果它是正确的分区,您应该会看到正常的 Ubuntu 文件夹,例如 /bin、/boot、/etc、/home 等 - 例子:
sudo mount /dev/sda1 /mnt
- 注意:要挂载的分区通常是安装 Ubuntu 的分区:sda1、sdb5 等。如果您有单独的 /boot 分区,请使用 /boot 分区所在的设备。Grub 2 安装在 BIOS 启动的驱动器的 MBR 中时效果最佳。还请记住,您在此步骤中挂载了分区(包括编号),但稍后运行“sudo grub-install”命令时无需包含分区编号。
- 注意:GRUB 2 将第一个驱动器 (X) 计为“0”,但将第一个分区 (Y) 计为“1”
- 如果您不确定是否安装了正确的分区,请在安装后运行“
仅有的如果你有单独的启动分区:
sudo mount /dev/sdXY /mnt/boot
其中 sdXY 是您的 /boot 分区名称。
重新安装 GRUB 2:
sudo grub-install --root-directory=/mnt /dev/sdX
做不是包括分区号。
例子:
sudo grub-install --root-directory=/mnt /dev/sda
- 笔记:替换安装 Ubuntu 的设备 - sda、sdb 等。不是指定分区号。
卸载分区*:
sudo 卸载/mnt
- 注意:如果您安装了单独的 /boot 分区,请先将其卸载:
sudo umount /mnt/boot
- 注意:如果您安装了单独的 /boot 分区,请先将其卸载:
重启。
重启后:使用以下命令更新 grub 菜单
sudo update-grub
这里's 另一个描述。祝你好运!
编辑1:更多信息请参见Ubuntu Wikigrub2
。
答案2
我遇到了类似的错误,我的修复方法是这样的:我使用了 Boot repair,一个修复 grub 的工具
启动 LiveCD 并使用以下命令
sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt-get update
sudo apt-get install boot-repair
并启动引导修复,从 GUI 中选择正确的选项
答案3
查看以下链接