如何让多个ubuntu 10.04 操作系统共用一份grub?

启动讨论 grub/grub2/syslinux/grub4dos/Lilo
rongxue66
帖子: 25
注册时间: 2011-03-04 11:14

如何让多个ubuntu 10.04 操作系统共用一份grub?

#1

帖子 rongxue66 » 2011-03-11 11:02

我在一台机器上安装了四个ubuntu 10.04 操作系统,想让这几个系统使用同一份grub,怎么办呢?怎么设置grub的路径?
头像
月下叹逍遥
论坛版主
帖子: 33994
注册时间: 2010-10-07 14:23
系统: Archdows10
来自: 某系某星某洲某国某省某市
联系:

Re: 如何让多个ubuntu 10.04 操作系统共用一份grub?

#2

帖子 月下叹逍遥 » 2011-03-11 11:04

建一个boot分区?我没试过。 :em06
浮生七十今三十,从此凄惶未可知
rongxue66
帖子: 25
注册时间: 2011-03-04 11:14

Re: 如何让多个ubuntu 10.04 操作系统共用一份grub?

#3

帖子 rongxue66 » 2011-03-11 11:09

建立boot分区,把grub安装到此分区吗?
grub都是默认安装的,路径也是阿。
头像
onshoestring
论坛版主
帖子: 4666
注册时间: 2009-09-06 5:53

Re: 如何让多个ubuntu 10.04 操作系统共用一份grub?

#4

帖子 onshoestring » 2011-03-11 11:26

/boot单独分区,共用一个/boot分区,grub2安装到mbr,没试过,应该没问题。
不明白为什么安装多个10.04。
头像
smallapple
论坛版主
帖子: 7868
注册时间: 2009-03-28 15:12

Re: 如何让多个ubuntu 10.04 操作系统共用一份grub?

#5

帖子 smallapple » 2011-03-11 11:27

不大可行,grub.cfg 会以最后那个安装的系统为主。
如果共用 /boot分区时,建立的菜单会混乱。
实际上可以一个系统单独 /boot分区,并安装grub,其他系统不安装grub,也不用单独 /boot分区,然后用 update-grub建立的菜单就可以共用。
头像
onshoestring
论坛版主
帖子: 4666
注册时间: 2009-09-06 5:53

Re: 如何让多个ubuntu 10.04 操作系统共用一份grub?

#6

帖子 onshoestring » 2011-03-11 11:33

smallapple:共用/boot会乱,那就不必/boot单独分区了。
头像
smallapple
论坛版主
帖子: 7868
注册时间: 2009-03-28 15:12

Re: 如何让多个ubuntu 10.04 操作系统共用一份grub?

#7

帖子 smallapple » 2011-03-11 11:44

onshoestring 写了:smallapple:共用/boot会乱,那就不必/boot单独分区了。
有 /boot 单独分区的好处是如果 / 分区挂了,还可以进grub引导进另一个系统。
有一个系统单独挂 /boot 分区并把grub安装到mbr就行了,不必每个系统都挂 /boot 和安装 grub。
jtshs256
帖子: 22323
注册时间: 2010-07-19 21:41
系统: OS X

Re: 如何让多个ubuntu 10.04 操作系统共用一份grub?

#8

帖子 jtshs256 » 2011-03-11 12:22

不要单分/boot,用ubuntu的话靠update-grub刷,用grub的话手动添启动项……
躺平
rongxue66
帖子: 25
注册时间: 2011-03-04 11:14

Re: 如何让多个ubuntu 10.04 操作系统共用一份grub?

#9

帖子 rongxue66 » 2011-03-11 12:28

感谢楼上几位的回答。
我是个菜鸟,不太懂。boot不是一个目录吗?怎么又成了分区呢?
我再把问题描述以下吧:我在一台机器上安装了四个ubuntu 10.04 操作系统,在最后一个安装的系统的 /boot/grub/grub.cfg文件中 可以设置 默认启动项(就那个原始 default=0 那句),比如我修改为默认启动第二个安装的操作系统,那么,下次启动时在没有人工干预的情况下,将进入第二个操作系统。此时,如果想设置从第三个系统启动,就没办法了。因为第二个操作系统的grub.cfg文件中没有第三个系统的启动项。
我的最终目标是在各个系统下都能实现到其他系统的引导切换。
因此,我就想到了,让四个操作系统共用一份grub,这样可能就可以解决问题。
头像
onshoestring
论坛版主
帖子: 4666
注册时间: 2009-09-06 5:53

Re: 如何让多个ubuntu 10.04 操作系统共用一份grub?

#10

帖子 onshoestring » 2011-03-11 13:08

/是目录,一定有一个分区会挂栽到/,访问/目录,实际是访问这个分区。
/boot是目录,可以自定义分区,挂栽到/boot,访问/boot目录,实际是访问这个分区。
不清楚你怎么分区的,用系统默认的分区通常只有/和swap。
通常我自己是分/,/home,swap,linux共用swap。
如果用这个分区方案那么你安装时:
第一个ubuntu:/,/boot,/home,swap。在安装到第八步,用默认的高级选项,install boot loader--device for boot loader installation--/dev/sda。
其余三个ubuntu:/,/home。在安装这三个ubuntu时在第八步,选高级选项,把install boot loader选择框的对号去掉。
全部安装完后,重启进入第一个ubuntu,在终端命令行 sudo update-grub。

说清楚了么?

如果已经装好了,比如在第一个ubuntu运行
sudo grub-install /dev/sda
sudo update-grub
应该会有四个ubuntu的菜单项,全是ubuntu,选择时会不是搞晕啊?
rongxue66
帖子: 25
注册时间: 2011-03-04 11:14

Re: 如何让多个ubuntu 10.04 操作系统共用一份grub?

#11

帖子 rongxue66 » 2011-03-11 13:50

感谢楼上的回答,真是很详细。
我已经装好了,并且这几个系统都是默认安装的,所以在安装时也只有/和swap。
在这种情况下,运行
sudo grub-install /dev/sda
sudo update-grub
这两个命令貌似有问题阿。
头像
smallapple
论坛版主
帖子: 7868
注册时间: 2009-03-28 15:12

Re: 如何让多个ubuntu 10.04 操作系统共用一份grub?

#12

帖子 smallapple » 2011-03-11 13:56

我再把问题描述以下吧:我在一台机器上安装了四个ubuntu 10.04 操作系统,在最后一个安装的系统的 /boot/grub/grub.cfg文件中 可以设置 默认启动项(就那个原始 default=0 那句),比如我修改为默认启动第二个安装的操作系统,那么,下次启动时在没有人工干预的情况下,将进入第二个操作系统。此时,如果想设置从第三个系统启动,就没办法了。因为第二个操作系统的grub.cfg文件中没有第三个系统的启动项。
我的最终目标是在各个系统下都能实现到其他系统的引导切换。
如果是grub2的,在进入每个系统后都执行下 sudo update-grub,这样每个系统的菜单都会加入其他系统的启动项。
如果是grub的,要手动编下 /boot/grub/menu.lst
头像
smallapple
论坛版主
帖子: 7868
注册时间: 2009-03-28 15:12

Re: 如何让多个ubuntu 10.04 操作系统共用一份grub?

#13

帖子 smallapple » 2011-03-11 13:58

sudo grub-install /dev/sda
最后在哪个系统下执行的,grub就以那个系统的为准。
rongxue66
帖子: 25
注册时间: 2011-03-04 11:14

Re: 如何让多个ubuntu 10.04 操作系统共用一份grub?

#14

帖子 rongxue66 » 2011-03-11 14:38

经楼上几位的提点,我执行了
sudo update-grub 和
sudo grub-install /dev/sda 命令
现在在每一个系统中的grub.cfg都有了关于其他系统的引导信息,
不过有点奇怪的是,几个系统中的grub.cfg文件中的 menuentry 的顺序是不同的。
rongxue66
帖子: 25
注册时间: 2011-03-04 11:14

Re: 如何让多个ubuntu 10.04 操作系统共用一份grub?

#15

帖子 rongxue66 » 2011-03-11 15:22

smallapple 写了:sudo grub-install /dev/sda
我刚实验了一下,这种情况下,在除最后一个操作系统外的其他的几个操作系统中无法通过修改gurb.cfg 而设置默认启动项。

这种情况下怎么做到在其他几个操作系统中也能设置默认启动项呢?
回复