ubuntu 替换某一内核模块
流程
方法一
以下配置仅执行一次,并以 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
参考
- How to Compile Just One Kernel Module
- How (recipe) to build only one kernel module?
- How to recompile just a single kernel module?
ubuntu 替换某一内核模块的更多相关文章
- 【Linux】Ubuntu替换阿里源
--------------------------------------------------------- 参考文章:https://www.jianshu.com/p/97c35d569aa ...
- Ubuntu替换清华源或者阿里源
倒腾pygame包的问题(Ubuntu 19.10),安装好pip后,又要安装一个pygame的包,倒腾了两天两夜,硬是因为网络问题(可能被强大的墙阻挡了),安装不成功,后面在网上找了篇帖子,用清华源 ...
- ubuntu的/etc/modules内核模块文件
/etc/modules: 内核模块文件,里面列出的模块会在系统启动时自动加载. /etc/modprobe.d: 存放禁止加载或者加载内核模块脚本的目录. 以下是我增加netfilter模块是的流程 ...
- 给Ubuntu替换阿里的源
1. 阿里巴巴镜像源站点 有所有linux的源的镜像加速. 点击查看介绍 2. 具体配置方法在这里 copy: ubuntu 18.04(bionic) 配置如下 创建自己的配置文件,比如创建文件 / ...
- 在 Ubuntu 14.10 中借用 Windows 的字体
在前一篇随笔中,我详细讨论了字体的分类及用途,也以 Fedora 20 为例,展示了字体配置的思路和方法.我在配置 Fedora 20 系统字体的时候,采用的是一种釜底抽薪的方法,完全抛开了系统原有的 ...
- Ubuntu 14.04 软件源服务器列表
http://wiki.ubuntu.com.cn/Template:14.04source 服务器列表 可将 http://cn.archive.ubuntu.com/ubuntu/ 替换为下列任意 ...
- ubuntu 16.04软件源
来源:模板:16.04source deb http://cn.archive.ubuntu.com/ubuntu/ xenial main restricted universe multive ...
- Ubuntu 14.04 LTS 安装 VNC Viewer
1.修改镜像源: /etc/apt/sources.list将"http://archive.ubuntu.com/ubuntu/"替换为: http://cn.archive.u ...
- U盘安装Ubuntu kylin版
初试U盘安装Ubuntu14.04 kylin版 等待Ubuntu14.04 kylin版出来后,一直想要尝试在物理机进行安装体验,恰巧碰到五一假期,因为咱是穷人,没钱出去玩,所以就有了时间实地进行 ...
随机推荐
- canal 实现Mysql到Elasticsearch实时增量同步
简介: MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品.MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据 ...
- Docker——Registry 通过Shell管理私有仓库镜像
使用方法: 复制代码保存为 image_registry.sh sh image_registry.sh -h #查看帮助 HUB=10.0.29.104:5000 改为自己的地址 #!/bin ...
- Linux自动执行任务
Linux自动执行任务 耗奇害死猫关注 2018.01.04 10:19:45字数 74阅读 142 单次执行用at和batch,周期性任务执行用crontab.任务执行结束后会将结果返回给发起人,通 ...
- 搜狗拼音输入法v9.6a (9.6.0.3568) 去广告精简优化版本
https://yxnet.net/283.html 搜狗拼音输入法v9.6a (9.6.0.3568) 去广告精简优化版本 软件大小:29.2 MB 软件语言:简体中文 软件版本:去广告版 软件授权 ...
- Java反射机制详情(2)
| |目录 运行环境 Java语言的反射机制 Class中的常用方法(获得类的构造方法) Class中的常用方法(获得类的属性) Class中的常用方法(获得类的方法) 反射动态调用类的成员 1.运行 ...
- Locust性能测试工具核心技术@task和@events
Tasks和Events是Locust性能测试工具的核心技术,有了它们,Locust才能称得上是一个性能工具. Tasks 从上篇文章知道,locustfile里面必须要有一个类,继承User类,当性 ...
- TensorFlow用法
TensorFlow用法 什么是TensorFlow TensorFlow是一个开源软件库,用于使用数据流图进行数值计算.图中的节点表示数学运算,而图的边缘表示流动的多维数据数组(张量).这种灵活的体 ...
- 适用于Linux 2的Windows子系统上的CUDA
适用于Linux 2的Windows子系统上的CUDA Announcing CUDA on Windows Subsystem for Linux 2 为了响应大众的需求,微软在2020年5月的构建 ...
- 嵌入式Linux的OTA更新,基础知识和实现
嵌入式Linux的OTA更新,第1部分-基础知识和实现 OTA updates for Embedded Linux, Fundamentals and implementation 更新的需要 一 ...
- Spring Cloud03: Eureka Client 服务提供者
一.创建一个子工程并引入配置如下: <dependency> <groupId>org.springframework.cloud</groupId> <ar ...