流程

方法一

以下配置仅执行一次,并以 linux kernel 3.13.0 为例

$ cd ~
$ apt-get source linux-source-3.13.0
$ cd linux-3.13.0
$ cp -v /boot/config-$(uname -r) ./.config
$ make oldconfig
$ make prepare
$ make scripts

对于每个内核版本,需要只需要以下命令,并以 rdma_rxe.ko为例进行说明

$ apt-get install linux-headers-$(uname -r)
$ cd ./linux-3.13.0
$ cp -v /usr/src/linux-headers-$(uname -r)/Module.symvers .
$ mv -v /lib/modules/$(uname -r)/kernel/drivers/infiniband/sw/rxe/rdma_rxe.ko /lib/modules/$(uname -r)/kernel/drivers/infiniband/sw/rxe/rdma_rxe.ko.backup

修改模块源代码并编译安装

$ cd ./linux-3.13.0/drivers/infiniband/sw/rxe
$ vim rxe.c
$ make -C /lib/modules/$(uname -r)/build M=$(pwd) modules
$ make -C /lib/modules/$(uname -r)/build M=$(pwd) modules_install # This will install the kernel module in /lib/modules/$(uname -r)/extra/
# try the following if make modules_install fail
# sudo cp ./linux-3.13.0/drivers/infiniband/sw/rxe/rdma_rxe.ko /lib/modules/$(uname -r)/kernel/drivers/infiniband/sw/rxe/
# sudo depmod
$ modprobe -r rdma_rxe
$ modprobe rdma_rxe

方法二

以下配置仅执行一次,并以 linux kernel 3.13.0 为例

$ cd ~
$ apt-get source linux-source-3.13.0
$ cd ./linux-3.13.0
$ mv -v /lib/modules/$(uname -r)/kernel/drivers/infiniband/sw/rxe/rdma_rxe.ko /lib/modules/$(uname -r)/kernel/drivers/infiniband/sw/rxe/rdma_rxe.ko.backup

修改模块源代码并编译安装

$ cd ./linux-3.13.0/drivers/infiniband/sw/rxe
$ vim rxe.c
$ make -C /lib/modules/$(uname -r)/build M=$(pwd) modules
$ make -C /lib/modules/$(uname -r)/build M=$(pwd) modules_install # This will install the kernel module in /lib/modules/$(uname -r)/extra/
# try the following if make modules_install fail
# sudo cp ./linux-3.13.0/drivers/infiniband/sw/rxe/rdma_rxe.ko /lib/modules/$(uname -r)/kernel/drivers/infiniband/sw/rxe/
# sudo depmod
$ modprobe -r rdma_rxe
$ modprobe rdma_rxe

参考

ubuntu 替换某一内核模块的更多相关文章

  1. 【Linux】Ubuntu替换阿里源

    --------------------------------------------------------- 参考文章:https://www.jianshu.com/p/97c35d569aa ...

  2. Ubuntu替换清华源或者阿里源

    倒腾pygame包的问题(Ubuntu 19.10),安装好pip后,又要安装一个pygame的包,倒腾了两天两夜,硬是因为网络问题(可能被强大的墙阻挡了),安装不成功,后面在网上找了篇帖子,用清华源 ...

  3. ubuntu的/etc/modules内核模块文件

    /etc/modules: 内核模块文件,里面列出的模块会在系统启动时自动加载. /etc/modprobe.d: 存放禁止加载或者加载内核模块脚本的目录. 以下是我增加netfilter模块是的流程 ...

  4. 给Ubuntu替换阿里的源

    1. 阿里巴巴镜像源站点 有所有linux的源的镜像加速. 点击查看介绍 2. 具体配置方法在这里 copy: ubuntu 18.04(bionic) 配置如下 创建自己的配置文件,比如创建文件 / ...

  5. 在 Ubuntu 14.10 中借用 Windows 的字体

    在前一篇随笔中,我详细讨论了字体的分类及用途,也以 Fedora 20 为例,展示了字体配置的思路和方法.我在配置 Fedora 20 系统字体的时候,采用的是一种釜底抽薪的方法,完全抛开了系统原有的 ...

  6. Ubuntu 14.04 软件源服务器列表

    http://wiki.ubuntu.com.cn/Template:14.04source 服务器列表 可将 http://cn.archive.ubuntu.com/ubuntu/ 替换为下列任意 ...

  7. ubuntu 16.04软件源

    来源:模板:16.04source   deb http://cn.archive.ubuntu.com/ubuntu/ xenial main restricted universe multive ...

  8. Ubuntu 14.04 LTS 安装 VNC Viewer

    1.修改镜像源: /etc/apt/sources.list将"http://archive.ubuntu.com/ubuntu/"替换为: http://cn.archive.u ...

  9. U盘安装Ubuntu kylin版

    初试U盘安装Ubuntu14.04 kylin版  等待Ubuntu14.04 kylin版出来后,一直想要尝试在物理机进行安装体验,恰巧碰到五一假期,因为咱是穷人,没钱出去玩,所以就有了时间实地进行 ...

随机推荐

  1. head tail diff -c fff hhh 前5行 后5行 区别 动态显示文本最新信息: $tail -f crawler.log

    显示文件第一行: $head -1 filename 显示文件倒数第五行: $tail -5 filename ]# tail -5 test.py option=sys.argv[1] main(o ...

  2. 30-- A 代码记录分析

    张的代码 30--  -A if(BT_INFO.RX.CACHE == BT_RX_CACHE[0]) { BT_INFO.RX.CACHE = BT_RX_CACHE[1]; } else { B ...

  3. Linux进阶之Linux中的标准输入输出

    Linux中的标准输入输出 标准输入0    从键盘获得输入 /proc/self/fd/0 标准输出1    输出到屏幕(即控制台) /proc/self/fd/1 错误输出2    输出到屏幕(即 ...

  4. Java 中布尔(boolean)类型占用多少个字节

    为什么要问这个问题,首先在Java中定义的八种基本数据类型中,除了其它七种类型都有明确的内存占用字节数外,就 boolean 类型没有给出具体的占用字节数,因为对虚拟机来说根本就不存在 boolean ...

  5. 关于typedef的用法总结-(转自Bigcoder)

    不管实在C还是C++代码中,typedef这个词都不少见,当然出现频率较高的还是在C代码中.typedef与#define有些相似,但更多的是不同,特别是在一些复杂的用法上,就完全不同了,看了网上一些 ...

  6. BUCK BOOST学习总结

    首先对于我这种电源方面的小白来说 关于电源用的最多的就是线性稳压了 开关类的如  TI 的TPS系列  我是只知道应用电路而不知道具体原理的 但是长此以往也不是个办法 于是今天就带打家详细的来讲一下 ...

  7. JRebel插件使用详解(IDEA热部署)(Day_44)

    JRebel插件使用详解 简介 JRebel是一套JavaEE开发工具. Jrebel 可快速实现热部署,节省了大量重启时间,提高了个人开发效率. JRebel是一款JAVA虚拟机插件,它使得JAVA ...

  8. 常用数据库连接池配置及使用(Day_11)

    世上没有从天而降的英雄,只有挺身而出的凡人. --致敬,那些在疫情中为我们挺身而出的人. 运行环境 JDK8 + IntelliJ IDEA 2018.3  优点: 使用连接池的最主要的优点是性能.创 ...

  9. Java中生成唯一标识符的方法

    有时候业务需要生成唯一标识符,但又不能依赖于数据库中自动递增的字段产生唯一ID,比如多表同一字段需要统一一个唯一ID,此时我们就需要用程序来生成一个唯一的全局ID. UUID UUID是指在一台机器上 ...

  10. Redux 原理和简单实现

    前端开发中React + Redux 是大部分项目的标配,Redux也是我喜欢的库之一,他的源码也拜读过几遍,每次都有很多收获,尤其他的中间件设计模式,对自己封装一些库提供了思想上的指导. Redux ...