免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1072 | 回复: 0
打印 上一主题 下一主题

ubuntu/debian compile kernel [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-08-22 13:35 |只看该作者 |倒序浏览
1. ubuntu/debian
1)编译内核必须的一些工具:
apt-get install kernel-package libncurses5-dev fakeroot wget bzip2
2)进入内核应存放的目录:
cd /usr/src
3)从官方网站获取最新的内核
wget
http://www.kernel.org/pub/linux/kern....16.20.tar.bz2

finger@kernel.org
查最新稳定的版本)
4)移动内核到/usr/src,建立快捷方式
tar jxvf linux-2.6.16.20.tar.bz2
ln -s linux-2.6.16.20 linux
5)将当前系统使用的内核配置文件复制到新的内核目录下面,
cp /boot/config-2.6.8.2 /usr/src/linux/.config
6)配置内核
a]移动键盘,选中 Load an Alternate Configuration File 项,把.config 调进来,让其默认按此配置加载内核选项,减少编译难度;
b]针对自己机器进行修改;我是新手,只是稍微改了几个地方。大家可以去基础区,找相关帖子参考.
c]保存退出
7)开始编译
cd kernel-source-2.4.18 # 如果这是你的内核源码
cp /boot/config-2.4.18 .config # 将当前配置设定为默认配置
make menuconfig # 按自己的喜好来定制
make-kpkg clean # 必须执行这步(per: man make-kpkg)
fakeroot
make-kpkg --append_to_version -486 --initrd \--revision=rev.01
kernel_image \ modules_image # modules_image 可以是 pcmcia-cs* 等。
$ cd ..
# dpkg -i kernel-image*.deb pcmcia-cs*.deb # 安装
一般
make-kpkg clean
fakeroot make-kpkg --revision=custom.1.0 kernel_image
编译的过程有点漫长,(可能是我的机器比较破,花了50多分钟)结束后,应该在/usr/src下形成个deb包:kernel-image-*.deb
8)下面,安装新的内核:
dpkg -i kernel-image-*.deb
9)制作内存镜像
cd /boot
mkinitrd -o /boot/initrd.img-2.6.16.20 2.6.16.20
10)修改grub
vi /boot/grub/menu.lst,
menu.lst里的信息:
title Debian GNU/Linux, kernel 2.6.12-1-386
root (hd0,0)
kernel /vmlinuz-2.6.12-1-386 root=/dev/hda2 ro
initrd /initrd.img-2.6.12-1-386
savedefault
boot
对照,并填加新内核引导信息
title Debian GNU/Linux, kernel 2.6.16.20
root (hd0,0)
kernel /vmlinuz-2.6.16.20 root=/dev/hda2 ro
initrd /initrd.img-2.6.16.20
savedefault
boot
2. normal
0.  内核创建工作在/usr/src/目录进行,为此,添加src组
bash:~$ sudo adduser my_username src
1. 下载源代码包
sudo apt-get install linux-source
2. 压缩包在/usr/src/linux-source-2.6.12.tar.bz2,解压
tar xjvf linux-source.tar.bz2
3. cd linux-source-2.6.12
make xconfig
此步骤创建.config文件,默认复制了/boot/config-2.6.12-9-386文件
(用到gcc-3.4,安装3.4)
(用xconfig之前需要安装libqt3-mt-dev包)
4. make
5. sudo make modules_install install
在/boot/下生成vmlinuz-2.6.12文件
在/usr/src/linux-source-2.6.12/arch/i386/boot下生成bzImage文件
6. 制作initrd.img
sudo mkinitrd -o /boot/initrd.img-2.6.12 2.6.12
(需要安装bootcd-mkinitrd包)
在/boot/下生成initrd.img-2.6.12文件
7. 修改/boot/grub/menu.lst,添加

title       Ubuntu, kernel 2.6.12(custom)
root        (hd0,7)
kernel      /boot/vmlinuz-2.6.12 root=/dev/hda8 ro quiet splash
initrd      /boot/initrd.img-2.6.12
savedefault
boot

               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/38576/showart_365283.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP