您的位置:首页 > 运维架构 > Linux

[转]linux2.6内核编译方法详述

2006-05-10 12:05 691 查看
linux2.6内核成功编译1) 需要的工具:     (1) 模块工具:modutils-2.4.21-23.src.rpm

//负责加载模块,在2.4之前是不需要单独编译          //模块存放位置:/lib/modules/内核版本目录/kernel/drivers          //lsmod: 查看已经加载的模块     (2) 源代码:linux-2.6.9.tar.gz         //选择需要编译的部分: 最新内核2.6.9 支持NTFS分区(只读)         //查看现有系统支持的文件系统: cat /proc/filesystems         //显示内核版本:  uname -r
反引号: 当作命令执行 cd /lib/modules/`uname -r`     (3) 可以加上补丁:patch-2.6.9.gz(2) 编译内核的基本步骤    (1) 主要用的编译命令: make make modules_install make install    (2) 基本安装: 安装模块、安装内核
------------------------------------------------------------------------------------------------------------------------------------------------
安装2.6内核的步骤
1 安装模块:(1)执行rpm命令将modutils-2.4.21-23.src.rpm
安装到/usr/src/redhat/SOURCES
//rpm -ivh modutils-2.4.21-23.src.rpm
//模块工具是RPM包安装后默认安装在/usr/src/redhat/SOURCES            (2)在SOURCIES中含有2个文件module-init-tools.tar.gz
modutils-2.4.21.tar.gz
将module-init-tools.tar.gz接压
//tar -xzvf module-init-tools.tar.gz
// modutils-2.4.21.tar.gz文件不是主要要用的,不用接压            (3)module-init-tools.tar.gz文件接压后会有一个
module-init-tools-3.0-pre1

(4)进入到module-init-tools-3.0-pre1  文件夹中
//cd module-init-tools-3.0-pre1              (5)在module-init-tools-3.0-pre1  下编译
//./configure --prefix=/modules然后执行make接着
make install到这模块编译完成
//注释:/modules是自己建立的文件夹,为了以后管理方便
当编译模块完成后在/modules文件下会有bin  man  sbin这3个文件夹            (6)开机自动加载模块编辑/etc/profile
//vi /etc/profile
(7)在/etc/profile文件中在添加 export上面一行                PATH=/modules/bin:/modules/sbin:$PATH            (8)进入到模块的文件夹/modules
进入到其中的sbin中执行一下命令
./generate_modprobe.conf /etc/modprobe.conf
//注释:generate_modprobe.conf在文件sbin中有这个执行命令
/etc/modprobe.conf是自己输入的,是规定的
//以上操作是为了规定init

(9)重新启动计算机,或着source /etc/profile让其本次操作有效
(10)现在开始编译内核将linux-2.6.9.tar.gz接压到/usr/src
//tar -xzvf linux-2.6.9.tar.gz -C /usr/src

(11)接压后在/usr/src会有 linux-2.6.9文件夹            (12)将 linux-2.6.9做一个连接文件
//创建链接文件: ln -s linux-2.6.9/  linux
//创建链接文件是为了方便管理

(13)进入到创建链接文件linux中开始编译内核
首先运行make menuconfig选择要编译的内容,默认也可以
//注释M: 以模块形式加载                     *: 直接编译进内核                    空: 不做操作,不编译
然后执行make
再后执行modules_install
最后执行make install
到此内核编译完成本文转至:http://www.cublog.cn/opera/showart.php?blogid=10723&id=51409
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: