Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 操作系统 > Linux > 编译linux内核步骤
【标  题】:编译linux内核步骤
【关键字】:linux
【来  源】:http://blog.chinaunix.net/article.php?articleId=37472&blogId=5150

编译linux内核步骤

Your Ad Here 本来上个星期就应该写的,拖到现在了。

开机的顺序是:
BIOS
MBR ( 就是 Lilo 或 Grub ) 取得 boot loader;
取得核心 kernel 的资料并加载
init
很多 scripts
login 与 shell

为什么要重新编译内核:
1、内核太庞大
2、与硬件搭配稳定
3、支持新的硬件

编译过程:
1、编译之前先查看内核版本:uname -r
2、下载更新的内核版本升级:http://www.kernel.org
3、解压
#cd /usr/src
#tar zxvf linux-2.4.31.tar.gz
如果怕之前已经有人编译过核心,会产生一些.o的目的档案,所以先执行:
#make mrproper
会显示RM去除档案的讯息
4、如果对同一版本内核编译,要修改一下:
#cd /lib/modules
#mv 2.4.18 2.4.18.old
5、设定编译模式:
make config :这种模式需要逐行输入所需要设定的项目,无法往前修改设定,所以目前很少使用这种方式来设定 Kernel 的项目了;
make xconfig :这种模式则是使用 X-Window 为主要环境的设定模式!除非你有 X-Window 在执行,否则没有办法使用这种模式;
make menuconfig :这种模式有点像是文字界面的选单模式,较为简便,而且可以在纯文字界面下面执行编辑动作!是目前最常使用的模式。
#make menuconfig

# make dep           <==建立相依的属性关系!
# make clean         <==将旧的资料去除掉!
# make bzImage        <==开始编译核心!这个核心是经过压缩的
# make modules       <==开始编译模块!这个动作视您刚刚编译的模块数量!
# make modules_install   <==将资料给他安装在 /lib/modules/`uname -r` 里面
# make install       <==将刚刚 bzImage 建立完成的核心给他安装上来!
6、修改grub:
#vi /boot/grub/menu.lst 增加如下:
title linux-2.4.31
kernel (hd0,0)/boot/vmlinuz-2.4.31 root=/dev/hda1
内核编译完成,重启机器。

几个命令:
depmod:模块的相依性
-a :将 /etc/modules.conf 可以查询到的模块的相关性都写入 /lib/modules/`uname -r`/当中 
-e :显示出目前已加载的不可执行的模块名称 
-n :将各模块的相依性直接输出屏幕上,而不是输出到 /lib/modules/`uname -r` 当中 
-s :将一些讯息结果输出到 syslog 的登录档中!
lsmod:查看系统的模块
modinfo:查看模块的信息
-a :列出作者 
-d :列出这个模块的基本说明 
-n :列出这个模块的档案放置路径与名称
modprobe:加载系统模块
-l:列出系统模块
-c:更详细的列出系统模块
insmod:加载系统模块
-f :强制将模块加载,要加载不相同版本的模块时候可能会用到的参数 
-k :自动在核心没有使用到该模块的时候,先清除干净! 
-p :测试模块是否可以被加载,不会直接加载系统中! 
-s :将一些执行讯息写到 syslog 这种登录档,而不是写到 terminal 当中 
rmmod:删除模块

转载:解析Linux操作系统文件目录:【上一篇】
LINUX 下的 免费翻译软件 <星际译王>:【下一篇】
【相关文章】
  • 转载:解析Linux操作系统文件目录
  • 在Redhat Linux AS 4下实现软件RAID
  • linux 内核的启动部分。
  • 边跑边读LINUX KERNEL
  • 准备好开始读LINUX 内核了吗?
  • Linux 170个常见问题的详细解答
  • LINUX系统目录详解
  • Linux下加挂文件系统小结(zz)
  • linux-几个命令
  • LINUX RH9 第一天。
  • 【随机文章】
  • 初识bash编程
  • 程序文档合一与动态文档
  • 彻底解决Windows XP的互访问题
  • 执行脚本中事件的方法之一
  • FCGI学习笔记(1)
  • 使用ACCESS做网络版程序的四种解决方案
  • C#中类的继承问题04
  • glogal.asa实现定时运行asp程序
  • Task of Comm Testor is OVER !!!
  • OGRE分析之场景管理
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.