注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

不透明的雾的博客

人生是一次记忆的旅行

 
 
 

日志

 
 
 
 

终于成功编译了Linux内核并让系统正常启动起来了  

2009-02-12 13:37:00|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

首先庆祝一下

不过这个编译过程相当的简单,通过这个过程也让我更深刻的认识了Debian系统的魅力所在(当然还包括一些基于Debian的系统如Ubuntu等)

首先用 apg-get 自动下载并安装一些必要的软件包,包括编译内核需要的kernel-package和ncurses-dev等。如果在内核编译、制作过程中,遇到错误提示说某个软件包不存在的话,同样使用 apt-get install 命令进行下载安装。

apt-get install kernel-package ncurses-dev fakeroot wget bzip2 make patch

cd /usr/src
wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.28.4.tar.bz2
tar xjf linux-2.6.28.4.tar.bz2

http://www.kernel.org 查看最新的内核版本。

切换到新内核的目录

cd linux-2.6.28.4

为了节省时间,执行以下命令从现有内核中获得配置

make oldconfig

执行完此条命令后,会根据新老内核的差异情况,询问你一些问题,如果不确定的话都是用默认(直接按回车)。

以上步骤完成后,执行内核配置程序

make menuconfig

至此,内核的配置就算完成了。按 ESC 多次后退出内核配置页面(在系统询问是否要保存新内核的配置时,当然要选择yes)。

执行以下命令进行新内核的生成!

make-kpkg clean
fakeroot make-kpkg --initrd --append-to-version=ofog --revision=1.0 kernel_image

fakeroot 的作用是在内核的生成过程中暂时性获取root权限(和sudo不同的是fakeroot只是让程序获得root的行为特征而不是真正具备root权限)。如果你直接是用root帐号操作的话,可以省略fakeroot。--append-to-version定义的是内核的软件包名字,类似 kernel-image-2.6.28.4-ofog 这样。而 -revision定义的是软件包的版本。

现在系统会开始进行新内核的生成,屏幕上会有许多文字闪过。注意,如果生成过程中出现错误,执行 make clean 后,用 make menuconfig 重新配置内核。一般都是仔细看错误信息,找到出错的模块,然后将其去除。

内核顺利生成完毕后,会在/usr/src目录下产生一个 deb 包。例如 kernel-image-2.6.28.4-ofog_1.0_i386.deb

执行以下命令安装新内核!

dpkg -i kernel-image-2.6.28.4-ofog_1.0_i386.deb

接着Debian会安装新内核并更新Grub的配置文件。

重新启动(shutdown -r now 或者 reboot)后将会引导到新内核。

  评论这张
 
阅读(205)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017