天极传媒:
天极网
比特网
IT专家网
52PK游戏网
极客修
全国分站

北京上海广州深港南京福建沈阳成都杭州西安长春重庆大庆合肥惠州青岛郑州泰州厦门淄博天津无锡哈尔滨

产品
  • 网页
  • 产品
  • 图片
  • 报价
  • 下载
全高清投影机 净化器 4K电视曲面电视小家电滚筒洗衣机
您现在的位置: 天极网 > 软件频道 > 操作系统 > Linux>评测>走向Linux系统高手之路 解析内核编译

走向Linux系统高手之路 解析内核编译

论坛整理2007-09-06 15:26我要吐槽

  下载源代码

  Linux内核总是不断发展的,最新的内核Kernel2.6.0对USB2.0予以正式的支持,以及内核模块文件后缀最显著的一个变化由*.o到*.ko等等,我们可以从www.kernel.org下载到tarball的源代码包。

  前期准备

  大家都知道的要先升级“module-init-tools“软件包,否则的话,等你安装内核模块文件的时候,系统会提示你:Warning: you may need to install module-init-tools See http://www.codemonkey.org.uk/post-h...4.21-23.src.rpm。

  进入下载目录下并安装:

  #rpm -e --nodeps modutils (强行卸载原有的modutilsRPM包)  

  #rpm -ivh modutils-2.4.21-23.src.rpm

  (把源代码包安装到了 /usr/src/redhat目录下) 

   #cd /usr/src/redhat/SPECS (进入规范文件目录下)

    #rpmbuild --bb modutils.spec (生成二进制的RPM包)

    #cd ../RPMS/i386 (转入刚生成的二进制的RPM包所在位置) 

   #rpm -ivh modutils*.rpm (刚生成两个[modutils-2.4.21-23.i386.rpm

   与modutils-debuginfo-2.4.21.23.i386.rpm]二进制的RPM包,一起安装吧!)

  因为是在RedHat9.0的平台,RedHat的用户可能还会遇到一些麻烦,我会慢慢说的,除了要以上的升级之外,还有个文件(/etc/rc.d/rc.sysinit)可能有缺陷,因为/proc/ksyms文件在新内核(Kernel2.6.0)中已经没有了,打开文件命令如下:

  #vi /etc/rc.d/rc.sysinit  

  找到:  if ! LC_ALL=C grep -iq nomodules /proc/cmdline 2>/dev/null

   && [ -f /proc/ksyms ]; then  

  USEMODULES=y  fi 

   替换成:  if ! LC_ALL=C

  grep -iq nomodules /proc/cmdline 2>/dev/null;

  then  USEMODULES=y  fi

  也就是把“&& [ -f /proc/ksyms ]”去掉,保存文件(操作之前最好做备份以免删错,这个文件是系统初始脚本,重要的很),这样子内核才能加载模块,当然能启动iptable防火墙了,否则防火墙在新内核中启动时红色的“failed“非常醒目。(请在新内核中核查/proc/sys/kernel/modprobe中的内容是不是: /sbin/modprobe,也可手工注入指令:#echo "/sbin/modprobe" > /proc/sys/kernel/modprobe)。下面开始构造新内核。

作者:佚名责任编辑:原野)

请关注天极网天极新媒体 最酷科技资讯
扫码赢大奖
评论
* 网友发言均非本站立场,本站不在评论栏推荐任何网店、经销商,谨防上当受骗!
热点推荐
微软Windows 10操作系统Win10系统在Win8的基础上对界面、特性以及跨平台方面做了诸多优化。[详细]
Windows 10 新视界 [进入频道][使用技巧][微博互动]
手机整机DIY企业级