我有一台东芝 Sattelite S70-b-110,预装了 Windows 8.1。我将硬盘分成 4 个分区:C:/(Windows 安装);P:/(Windows 数据和已安装的程序);Ubuntu 安装(/);Ubuntu 交换区;
我安装了 Ubuntu 14.04,一切都很顺利!但是,我需要 12.04 来运行一些程序,所以我决定以错误的方式卸载 Ubuntu:我在 Windows 上启动并删除了 ubuntu 分区。结果:PC 没有加载 grub,我无法启动。
我设法绕过了这种情况,并使用 Windows 8.1 将我的电脑恢复出厂设置。
然后我再次对磁盘进行分区,并选择了 Ubuntu 12.04。安装成功,但我的 grub 没有显示 Windows 8,并自动在 Ubuntu 上启动。然后我上网搜索答案,结果完全搞砸了。
我跟着这个问题,并且我尝试更改 /etc/grub.d/30_windows 和 /etc/grub.d/40_custom ,但没有任何效果。
然后我尝试通过 USB 运行 Ubuntu,启动修复,然后一切都变得疯狂。我得到了“无效的 Arch 独立 ELF 魔法”,然后我再次从 USB 运行 Ubuntu 并使用:
sudo mount /dev/sda7 /mnt; sudo grub-install --boot-directory=/mnt /dev/sda
重启后,我可以看到 Windows Boot UEFI Loader,但当我尝试启动时,出现错误:“无效签名”。但我可以在 Ubuntu 上启动。
我现在就这个问题寻求帮助。我希望能够同时在 Ubuntu 12.04(我已经可以了)和 Windows 8.1 上启动。
附加信息:http://paste.ubuntu.com/8547720/
抱歉,可能有重复输入,但我真的想确保不会破坏我的 Windows 分区,因为我忘记备份我的文件,而我确实需要它们。
提前致谢,
佩德罗·马克斯
答案1
看来您混合了 BIOS 和 UEFI 启动。
- Windows 好像只能以 UEFI 模式安装(只有 64 位 Windows 才能以 UEFI 模式安装)
- 磁盘为 GPT 样式(具有 EFI 系统分区 + MS 保留)
- Linux 使用 MBR 启动安装(磁盘具有特殊的 BIOS/MBR 启动分区)
===============================
最简单的解决方案:
- 删除 BIOS 启动分区(sda9)
- 使用 Windows 恢复/安装媒体修复 Windows 启动(启动到恢复控制台并输入“bcdboot Z:\windows”,其中 Z: 是您的 Windows 驱动器,相应地更改驱动器号 - 在 Z: 上您应该有 \windows 目录)
- 在 UEFI 模式下重新安装 Ubuntu 12.04!!!
要在 UEFI 模式下安装,您需要在 UEFI 模式下启动 - 选择 DVD UEFI 启动或 USB UEFI 启动!!!
还请检查用于多启动 Windows/Linux 的“rEFInd”启动管理器。稍后可将其安装为软件启动开关。
另请检查引导下一步工具 - 允许从 Windows 直接启动 Linux/Ubuntu。