微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > Linux内核升级的基本步骤

Linux内核升级的基本步骤

时间:07-31 来源:互联网 点击:

一、本次内核编译新内核所涉及软件版本

“GCC –version”可查寻GCC版本------4.3.2 20081105(Red Hat 4.3.2-7)

“make –v”可查询 Gnu make版本-----3.81

“ld –V(v)可查询GNU ld版本-----2.18.50.0.9-7。f c10 20080822

“fdformat --versiON”命令检查 util-Linux版本----2.14.1

“insmod –V”检查module-init-tools 版本-----3.5

“tune2fs –version”命令可检查 tune2fs 版本-----1.41.3

“pppd --version”命令可检查pppd version 2.4.4

“isdnctrl 2>1|grep version” 命令可检查isdnctrl version 3.9

二、配置ftp,上传内核代码

ftp配置过程这里不再详细介绍。本次要编译的内核代码版本为2.6.25.8,执行mget指令将内核上传到目标文件,然后执行“tar xvjf linux-2.6.25.8_src.tar.bz2解压内核代码包。

三、配置内核

接下来的内核配置过程比较烦琐,但是配置的适当与否与日后Linux的运行直接相关,有必要了解一下一些主要的且经常用到的选项的设置。配置内核可以根据需要与爱好使用下面命令中的一个:

#make config(基于文本的最为传统的配置界面,不推荐使用)

#make menuconfig(基于文本选单的配置界面,字符终端下推荐使用)

#make xconfig(基于图形窗口模式的配置界面,Xwindow下推荐使用)

#make oldconfig(如果只想在原来内核配置的基础上修改一些小地方,会省去不少麻烦)

#make defconfig(采用默认配置)

对于初学者而言,我们可以先执行“make defconfig”,这样可节省很多工作。然后在执行“make menuconfig”进行下面的配置:

1、选择网卡配置:

Device Drivers --->

[*] Network device support --->

[*] Ethernet (10 or 100Mbit) --->

*> AMD PCnet32 PCI support //VMware 下Linux 系统的网卡驱动

2、选择SCSI 驱动

Device Drivers --->

SCSI device support --->

[*] SCSI low-level drivers --->

*> BusLogic SCSI support //必须要选择BusLogic SCSI 适配器

配置完成后可执行“ls -a”指令查看目标文件夹中会存在.config文件。

在配置时,大部分选项可以使用其缺省值,只有小部分需要根据用户不同的需要选择。

四、编译内核

配置工作完成后,可以执行编译命令:

#make dep

#make clean

#make zImage

#make bzImage

#make modules

#make modules inSTall

#make install

#depmod -a

第一个命令make dep实际上读取配置过程生成的配置文件,来创建对应于配置的依赖关系树,从而决定哪些需要编译而那些不需要;第二命令make clean完成删除前面步骤留下的文件,以避免出现一些错误;第三个命令make zImage和第四个命令make bzImage实现完全编译内核,二者生成的内核都是使用gzip压缩的,只要使用一个就够了,它们的区别在于使用make bzImage可以生成大一点的内核,比如在编译2.4.0版本的内核时如果使用make zImage命令,那么就会出现system too big的错误提示。建议大家使用make bzImage命令。make modules和make modules install分别生成相应的模块和把模块拷贝到需要的目录中。#make install默认会将内核镜像拷贝到/boot 目录下。第八个命令和编译过程并没有关系,它是生成模块间的依赖关系,这样你启动新内核之后,使用modprobe命令加载模块时就能正确地定位模块。

我们可以依次执行#make clean、#make bzImage、#make modules、#make modules install、make install指令。

五、更新

最后我们还需要执行“vim /etc/grub.conf”,修改grub.conf文件中的default的值,选择启动循序。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top