我准备了(gParted)我的多重启动系统(使用 gpt 分区表,因为我的 BIOS 启用了 UEFI 模式......)
/dev/sda1 ntfs "Win" 50 GB
/dev/sda2 ext4 "Boot" 1 GB → for "/boot"
/dev/sda3 ext4 "Linux" 89 GB → for _crypt Volume, therein "/"
/dev/sda4 fat "Xfer" ca 27 GB (the rest) transfer partition (one day…)
然后安装了 Windows 10 Pro(顺便说一下,在安装过程中将第一个分区切成 4 个,这是正常行为。但同样,安装工作顺利,我可以反复启动 Win10、更改东西等等。)。
然后我安装了 Ubuntu-Mate 16.0.4 LTS,选择了扩展“其他”选项。虽然提供了现成的 Windows 多重启动选项,但我想要加密,所以我将 89GB 分区设为“用于加密的物理卷”,然后在“/”内。(我已经多次完成这个 Ubuntu 安装部分。应该不是问题……)
无论如何,在看似成功安装并第一次重启后,我现在正盯着一个最小的 grub 提示符:
现在怎么办?如何找回我的/任何引导加载程序?
以及/或者如何诊断问题?
答案1
这就是让你开始操作的方法(如果你手边没有 Live-USB)。进入 grub 提示符后:
列出分区
grub> ls
(hd0)(hd0,msdos2)(hd0,msdos1)
识别 Linux 分区
如果你不知道哪个是 Linux 可启动分区,请尝试
grub> ls (hd0,1)/
结尾的斜杠表示根 ~ 列出了分区 1 的根
在我的系统上(hd0,msdos5)因此命令如下:
grub> ls (hd0,5)/
输出应类似于:
lost+found/bin/boot/cdrom/dev/etc/home/lib/
lib64/media/mnt/opt/proc/root/run/sbin/
srv/sys/tmp/usr/var/vmlinuz vmlinuz.old
initrd.img initrd.img.old
启动进入 Linux
使用tab键将在下面命令中自动完成内核名称
grub> set root=(hd0,5)
grub> linux /boot/vmlinuz-4.13.0-39-generic root=/dev/sda5
*
grub> initrd /boot/initrd.img-4.13.0-39-generic
grub> boot
* sda1 对应于 (hd0,1) - 请注意,在 GRUB 中,分区和设备的索引从 0 开始,而在 GRUB 2 中,分区索引从 1 开始
内核文件的位置可能是符号链接的,所以这很简单
grub> set root=(hd0,1)
grub> linux /vmlinuz root=/dev/sda1
grub> initrd /initrd.img
grub> boot
这应该可以启动 Linux,无需回答任何问题。
修复 GRUB
$ sudo update-grub
此时,无论当前有多少个操作系统,都应该恢复启动。包括 Windows。
这些指示的荣誉归于Carla 的如何在 Linux 上修复无法启动的 GRUB 2帖子。我建议阅读它,因为它包含许多细节和诀窍。
我敢说我的系统启动被 Win10 更新破坏了。但是,我们永远不应该说 Windows 或 Bill 不应该存在。他们是历史的推动力,为 Linux 这样伟大的操作系统创造了合适的环境。