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版出来后,一直想要尝试在物理机进行安装体验,恰巧碰到五一假期,因为咱是穷人,没钱出去玩,所以就有了时间实地进行 ...
随机推荐
- S7 Linux用户管理及用户信息查询命令
7.1 useradd:创建用户 7.2-5 usermod 7.6 passwd:修改用户密码 7.7-9 chage.chpasswd.su 7.10-11 visudo.sudo 7.12-7. ...
- python工业互联网应用实战16-前后端分离模式之修改与删除
前一章节介绍了List页面的JQuery技术栈的迁移,这一章节我们花一些篇幅来说说修改/查看页面的技术栈迁移.相对于List的获取数据,修改页面涉及到数据Post提交到后台更新数据库.我们仍旧小步迭代 ...
- 域名更换为itwxe.com
域名 uukongjian.com 更换为 itwxe.com,笔名 SunnyBear 更改为 IT王小二. 一.前言 4 月 21 号域名备案通过,开始折腾新买的服务器,本来这篇文章在 5 月 1 ...
- salesforce零基础学习(一百零三)项目中的零碎知识点小总结(五)
本篇参考:Salesforce Admin篇(四) Security 之Two-Factor Authentication & Single Sign On https://developer ...
- Qt开发技术:图形视图框架(二)场景QGraphicsScene、QGraphicsItem与QGraphicsView详解
前话 Qt的图形视图框架,最核心的三个类为:QGraphicsScene.QGraphicsItem与QGraphicsView. 基于图形框架的高级白板软件Demo QGraphicsSce ...
- Paddle Inference推理部署
Paddle Inference推理部署 飞桨(PaddlePaddle)是集深度学习核心框架.工具组件和服务平台为一体的技术先进.功能完备的开源深度学习平台,已被中国企业广泛使用,深度契合企业应用需 ...
- Camera HDR Algorithms
Camera HDR Algorithms HDRI是High-Dynamic Range(HDR)image的缩写,也就是高动态范围图像.它就是为了解决更好的存储高动态范围图像这个问题而发明出来的. ...
- OFRecord 数据集加载
OFRecord 数据集加载 在数据输入一文中知道了使用 DataLoader 及相关算子加载数据,往往效率更高,并且学习了如何使用 DataLoader 及相关算子. 在 OFrecord 数据格式 ...
- 黎曼曲面Riemann Surface
黎曼曲面Riemann Surface A Riemann surface is a surface-like configuration that covers the complex plane ...
- 解决redis集群版本不一致导致RDB同步失败的问题
某天,运维反馈某两个机房的出口流量和入口流量过大,并且持续了好一段时间. 再仔细排查后发现是 redis 集群的几台服流量问题,于是开始查日志. 在日志中发现出现大量的 Can't handle RD ...