我有一台计算机,它的几个操作系统安装在不同的分区上:
我的主要操作系统是Linux,一个Ubuntu的嘲笑。
我在MBR中安装了GRUB2,它(GRUB)使用Linux安装(/boot/grub等)中的数据。
FreeBSD和PC各自在分区中都有自己的第二阶段引导加载程序。Solaris在其分区中有自己的GRUB安装(它充当第二阶段的引导加载程序,使我能够在不同的Solaris内核之间进行选择)。Linux和CentOS是由MBR中的GRUB引导的。
+++
我的问题是FreeBSD和PC-BSD -他们只是不会玩得很好!尽管我已经在两个BSD安装的GRUB条目中指定了不同的根分区等;但不管我从GRUB菜单中选择了FreeBSD还是PC-BSD,相同的根分区都会被引导。
引导*BSD似乎是三个阶段的进程:MBR-加载程序(第一阶段),在BSD-分区中加载第二阶段,最后加载实际的内核(第三阶段)。
最后,我降低了RTFM关于在*BSD中引导的内容,我发现了关于第二阶段BSD-引导加载器(它已经安装在我的两个BSD-分区中)的以下要点:
一定有办法绕过这件事吗?!也许不知何故跳过了第二阶段,让GRUB直接加载第三阶段的内核-然后根据我的选择不同的内核.或者可能是第二阶段的一些特殊参数或配置--或者是另一种第二阶段加载器?有没有人遇到过类似的问题并解决了这个问题?
PS:在MBR中安装GRUB,覆盖了由FreeBSD (和FreeBSD)安装的第一阶段引导加载程序。但是,我怀疑使用FreeBSD第一阶段是否能够解决我的问题,因为问题是(AFAIK)第二阶段加载器。
发布于 2014-10-11 19:29:51
首先,我不会使用MBR,因为你有4个操作系统,这不会太远。您需要将/boot分区作为主分区而不是扩展分区。所以要么放弃Solaris安装,要么放弃Linux安装。引导到FreeBSD (或PC.不管怎么说,使用GRUB2是很容易的。你只需要定义你的“设置root=.”然后你说"kfreebsd /boot/loader“,就这样了。对于您的类型,我将使用GUID/GPT分区表,在那里您还可以将所有分区拆分到其中,您不需要有额外的BSD切片。
https://unix.stackexchange.com/questions/160242
复制相似问题