




全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
以 CentOs5 为例。一、获取内核源码文件。从下载内核源码包(linux-.tar.gz)。# cp linux-.tar.gz /home/hover/linux/kernel# tar -xvzf linux-.tar.gz二、配置内核。1. 进入内核文件所在目录。 # cd /home/hover/linux/kerne/linux-2. 运行命令 make mrproper ,以确保源文件处于一致、干净的状态。这个命令会删除内核配置文件.config(如果有的话)。3. 使用配置工具设置内核选项。# make config (基于文本的最为传统的配置界面,由于有几百个问题要回答,一般使用其它的配置工具。)# make menuconfig (基于文本选单的配置界面)# make xconfig (基于图形窗口模式的配置界面)# make oldconfig (使用已有的内核配置文件,仅提示一些新的特性。)选择相应的配置时,有三种选择:“Y” 将该功能编译进内核“N” 不将该功能编译进内核“M” 将该功能编译成可以在需要时动态插入到内核中的模块。make menuconfig其余默认就可以了,但必须包含下面的:general setup 否则会出现下面描述的第2个Volume group VolGroup00 not found三、编译内核。1. make(编译内核),好像2.6内核已经不需要make dep和make bzImage了2. make modules(编译模块)3. make modules_install(安装模块)一旦模块被编译,它们须被拷贝到相应的子目录/lib/modules下,make modules_install 命令执行这一任务。 模块在系统中的标准目录位于/lib/modules/x.y.z,后面的x.y.z是版本号。4. make install 通过执行以下步骤完成安装。 (1)把压缩内核映象拷贝到/boot目录下, 并创建相应的System.map符号链接; (2)修改bootloader的配置文件; (3)调用mkinitrd程序创建内核的initrd映象. 对于GRUB而言, 将在/boot/grub/grub.conf配置文件增加如下类似的配置行:5.reboot(重启)重启后会出现如下问题:1. Insmod: error insert /lib/dm-region-hash.ko: -1 File exist解决方法:1,解压initrd文件rootbogon # cp /boot/initrd-.img /tmprootbogon # cd /tmp/rootbogon tmp# lsinitrd-.imgrootbogon tmp# mkdir newinitrdrootbogon tmp# cd newinitrd/rootbogon newinitrd# zcat ./initrd-.img | cpio -i11537 blocks释放之后看到如下内容rootbogon newinitrd# lsbin dev etc init lib proc sbin sys sysroot2下边就是编辑init,删掉其中重复的四行中的两行echo Loading dm-region-hash.ko moduleinsmod /lib/dm-region-hash.koecho Loading dm-region-hash.ko moduleinsmod /lib/dm-region-hash.ko3,重新打包initrdrootbogon newinitrd# find . | cpio -c -o ./initrd11538 blocksrootbogon newinitrd# cd .rootbogon tmp# gzip -9 initrd.imgrootbogon tmp# lsinitrd-.img initrd initrd.img newinitrd好了,initrd.img就是重新打包的initrd了,然后把initrd.img拷贝到/boot,修改为initrd-.img,这样“insmod: error inserting /lib/dm-region-hash.ko : -1 File exists” 就不会有了。其实将init文件的第二行“setquiet” 去掉,你就知道initrd文件到底在做什么了2. 编译内核 Volume group VolGroup00 not found 解决方法编译内核后重启显示Reading all physical volumes. This may take a while No volume groups found Volume group VolGroup00 not found解决方法: 设置.config文件, 添加:CONFIG_SYSFS_DEPRECATED_V2=Y 即 :general setup*enable deprecated sysfs features.(这步解决了我的问题) 重新再编译一次. 2.Linux 2.6新内核启动问题解决方法:编译过程应该没有太大的问题,可能需要花点时间等待。启动过程中,笔者遇到了下面2个问题,后来经过google,成功解决。2.1 问题1:启动过程中出现Volume group “VolGroup00” not found的问题。该问题是我make menuconfig的时候,有些选项没有选择,如果按照上面笔者提到的内容选择,应该没有该问题了。 以下方法是网上搜索到的,但是没有尝试过,不知道是否能解决。修改/usr/src/linux-2.6.25/drivers/message/fusion/mptbase.c文件,增加解决Vmware BUG的语句 pfacts-IOCStatus = le16_to_cpu(pfacts-IOCStatus); pfacts-IOCLogInfo = le32_to_cpu(pfacts-IOCLogInfo); pfacts-MaxDevices = le16_to_cpu(pfacts-MaxDevices); /*-Fix VMware bug Start-*/ if(pfacts-MaxDevices = 0) pfacts-MaxDevices = 16; /*-Fix VMware bug END-*/ pfacts-PortSCSIID = le16_to_cp
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小学政治思品人教部编版一年级上册(道德与法治)14 健康过冬天教案设计
- 一年级品德与社会下册 春天说了什么1教学设计 浙教版
- 小学人教部编版第八单元习作:漫画的启示公开课教学设计
- 外研版 (一年级起点)一年级下册unit 2 How many green birds教案
- 无成人陪伴儿童服务流程
- 食道癌护理新进展
- 三方合同:共同发展战略合作
- 小学统编版(2024)怎么都快乐教学设计
- 中国蜜蜂产品购销合同协议书范本
- 二手家具交易合同
- 第20课《一滴水经过丽江》课件(共40张PPT)-部编版语文八年级下册
- 招商银行入职培训招商银行新员工试题
- (通用版)医院收费员考试试题及答案
- 威海职业学院学籍档案簿
- 个人有关事项报告表(全)
- 锤击预应力管桩文明施工与环境保护
- 质量管理体系七项原则
- 装饰装修工程中的危险源辨识与风险评价表参考模板范本
- 班主任经验交流一等奖课件
- 国航特殊餐食代码表
- 中国肉牛产业链分析报告
评论
0/150
提交评论