如果我想启动引导过程,我应该指向哪个文件?我在与 openSuse 12.1 和 Windows 7 不同的磁盘上安装了 Ubuntu 11.10。安装 Ubuntu 时,我必须重新安装 OpenSuse 才能启动它和 Windows。使用 OpenSuse 引导加载程序,我似乎无法配置引导菜单来启动 Ubuntu。我知道我的问题是 OpenSuse 引导加载程序配置不正确。作为新手,我不太了解 Linux 系统的引导过程。
答案1
OpenSuse 使用 Grub BootLoader。(Boot Loader 是 BIOS 在计算机启动时寻找的程序,它始终位于硬盘的前 446 个字节中)。然后,Grub 使 Ubuntu、OpenSuse 和 Windows 7 的文件系统可用,并查找名为 的文件,/boot/grub/grub.cfg
该文件告诉它计算机上有哪些操作系统以及如何启动它们。
复杂的答案
这里这是 grub.cfg 文件的示例。Ubuntu 的条目如下所示:
### BEGIN /etc/grub.d/12_os-prober ###
menuentry "Ubuntu 11.10 (11.10) (on /dev/sda2)" --class gnu-linux --class gnu --class os {
insmod part_msdos
insmod ext2
set root='(hd0,msdos1)'
search --no-floppy --fs-uuid --set=root 3582d70f-f4a5-484c-b14c-45cd740346b9
linux /vmlinuz-3.0.0-12-generic root=/dev/sda2
initrd /initrd.img-3.0.0-12-generic
}
该insmod part_msdos
行告诉 grub 学习如何读取 MBR 分区表 该insmod ext2
行告诉 grub 学习如何读取 ext2/3/4 文件系统
该set root='(hd0,msdos1)'
行告诉 grub /boot 位于 HDD #0,分区 1 该search ...
行告诉 grub 查看 Ubuntu 分区中的文件
该linux /vmlinuz-3....
行告诉 grub Ubuntu 内核在 /dev/sda2 上命名为该名称
该initrd ...
行告诉 grub 在哪里寻找启动映像。
简单的答案
启动 OpenSuse 并运行以下命令:
sudo find / -name "grub.cfg"
sudo grub-mkconfig -o /file/found/in/above/command/grub.cfg
第一个命令将在您的驱动器上找到 grub.cfg,可能位于 /boot。第二个命令告诉 grub 查找新的操作系统并将其安装到您在上面找到的文件中。