专家答疑:我最近在双启动系统上重新安装了 Windows,现在 Linux 无法启动...
问题:我最近不得不在我的双启动系统上重新安装 Windows,现在 Linux 无法启动了。它不再启动到 grub 引导管理器,而是直接启动到 Windows。我该如何恢复我的双启动能力? --Tara Ryan,加利福尼亚州山景城
我们在 Apress 的朋友慷慨地表示,如果我们发表您的专家答疑问题,将免费赠送一本您选择的书籍或电子书。读者们,发送您的专家答疑问题 来参与活动。如果您的问题被选中,即可获得一本免费书籍 和 免费技术支持 -- 很酷,对吧?现在开始回复本周的问题
Tom Metge 回答: 您需要将 GRUB 重新安装到您磁盘的 MBR - Windows 在安装时会覆盖它。如果您手头有 Linux Live 光盘(例如,您的发行版安装光盘上的救援功能),请启动到救援环境并执行以下操作
- 挂载您的 boot 和 root 分区
- chroot 到 root 分区
- 运行
grub-install [dev]
其中 [dev] = 您从中启动的驱动器,采用 grub 格式(例如,系统中第一个驱动器为 hd0,0)。
Bill Childers,硅谷的一位 IT 经理 回答: Tom 的指示非常准确。不过,另一种方法是 - 如果 BIOS 不想从 chroot 正确探测驱动器,您也可以在 chroot 之外重新安装 grub。确保您的 boot 和 root 分区已按照 Tom 的指示挂载,然后运行 “grub-install --root-directory=/mnt/hda1 /dev/hda”(将 /mnt/hda1 和 /dev/hda 替换为您实际的挂载点和设备节点)。
在 Kyle Rankin 的 *优秀* 书籍《Knoppix Hacks》中也详细介绍了这一点。这是第一版中的第 53 个技巧和第二版中的第 66 个技巧。你欠我一次,Kyle。
Luis Cerezo 回答: 当使用救援模式时,根分区和 boot 分区,取决于您的系统设置方式,可能需要以 rw 模式挂载。挂载 -I remount,rw /。
夏威夷大学教育学院 的 Chris Stark 回答: 嗨,Tara。Tom、Bill 和 Luis 都为解决这类问题提供了完美的答案。现在,按照他们的建议恢复您的 GRUB 安装,然后按照我的建议采取策略来帮助避免再次发生此问题。
我相信您知道,市面上有数百种 Linux 发行版,每种发行版都有略微不同的受众或用途。我想向您介绍一个特定的发行版,即 Clonezilla Live CD,http://clonezilla.org/。
像往常一样下载 ISO 镜像并刻录到 CD。现在把光盘放在一边。
接下来,更新您的 Windows 安装并配置到您喜欢的状态。我倾向于进行相当少的调整:安装任何驱动程序和更新、安装防病毒软件和 Windows Defender,并关闭烦人的界面声音。
一旦您对您的 Windows 安装感到满意,请使用 Clonezilla Live CD 重新启动,并按照提示创建 Windows 分区的镜像。Clonezilla 非常灵活,它允许您将镜像保存到网络共享、外部驱动器甚至本地分区。现在您有了镜像,您可以放心地继续您的工作,因为您知道下次 Windows 崩溃(...您知道它会崩溃...),您将准备好快速而轻松地恢复运行。
请务必阅读 Clonezilla 主页上的“如何使用”链接。您会发现 Clonezilla 非常易于使用,尽管有点古怪,并且恢复您完美配置的 Windows 分区意味着不会覆盖主引导记录(从而保持 GRUB 完好无损并准备好进行双启动)。
如果您像我一样,只需要 Windows 用于测试目的,请考虑在虚拟机中运行 Windows,例如 VirtualBox,http://www.virtualbox.org/。
Adobe Systems 的 James Ward 回答: 启动任何 Live CD,然后运行以下命令
sudo grub-install --no-floppy /dev/sda
假设 /dev/sda 是您想要安装引导加载程序的设备。由于您的 Grub 配置应该仍然完好无损,这应该可以直接工作。
>> 专家答疑是 LinuxJournal.com 独家推出的全新每周专栏。
>> 向我们的专家提问? 给他们发送电子邮件.