假设我希望在我的SD卡上安装Debian Squeeze和Arch Linux ARM。是否可以从Grub双重引导?

评论

除了以下答案外,请参阅:berryterminal.com/doku.php/berryboot

顺便说一句,@ Jivings刚刚找到了这个,您可能想检查一下。

#1 楼

虽然可以在SD卡上放置多个操作系统,但Pi上目前没有启动管理器,并且可以在运行时处理切换操作系统。

您可以做什么,是要在/boot中有一​​个shell脚本,该脚本可以设置要在下一次启动时使用的操作系统。

您可以通过将不同操作系统的启动文件存储在另一个目录中来完成此操作,


/boot/debian
/boot/fedora
/boot/arch

注意:需要复制的文件是/boot/cmdline.txt/boot/config.txt

然后让您的Shell脚本将文件从适当的目录复制到/boot中。这样,当您重新启动它时,它会启动到所需的操作系统中。

参考文献


Raspberry Pi,使用不同的发行版。

评论


感谢您的回答,但我想我必须先接受测试!似乎有点hack。

–活动
2012年6月15日下午13:05

@Jivings这是一个hack。 = P

–user46
2012年6月15日在13:07

你知道为什么Pi不能使用Grub吗?

–活动
2012年6月15日13:08

@Jivings毫无头绪。

–user46
2012年6月15日14:12

我认为主要原因是没有人移植GRUB。造成这种情况的主要原因可能是不需要这样的加载器。

– XTL
2012年8月15日在8:51

#2 楼

Berryboot本质上是专门为Raspberry Pi设计的引导加载程序,它将为您完成此任务:


Berryboot是一个简单的引导选择屏幕,允许您将多个Linux发行版本放在一个SD上。卡。此外,它还允许您将操作系统文件放在外部USB硬盘驱动器上,而不是SD卡本身上。


评论


您能解释一下BerryBoot的功能吗?

– hifkanotiks
13年1月10日在20:34

但是我在其他地方读到过,Berryboot不同于Grub,它不是引导加载程序,并且所有内容都以某种方式虚拟化,或者Berryboot在chroot环境中运行所有内容。真的吗?

–Paul Beardsell
13年4月8日在10:11

据我所知,Berryboot对它处理的所有发行版使用相同的内核(Berryboot内核)。因此,它不是真正的启动管理器,而是chroot包装器。

– Bartosz Pierzchlewicz
2014年5月15日19:08

#3 楼

使用u-boot(在后台由berry-boot使用),可以在任何已安装的发行版之间进行切换以在运行时启动,可以使用诸如askenv之类的东西在同一SD或可能的nfs服务器上的OS之间进行切换,也可以使用PXEPXE引导服务器上进行其他安装,尽管这并不是开始运行时最琐碎的事情。我将尝试准备一个教程。

评论


@Jivings,您使用过此解决方案吗?很想阅读您的反馈

– Suhaib
13年5月12日在21:18

#4 楼




我认为,它将起作用。您只需要正确安装所有“设置”的GRUB ...

评论


哪个版本的GRUB甚至可以在Pi上运行?这些“设置”将是什么?这个答案听起来像是您在不了解Pi硬件实际启动的情况下所做的事情。

–卡莱布
2013年1月10日上午10:11

Grub扩展到可以在Linaro的ARM的u-boot上运行。原始补丁来自去年10月,最新补丁可以在这里找到:blog.gmane.org/gmane.comp.boot-loaders.grub.devel/…

–最大
13年4月12日在11:43