Chinaunix首页 | 论坛 | 博客
  • 博客访问: 105157
  • 博文数量: 21
  • 博客积分: 415
  • 博客等级: 一等列兵
  • 技术积分: 228
  • 用 户 组: 普通用户
  • 注册时间: 2011-07-11 12:17
文章分类

全部博文(21)

文章存档

2014年(1)

2012年(7)

2011年(13)

分类: LINUX

2011-08-07 23:21:54

【原因】
    之前写过一篇关于Linux操作系统bootloader安装于非MBR的方法,可是chainloader***失效了!!(参见我之前的文章)
    失败的原因分析了一下,发现ubuntu在9系列开始便使用了grub2,是第二代,第二代对第一代的接口进行了很大程度的重新实现等等,反正细节我也不懂,大体猜测了,才使得chainloader方法失效。
    不过LGG最后还是解决了,这里总结如下。
 
【条件】
    ubuntu的bootloader安装于ubuntu系统所在分区,即挂载/的分区。
 
【解决方法】
    依然是menu.lst的编写上解决。
 
1 第一种方法:
  1. root (hdx,y)
  2. kernel /boot/vmlinuz-xxx-generic root=/dev/sda6
  3. initrd /initrd.img-xxx-generic
  4. boot
这两个启动文件都是在系统中的,而xxx表示对应的版本号,如果没办法获取可以在windows下面安装一个可以浏览ext分区的工具,LGG使用Diskgen,它带这个功能,然后把数字将xxx替换掉。root(hdx,y)当然就是ubuntu所在的分区了。
    这种方法实际上是利用grub直接加载操作系统的内核然后启动,使用的是windows下面安装的grub而没有使用到ubuntu的bootloader的grub2.
 
2第二种方法:
  1. root (hdx,y)
  2. kernel /boot/grub/core.img
  3. boot
    这个方法其实LGG也不怎么懂,大家了解的可以看下grub2的教程,它的大概作用就是进入grub2的引导过程。这种方法使用到了ubuntu的bootloader,因此可以选择ubuntu的启动方式,比较推荐这样做。
 
【小结】
    ubuntu,你就是不一样啊。
 
阅读(1558) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~