现在的位置: 首页 > 综合 > 正文

linux2.6内核编译方法详述

2013年08月17日 ⁄ 综合 ⁄ 共 1821字 ⁄ 字号 评论关闭
linux2.6内核编译方法详述
2009年05月02日 星期六 下午 09:17
linux2.6内核编译方法详述
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
到此内核编译完成

抱歉!评论已关闭.