zoukankan      html  css  js  c++  java
  • 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
    

    方法二

    以下配置仅执行一次

    $ cd ~
    $ apt-get source linux-image-unsigned-$(uname -r)
    $ cd ./linux-xxx
    $ 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-xxx/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-xxx/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
    

    参考

    本文来自博客园,作者:Legend_Lone,转载请注明原文链接:https://www.cnblogs.com/sun-ye/p/14974527.html

  • 相关阅读:
    将CSV格式的文件导入到数据中
    查询及删除数据重复记录的方法
    创建job
    存储过程动态创建表,以时间给表命名
    索引表空间
    sequence 作为序列插入值不是第一个
    2.类(对象)之间的关系
    1.类和对象
    angularJS1笔记-(1)-多控制器
    angularJS中$apply()方法详解
  • 原文地址:https://www.cnblogs.com/sun-ye/p/14974527.html
Copyright © 2011-2022 走看看