grub2进入稳定分支


grub2进入稳定分支
 
今天同步portage的是有受到一封news,标题是GRUB2 migration,告诉我grub2已经进入稳定分支,将安装到我的gentoo中,并替代grub legacy。提供了一个很好的文档grub2-igration.xml。以下是我从grub legacy迁移到grub2的过程,希望能提供一些有价值的参考。
 
1、升级到grub2软件包
 
一般在严格按照Handbook安装gentoo的时候,都会安装一个bootloader,Handbook默认曾经是grub,所以你必然执行过
 
[plain] 
# emerge grub  
那么,在你同步portage后升级时
[plain] 
# emerge -uDN world  
grub2会安装到gentoo中,而
[plain] 
# emerge --depclean  
 
会卸载grub legacy。然后你就可以手工删除/boot/grub了,grub.conf和menu.lst也没什么价值可以删了,grub2会重新生成/boot/grub下需要的所有东西。
(现在手册已经改成了
 
[plain] 
# emerge sys-boot/grub:0  
安装grub legacy。
[plain] 
# emerge sys-boot/grub:2  
安装grub2。相信grub2替代grub legacy是趋势,我认为Handbook会在未来某一天还原到emerge grub,而emerge sys-boot/grub:0作为一个额外选择。本括号内都是废话希望没有打扰到你。)
2、配置一些配置文件
 
grub2一切都是自动的。配置文件在/etc/grub.d下,话说这里没有什么可以改动的。还有就是重要的/etc/default/grub。
 
3、安装grub2到/boot/grub,并生成配置文件
 
[plain] 
# grub2-install --grub-setup=/bin/true /dev/sda  
Installation finished. No error reported.  
# grub2-mkconfig -o /boot/grub/grub.cfg  
Generating grub.cfg ...  
Found linux image: /boot/kernel-3.2.12-gentoo  
Found initrd image: /boot/initramfs-genkernel-x86_64-3.2.12-gentoo  
done  
4、(如果你需要)安装grub2到MBR来作为默认bootloader
[plain] 
# grub2-install /dev/sda  
Installation finished. No error reported.  
我的选择:由于我是有XP的ntloader作为我的默认bootloader,ntloader启动grub4dos(PE工具箱),grub4dos启动grub2(gentoo中,随gentoo升级)。我需要grub4dos(实质就是grub legacy,命令相同)链式启动grub2(gentoo中)。
我的/boot就是XP的C:盘,grub4dos的配置文件menu.lst就在C:盘根目录下。反正找到grub4dos的menu.lst,增加
 
[plain] 
title GRUB2 Chainload  
root (hd0,0)  
kernel /boot/grub/i386-pc/core.img  
boot  
就可以通过“GRUB2 Chainload”这个启动项从grub4dos链式启动到grub2。
 
一些问题的答案:
1、你还记得大明湖畔的dolvm么?
 
如果你是用genkernel编译的内核,而且使用了LVM(LVM2)卷管理。你一定还记得那个内核参数dolvm,全部展开形式是:root=/dev/ram0 dolvm real_root=/dev/vg/slash
 
在grub2中加入这个参数的方法如下:
 
[plain] 
vim /etc/default/grub  
GRUB_CMDLINE_LINUX="dolvm  
或者如我这样的旧版Handbook遵循者完美主义者是这样写的:
[plain] 
  
[plain] 
GRUB_CMDLINE_LINUX="dolvm real_root=/dev/vg/slash"  
GRUB_DEVICE=/dev/ram0  
 

相关内容

    暂无相关文章