当前位置: 首页 > news >正文

RedHat5.8 编译内核驱动 合成initrd.img

/*******************************************************************
 *            RedHat5.8 编译内核驱动 合成initrd.img
 * 说明:
 *     需要编译RedHat5.8的内核驱动,找了一下资料,并操作一下,并编译
 * 一下IO驱动,能够正常运作。
 *
 *                                 2017-3-1 深圳 南山平山村 曾剑锋
 ******************************************************************/

一、参考文档:
    1. Redhat Enterprise Linux内核源码下载网址
        http://ilinuxkernel.com/?p=22
    2. Linux下RPM软件包的安装及卸载
        http://os.51cto.com/art/201001/177866.htm
    3. RedHat5.8更改yum源 
        http://blog.csdn.net/sz_bdqn/article/details/47015863

二、安装RedHat5.8 yum源:
    1. 163 yum源:wget http://mirrors.163.com/.help/CentOS5-Base-163.repo;
    2. 把$releasever替换成5;

三、下载对应版本的Linux Kernel:
    1. 通过shell命令查看Linux Kernel版本:uname -a;
    2. 下载对应版本的Linux Kernel rpm包:ftp://ftp.redhat.com/pub/redhat/linux/enterprise/5Server/en/os/SRPMS/;
    3. 通过rmp命令安装:rpm -ivh <Linux Kernel rpm 包>4. 查看/usr/src/kernels/是否存在对应版本的内核源代码。

四、编译内核:
    1. cd /usr/src
    2. cd redhat/SPECS
    3. rpmbuild –bp –-target=$(uname –m) kernel.spec             # 最后的kernel.spec不一定是这个名字,以当前文件夹文件为准
    4. cd /usr/src/redhat/BUILD/kernel-2.6.18/linux-2.6.18.i686 # 以最后生成的文件夹为准
    5. cp /boot/config-2.6.16-1.2798.fc6 .config                # 以最后拥有的config文件为准
    6. 修改/usr/src/redhat/BUILD/kernel-2.6.18/linux-2.6.18.i686中的Makefile文件:
        VERSION=2
        PATCHLEVEL=6
        SUBLEVEL=18
        EXTRAVERSION= -1.2798.fc6   # 主要是要修改这里的,要跟当前内核的一样,可以通过uname -a查看
    7. make menuconfig              # 如果有需要单独配置的,可以通过这里去配置
    8. make
    9. make modules
    10. make install
    11. make modules_install
    12. 修改/boot/grub/grub.conf文件来满足需求:
        1. 8250.nr_uarts=10         # 串口数
        2. vga=785                  # 用于ALT+CTRL+Fn功能
    13. 其中又遇到过无法识别磁盘的问题,需要重新更新initrd.img文件

五、重新合成initrd.img:
    1. mkinitrd 帮助:
        [root@main1 ~]#  mkinitrd -h
        usage: mkinitrd [--version] [--help] [-v] [-f] [--preload <module>]
               [--force-ide-probe] [--force-scsi-probe | --omit-scsi-modules]
               [--image-version] [--force-raid-probe | --omit-raid-modules]
               [--with=<module>] [--force-lvm-probe | --omit-lvm-modules]
               [--builtin=<module>] [--net-dev=<interface>] [--with-fips]
               [--without-usb] [--without-multipath] [--without-dmraid]
               [--fstab=<fstab>] [--nocompress] <initrd-image> <kernel-version>
        
               (ex: mkinitrd /boot/initrd-2.2.5-15.img 2.2.5-15)
    2. 查看内核版本:
        [root@main1 modules]# pwd
        /lib/modules
        [root@main1 modules]# ls
        2.6.18-308.el5
        [root@main1 modules]# 
    3. 执行命令:
        mkinitrd /boot/initrd-2.6.18-308.el5.img 2.6.18-308.el5

 

转载于:https://www.cnblogs.com/zengjfgit/p/6484676.html

相关文章:

  • Shell编程(三)---控制结构及函数
  • 关于表格中复选框、设置、名称,最后统计的实现
  • 用C#开发Pocket PC数据库应用程序
  • [C/C++]关于C++11中的std::move和std::forward
  • ASP.NET2.0快速入门--使用母版页创建布局
  • spring session配置
  • 创建可分页、可排序的 DataGrid
  • puppet一键部署lnmt
  • Qt绘图案例
  • U3D Invoke() IsInvoking CancelInvoke方法的调用
  • 我们在压力中成长
  • ACE ADMIN中 JQGrid Table(简单实用)
  • 如何从文件读取显示位图?
  • yii2 基本的增删改查
  • *setTimeout实现text输入在用户停顿时才调用事件!*
  • [NodeJS] 关于Buffer
  • 《Javascript高级程序设计 (第三版)》第五章 引用类型
  • CSS选择器——伪元素选择器之处理父元素高度及外边距溢出
  • Docker容器管理
  • HashMap ConcurrentHashMap
  • js算法-归并排序(merge_sort)
  • Laravel 实践之路: 数据库迁移与数据填充
  • learning koa2.x
  • leetcode388. Longest Absolute File Path
  • Mysql优化
  • Sass 快速入门教程
  • spring boot 整合mybatis 无法输出sql的问题
  • 好的网址,关于.net 4.0 ,vs 2010
  • 精益 React 学习指南 (Lean React)- 1.5 React 与 DOM
  • 聊聊redis的数据结构的应用
  • 配置 PM2 实现代码自动发布
  • 软件开发学习的5大技巧,你知道吗?
  • 使用docker-compose进行多节点部署
  • 微信支付JSAPI,实测!终极方案
  • 详解NodeJs流之一
  • 学习ES6 变量的解构赋值
  • const的用法,特别是用在函数前面与后面的区别
  • Play Store发现SimBad恶意软件,1.5亿Android用户成受害者 ...
  • 积累各种好的链接
  • 树莓派用上kodexplorer也能玩成私有网盘
  • 数据库巡检项
  • 新海诚画集[秒速5センチメートル:樱花抄·春]
  • ​第20课 在Android Native开发中加入新的C++类
  • #pragma预处理命令
  • #控制台大学课堂点名问题_课堂随机点名
  • (4) PIVOT 和 UPIVOT 的使用
  • (c语言版)滑动窗口 给定一个字符串,只包含字母和数字,按要求找出字符串中的最长(连续)子串的长度
  • (java版)排序算法----【冒泡,选择,插入,希尔,快速排序,归并排序,基数排序】超详细~~
  • (pojstep1.1.2)2654(直叙式模拟)
  • (阿里云万网)-域名注册购买实名流程
  • (二)Linux——Linux常用指令
  • (附源码)springboot 校园学生兼职系统 毕业设计 742122
  • (源码版)2024美国大学生数学建模E题财产保险的可持续模型详解思路+具体代码季节性时序预测SARIMA天气预测建模
  • (转载)PyTorch代码规范最佳实践和样式指南
  • .chm格式文件如何阅读