Chinaunix首页 | 论坛 | 博客
  • 博客访问: 260938
  • 博文数量: 42
  • 博客积分: 1445
  • 博客等级: 上尉
  • 技术积分: 485
  • 用 户 组: 普通用户
  • 注册时间: 2005-05-05 16:21
文章分类

全部博文(42)

文章存档

2011年(1)

2009年(5)

2008年(1)

2007年(1)

2006年(28)

2005年(6)

我的朋友

分类: LINUX

2006-07-11 17:53:55

选用rhel4 apgrade 3作为builder 机器,linux-2.6.7内核,517的硬件环境

制作简介:在DOM上安装grub,用grub启动内核,开辟一块内存做为文件系统,解开DOM上的tar包,放到内存中,switchroot放到内存文件系统上,启动系统,其中裁减内核,减少不必要的服务!

1,编译内核

从网上下载linux kernel,解开,设定环境变量LINUXHOME,
编译内核,make menuconfig ,此步骤生成你想要的.config 文件,顺着编译内核的步骤,make bzImage,make modules ,make modules_install,如果一切ok的话,测试一下你的新内核.

xyb@ab:~$cp $LINUXHOME/arch/i386/boot/bzImage /boot
生成initrd 文件,
xyb@ab:~$mkinitrd /boot/initrd.img 2.6.7
编辑grup.conf文件,用新的内核启动
xyb@ab:~$cat >>/boot/grup/grup.conf < >title linux-2.6.7
>kernel (hd0,0)/boot/bzImage boot=/dev/hda1
>initrd (hd0,0)/boot/initrd.img
>boot
>EOF

如果出现kernel pancil ,那么恭喜,你可能是bzImage 不能启动,initrd.img文件出错,还有就是上面的标红地方,那么你就要do again

如果你没有完成上面的部分,那下面的你也就没必要看了!

2,移植rhel 4到DOM上

都知道,系统启动过程,BIOS加电,BIOS程序从可引导的磁盘的第一扇区读到内层的相应位置,而通常此处放的都是grub之内的引导程序!引导程序加 载内核!你可以到底是怎么你工作的,你可以先删除/boot/grub/grub.conf文件,手工在grub中加载内核,感受一下,可以看出, rhel是先加载内核,而后加载initrd文件

假设你所做的building是在hda1 上,你的DOM是hdc1

(真乱,一边工作,一边写一些文档真的不是一件很完美的事)

xyb@ab:~$grup-install  /dev/hdc1

xyb@ab:~$mount /dev/hdc1 /mnt
安装grup到你hdc1,会在hdc1上生成/boot目录
xyb@ab:~$mount /dev/hdc1 /mnt
xyb@ab:~$cp $LINUXHOME/arch/i386/boot/bzImage /mnt/boot
xyb@ab:~$cp /boot/initrd.img /mnt/boot
修改/mnt/boot/grub.conf,没有就去创建一个

xyb@ab:~$cat >>/mnt/boot/grub.conf
>title linux-2.6.7
>kernel (hd1,0)/boot/bzImage root=/dev/hdc1
>initrd (hd1,0)/boot/initrd.img



阅读(2325) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~