Chinaunix首页 | 论坛 | 博客
  • 博客访问: 966155
  • 博文数量: 113
  • 博客积分: 7235
  • 博客等级: 少将
  • 技术积分: 2101
  • 用 户 组: 普通用户
  • 注册时间: 2008-07-14 11:24
文章分类

全部博文(113)

文章存档

2013年(7)

2012年(5)

2011年(6)

2010年(8)

2009年(15)

2008年(72)

分类: LINUX

2008-11-08 18:40:02

第一步 安装必要的工具

首先要安装必要的包。

包有:libncurses5-devmenuconfig需要的)和essential

sudo apt-get install build-essential kernel-package

sudo apt-get install make

sudo apt-get install gcc

另外,查看系统是否有这样的两个命令

mkinitramfs mkisofs

这两个工具在编译内核时用来生成 *.img文件的。如果没有就需安装。

第二步 下载内核

下载新内核。我下载的是2.6.28:

http:///pub/linux/kernel/v2.6/linux-2.6.28.tar.gz

原内核为2.6.26(我用的是debian系统)

第三步 编译前的准备

察看当前内核的版本

niutao@niutao:~$ uname -a

Linux niutao 2.6.28 #0 SMP Sat Mar 28 14:10:03 CST 2009 i686 GNU/Linux

niutao@niutao:~$

建议最好下载比当前已安装版本高的内核

解压linux-2.6.28.tar.gzlinux-2.6.28

cd /usr/src

sudo tar zxvf linux-2.6.28.tar

cd linux-2.6.28/

第四步 开始编译

cd /usr/src/linux-2.6.28 #以下所有的工作都在/usr/src/linux-2.6.28下完成

sudo make menuconfig  #menuconfig的话还需要Ncurses,或者用

sudo make xconfig

sudo make menuconfig  #一般是用menuconfig

 

配置完以后保存(系统中保存的一份内核配置文件是在/usr/src/linux-2.6.28下名为.config,你也可以自己在别的地方另存一份)

也可以cp原来在/boot目录下的config-2.6.xx 到当前目录下,在make menuconfig是使用这个配置文件。

sudo make -j2 可以分两个线程来进行编译工作

sudo make bzImage #编译内核,将保存到/usr/src/linux-2.6.28/arch/i386/boot/

sudo make modules #编译模块

sudo make modules_install #安装模块

sudo mkinitramfs -o /boot/initrd-2.6.28.img 2.6.28

sudo make install #安装内核

安装完后/boot下将增加以下几个文件(用ls -l *28*查看)

niutao@niutao-desktop:/boot$ ls -l *28*

-rw-r-r- 1 root root    85203 2008-03-14 22:28 config-2.6.28

-rw-r-r- 1 root root 37968871 2008-03-15 08:31 initrd-2.6.28.img

-rw-r-r- 1 root root   932315 2008-03-14 22:28 System.map-2.6.28

-rw-r-r- 1 root root  1858864 2008-03-14 22:28 vmlinuz-2.6.28

niutao@niutao-desktop:/boot$

/boot/grub/menu.lst中添加一个新的启动项,如我的menu.lst增加了如下一段文字

title            Debian, kernel 2.6.28

root            (hd0,0)

kernel          /boot/vmlinuz-2.6.28 root=/dev/sda12 ro

initrd          /boot/initrd-2.6.28.img

 

从新启动即可。

 

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

chinaunix网友2009-05-07 20:12:21

谢谢你及时的回复啊。。。 呵呵 前段时间是考试。。现在才看到你的回复,我再试下,有什么问题再请教你哦。

niutao.linux2009-04-24 18:51:24

那个是以前转载的,现在的这个是我真正升级自己内核的过程,这个可以~~

chinaunix网友2009-04-24 01:59:31

修改menu.list,加入以下内容(从既有的menu.list中相关的内容拷贝): title zp, make defconfig, 2.6.17.13 root (hd0,2) kernel /boot/mynewkernel/vmlinuz-2.6.17.13 root=/dev/sda3 ro quiet splash savedefault :请问,这里有root=/dev/sda3 ro quiet splash是什么意思呢?我试过很多次都不行,还有,不需要设置那个沤心initrd吗??谢