中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 操作系统 > Linux > Linux综合
编译内核小总结
作者:未知 时间:2005-09-13 22:06 出处:Blog.ChinaUnix.net 责编:chinaitpower
              摘要:编译内核小总结

几点关于内核编译的常识

make modules 只是將 modules 產生在 /usr/src/linux-xxxx 底下。
make modules_install 才會 copy 到 /lib/modules/xxxx 那邊。

mkinitrd 的版本要跟着内核走。旧的要更新。
mkinitrd 是制作initrd.img的脚本。
initrd-version.img,类似ramdisk,把一段程序打包到img里,然后在内存里开辟一段区域,一般是2m,释放到那里运行,都是一些初始化的程序.
如果机器使用的是scsi设备,则一定要做这一步。
因为scsi设备的驱动一般不编译到内核中,而放到initrd.img中
(存疑,如果scsi driver都选成build in,能否不要?)
   
用法
mkinitrd /boot/initrd-2.6.9.img 2.6.9
参数2 2.6.9 代表的是在/lib/modules/xxxx的xxxx
会按照这个目录下的module的内容来生成initrd img

将kernel 和 initrd.img配置好,可用的new-kernel-install 脚本。
这个脚本现在已经写道make install这个target 中了

用法
/sbin/new-kernel-pkg --mkinitrd --depmod --install

如果grub.conf 中的
新添内容
kernel /vmlinuz-2.4.20-8 ro root=LABEL=/
initrd /initrd-2.4.20-8.img
加载失败
可改为
kernel /vmlinuz-2.4.20-8 ro root=/dev/hdax hdc=ide-scsi
这种写法。hdax就是linux 的 / 安装位置,比如目前我的就是hda3

如果没有initrd.img
可以写
no initrd

 

下面是内核配置的内容,
首先这个是请教来的

 

最保险的办法应该是使用第一次安装时生成的 config .

将老的config copy到当前的/usr/src/linux.verson/

然后make oldconfig
这个用法应该是使用上次的config,在这儿就是刚copy过来的那个。


一个常用技巧,在xconfig或gconfig编辑器Options选单下提供了几种非常有用的内核设置选项。
    ◆ Show all options选项。系统显示所有可用的内核设置选项,即使是某选项由于各种原因无法被选取(通常情况下是由于与之相关的选项未被选取)。这一选项可以帮助用户了解所需要的选项是否存在于内核资源中。
    ◆ Show debug info选项。系统显示与帮助窗口中所选选项相关的内核设置变量。这一选项可以帮助用户了解激活其它内核设置选项所需的前提选项。
    ◆ Show Name选项。系统显示与每个内核设置选项相关的内核设置变量的名称,可以帮助确定内核设置变量间的从属关系。

关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有