标题:
x86内核的配置,编译,及安装
[打印本页]
作者:
苹果也疯狂
时间:
2015-6-30 21:32
标题:
x86内核的配置,编译,及安装
为掌握在
x86
的平台下,实现从配置文件到安装内核的完整过程,需经如下步骤:
(1)
解压内核。现以
linux2.6.29
为例,将
linux2.6.29
压缩文件拷贝到虚拟机
linux
的目录下,解压在当前的目录,解压命令用
: #tar jxvf linux.2.6.29.tar.bz2
,由于所解压文件是以
bz2
结尾的,故使用
jxvf
。有些时候在
linux
下需用
zxvf
,具体文件,具体分析
.
(2)
清除中间文件,配置文件。由于所解压的内核是完整的。内核附带一些中间文件,配置等文件,我们得清除这些才可以重新配置符合我们要求的内核
# make distclean
(3)
选择参考配置文件。将需要的参考配置文件拷贝到所解压的目录下,所需命令:
#cp
/boot/config-2.6.18
(
要求的配置文件
)
.config 主要是配置目系统所需要的文件,该文件包含一系列信息,例如,cpu的型号,网络协议,网卡型号等等
(4)
配置内核。在当前目录下输入
#make menuconfig
,将出现一个配置界面,通过说明,然后选择要选择的模块
(5)
编译内核。内核的配置文件和内核配置已选择好,现需要将新的状态编译,以使编译后的文件是满足要求的内核,命令:
#make bzImage
,编译之后,如果成功,则会在
arch/x86/boot/
下生成一个
bzImage
的内核文件,反之,有错误提示
(6)
编译内核模块。
#make modules
(7)
安装内核模块。
#make modules_install
注:在编译安装成功后,编译好的内核模块会从内核代码目录下拷贝到
/lib/modules
下。如果之前有设置,则拷贝在
/lib/modules
的相关目录下
(8)
制作
init ramdisk
Initramdik
的作用:使得内核可以对
ramdisk
进行格式化,也可以将系统的内容加载到
ramdisk
下,将
ramdisk
作为根文件系统
命令:
mkinitrd initrd-2.6.29
2.6.29
,完成后将在当前目录下会生成
initrd-2.6.29
(9)
安装内核,将新制成的内核和
initrd-2.6.29
根文件系统拷贝到
/boot/
下
命令:
cp arch/x86/boot/bzImage/boot/vmlinuz-2.6.29
// vmlinux-2.6.29
为内核
然后将根文件系统也一起拷贝过去
命令:
cp initrd-2.6.29
/boot/ // initrd-2.6.29
为
ramdisk
为了让
grup
在启动的时候可以选择新配置的内核,在
linux
下需要修改内核启动配置文件
#vi /etc/grub.config 注意:有些系统是grub.conf
在文件的结尾加上如下几句
title my linux(2.6.29)
root (hd0, 0)
kernel /vmlinuz-2.6.29ro root=LABEL=/ rhgb quit
initrd /initrd-2.6.29
(10)
测试新安装的内核能否启动,重新启动虚拟机,
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/)
Powered by Discuz! 7.0.0