最近我购买了一台预装了 Windows 8 的联想 z580,并且安装了 ubuntu 12.10(安装 ubuntu 时启用了安全启动,安装后我禁用了它)我可以毫无问题地启动到 ubuntu,但我无法从任何地方启动到 Windows 8(grub 菜单或直接从驱动程序)。
当我尝试启动到 Windows 8 或 Windows 8 恢复时,来自 grub2 的消息是相同的:
cannot find command 'drivemap';
invalid efi file path
如果我尝试直接启动硬盘,则会弹出蓝屏并显示以下消息:
您的电脑的启动配置数据丢失或包含错误
File \EFI\Microsoft\BCD
error code 0xc000014c
您将需要使用安装介质上的恢复磁盘工具。
我没有制作恢复盘:(所以我无法通过这种方式修复它。
我尝试从 msdna 启动到 Windows 8 安装磁盘以调用恢复控制台,但出现以下消息其他错误
您的电脑的启动配置数据丢失或包含错误
error code 0xc000000d
我尝试使用启动修复但它不能解决我的问题。
这是运行引导修复之前的引导信息
http://paste.ubuntu.com/5576237/
这是运行引导修复后的引导信息
http://paste.ubuntu.com/5576272/
我也尝试用这种方法解决这个问题使用 Ubuntu 12.10 UEFI 双启动 Windows但没有机会。
答案1
首先,不要尝试使用Windows 8 (loader) (on /dev/sda5)
GRUB 中的条目来启动 Windows;这是针对 BIOS 模式的 Windows 安装,而您几乎肯定没有。这个条目出现可能是 GRUB 配置脚本中的一个错误。相反,请使用该>>Windows 8<<
条目。理论上,它应该可以工作——尽管 GRUB 很挑剔,所以可能不行,而且您尝试从 Windows 修复磁盘修复问题可能使得情况更加糟糕。
如果你无法让 GRUB 工作,你可以尝试安装我的rEFInd 启动管理器。从 Ubuntu 安装 Debian 软件包是最简单的方法。如果成功,您将看到一个 rEFInd 屏幕,其中有一个启动 Windows 的选项,可能还有几个启动 Linux 的选项。如果 Windows 选项和至少一个 Linux 选项有效,您可以稍后通过编辑来修剪 Linux 选项/boot/efi/EFI/refind/refind.conf
。特别注意选项dont_scan_files
,您可以使用它来消除任何不起作用或您不想使用的选项。(您需要记下 rEFInd 显示的文件名。)
答案2
这很简单,对我有用
插入 Ubuntu cd 并选择尝试 Ubuntu,连接到互联网打开终端(Ctrl+Alt+T),
以 root 身份登录:
sudo -i
找出你的 Linux 磁盘:
fdisk -l
安装它:
mount /dev/sdaX /mnt
恢复:
grub-install --root-directory=/mnt /dev/sda