linux的grub安装在其它盘(就是不装在MBR上),那grub是如何引导系统的? 30
系统启动的时候是先读MBR中的引导程序,如果grub不装在MBR上,那是怎么知道是用grub来引导的?是如何找到grub来引导的?...
系统启动的时候是先读MBR中的引导程序,如果grub不装在MBR上,那是怎么知道是用grub来引导的?是如何找到grub来引导的?
展开
3个回答
展开全部
如果安装在其它分区的头上,那么那个分区应该设置可引导激活,你可以认为每个分区都有个类似mbr的头结构,但是这需要bios支持,你安装的时候如果选安装grub在linux的安装分区上不是会收到一条警告说可能无法启动么?老主板可能是无法启动,特别是486,386的年代。
ps.关于“AyWizard”网友说的内容,我想这不需要多解释,grub有两部分stage1和stage2,grub-install脚本,以及在grub命令行模式下的install命令,就是存储stage1以及stage2的物理地址在mbr中,stage1的作用就是引导机器去读存在硬盘其它位置的stage2文件,进而实现grub的全部功能,grub全部的核心功能:菜单与命令行全部是由stage2文件实现的——lilo只是由于功能简单而体积小所以能全部装在mbr中,运行lilo命令也需要写入内核在硬盘上的物理位置,你自己做个实验就明白了:
如果你用的是grub,到/boot/grub/下找到stage2,cp它到别处并删除原来的/boot/grub/stage2,再cp回去(注意,是复制删除再复制,而不是mv,mv命令只改变目录从属结构而非物理位置)重启系统,看看grub挂了没?(警告:此操作由于移动了stage2的位置而导致记录在mbr中的stage2位置失效,绝对会造成你的系统无法启动,请预备好grub启动盘再做此实验)
如果你用的是lilo,此实验只要针对内核文件执行以上操作即可看到效果。
综上所述,如果说网友“AyWizard”所说的那种意思,就是安装grub到mbr,只要mbr里有grub的一部分,那就是安装到mbr了,windows可是一点也不用mbr引导的。
ps.关于“AyWizard”网友说的内容,我想这不需要多解释,grub有两部分stage1和stage2,grub-install脚本,以及在grub命令行模式下的install命令,就是存储stage1以及stage2的物理地址在mbr中,stage1的作用就是引导机器去读存在硬盘其它位置的stage2文件,进而实现grub的全部功能,grub全部的核心功能:菜单与命令行全部是由stage2文件实现的——lilo只是由于功能简单而体积小所以能全部装在mbr中,运行lilo命令也需要写入内核在硬盘上的物理位置,你自己做个实验就明白了:
如果你用的是grub,到/boot/grub/下找到stage2,cp它到别处并删除原来的/boot/grub/stage2,再cp回去(注意,是复制删除再复制,而不是mv,mv命令只改变目录从属结构而非物理位置)重启系统,看看grub挂了没?(警告:此操作由于移动了stage2的位置而导致记录在mbr中的stage2位置失效,绝对会造成你的系统无法启动,请预备好grub启动盘再做此实验)
如果你用的是lilo,此实验只要针对内核文件执行以上操作即可看到效果。
综上所述,如果说网友“AyWizard”所说的那种意思,就是安装grub到mbr,只要mbr里有grub的一部分,那就是安装到mbr了,windows可是一点也不用mbr引导的。
展开全部
MBR只有512字节 grub装的下吗?
MBR里第一部分是主引导程序(偏移地址0000H--0088H),它负责从活动分区中装载,并运行系统引导程序。如果装了grub,那么这里会给出grub所在的位置。
MBR里第一部分是主引导程序(偏移地址0000H--0088H),它负责从活动分区中装载,并运行系统引导程序。如果装了grub,那么这里会给出grub所在的位置。
参考资料: http://baike.baidu.com/view/9485.htm
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以由另外一个引导程序运行grub啊
Windows下可用EasyBSD试试
Windows下可用EasyBSD试试
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询