多磁碟多系统grub引导问题

今天一个同学叫帮忙把centos装在U盘上,且可以从Bios引导U盘的系统,也可以从引导硬盘上的系统

安装完出现如下问题:
原来硬盘上的grub引导没有了,只能插U盘引导U盘上的系统
进入系统后发现主机上的硬盘分区什么的都没变(还好安装过程中没有搞错,要不然我的资料要恢复回来就惨了)
然后在U盘的系统中进入grub,重建grub引导
grub>root (hd0,9)           #(hd0,9)是我硬盘上/boot分区
grub>setup (hd0)
grub>quit
#reboot    之后就可以从硬盘引导,就想没用U盘之前一样。

但是我想从BIOS设置U盘启动呢??
发现设置从U盘启动之后,发生missing operator system的错误,
我估计又是引导的问题,
然后在硬盘的centos系统中按照上述的方法在U盘重建引导
grub>root (hd1,0)
grub>setup (hd1)
grub>quit
#reboot 之后就能从BIOS设置从U盘启动了,也可以设置从硬盘启动,互不干扰了

但是我想想要是想从硬盘的grub引导中去引导进入U盘的系统呢???
我随便进入一个系统,把U盘中的grub.conf文件中的引导项复制到硬盘中的grub.conf中。同样也把硬盘中的grub.conf的引导项复制到U盘中的grub.conf

然后重启,但是无法从硬盘的grub引导去进入U盘中的系统,提示cannot mount parttion,好像是这样的错误,我忘记了。
然后在grub界面按c进入grub尝试手动引导我U盘中的系统,发现个大问题。(注意,此时我是在硬盘的grub中)
发现硬盘的盘符是hd0,而U盘的盘符是hd1
然后想起...而我在上述复制grub.conf的过程中,原来各自都是hd0的。
此时恍然大悟了,然后我尝试把硬盘中的grub.conf中的U盘的引导项的hd0改为hd1
重启,引导,开机成功
同理,也把U盘中的grub.conf的硬盘中的系统的引导项的hd0改为hd1,即可

结论:原来在BIOS中从哪个磁盘启动的话,那个磁盘的grub的引导项就应该是hd0,而引导其他盘的盘符就应该是hd1以上........

(备注:以上U盘后面的区域是空闲的,装好系统后用于将空闲的空间分区,却是在windows下面读不出,原因是无法分派盘符在windows下)(这里可能还由于另外一个问题,就是grub安装地方的问题,就是我没有把MBR也grub的关系搞清楚,等有空再整理下)


如果要让windows能读取装有centos系统的U盘中的其他分区的话,就得把grub安装在磁盘U盘的
我的做法是,U盘前面部分用于一般的储存使用,U盘后面部分用于装centos系统。(也就是先分区,然后再装系统,在装系统的过程中再根据情况把部分分区进行重新分区挂载)
在U盘装完系统之后,在grub下面对U盘重建grub
例如我的U盘在grub下为hd1
hd1,0是一个ntfs分区
hd1,1是ext4类型的分区,在U盘安装系统是挂载/boot
hd1,2是ext4类型的分区,在U盘安装系统是挂载/

在硬盘下的centos系统中进入grub为U盘重建grub引导
grub>root (hd1,1)      #这里要是hd1,1因为这个才是/boot分区,如果是hd1,0的话会提示unknow....因为分区类型是ntfs
grub>setup (hd1)

然后按照以上结论:原来在BIOS中从哪个磁盘启动的话,那个磁盘的grub的引导项就应该是hd0,而引导其他盘的盘符就应该是hd1以上........
去检查grub.conf文件


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值