我最近开始使用 Linux Ubuntu (18.04.1)。最近更新后,我重启了笔记本电脑以切换到 Windows。第二天,当我尝试启动 Ubuntu 时,我得到的不是常规的紫色双启动菜单,而是以下信息:
Unexpected return from initial read: Volume Corrupt, buffersize 1000
Failed to load image \EFI\ubuntu\grubx64.efi: Volume Corrupt
start_image() returned Volume Corrupt
System BootOrder not found.
Initializing defaults
Failed to open \EFI\ubuntu\grubx64.efi\ - Volume Corrupt
Failed to load image \EFI\ubuntu\grubx64.efi: Volume Corrupt
start_image() returned Volume Corrupt
StartImage failed: 10
并且没有按钮可用。我跑到这里开始这个线程的主要原因是因为我无法通过任何可能的方式访问 Ubuntu 恢复模式。我知道这部分:Failed to open \EFI\ubuntu\grubx64.efi\
可能与各种原因有关,所以我很难找到准确的解决方案。请问有人可以提供一些新手友好的快速指南来解决这个问题吗...前提是有一个不包括重新安装操作系统的指南。
答案1
您可能需要从安装介质运行,执行 chroot,重新安装 grub。但是,如果您的 EFI 分区未损坏(您有双启动,对吗?),那么运行 efibootmgr 可能就足够了。
你的 grub-install 看起来会像这样(不要复制):
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=Ubuntu
如果 EFI 条目错误(路径中的“BOOT”部分看起来像 windows 的 efi boot),但文件在那里,那么您可以在 bios/setup/efi 管理器中创建一个新条目(选择所需的名称,选择设备,导航到正确的文件)。如果您想从 linux 执行此操作 - 使用 efibootmgr,类似于(不要复制):
efibootmgr -c -d /dev/sdX -part NUM_OF_YOUR_ROOT_PARTITION -l /EFI/ubuntu/grubx64.efi -L Ubuntu
如果您的 efi 分区已损坏 - 您必须重新创建(创建分区并使用 FAT 格式化(例如 mkfs.msdos))。然后您可能需要安装其他操作系统的启动管理器,然后再安装 ubuntu 的启动管理器。
完成后,您可以创建分区表的备份(使用 sgdisk)。