Linux驱动管理

Posted williamzheng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux驱动管理相关的知识,希望对你有一定的参考价值。

一、驱动更新

本示例为更新网卡驱动,把新的驱动文件放到/root/目录下,然后执行下面的命令

  1. 备份已有的文件,将新的文件复制的相应位置

     mv /lib/modules/`uname -r`/kernel/drivers/net/ethernet/intel/i40e/i40e.ko /tmp
     cp /root/i40e.ko /lib/modules/`uname -r`/kernel/drivers/net/ethernet/intel/i40e/i40e.ko
  2. 更新驱动依赖并生成新的initram

     depmod 
     dracut -f
  3. 将已经加载的老驱动卸载,然后加载新的驱动

     modprobe -r i40e
     modprobe i40e
  4. 确保新的驱动版本是2.4.10

     lsmod |grep i40e
     modinfo i40e
  5. 确保输出整个目录下面只有一个i40e.ko文件

     cd /lib/modules/`uname -r`/
     find . |grep i40e.ko

    技术图片

  6. cat modules.dep|grep i40e的输出也显示只有一行

     cat modules.dep|grep i40e

    技术图片

  7. 然后对相应的口子进行up,使用ethtool确定口子是否能起来

     ip link set ethx up
     ethtool ethx

二、重载驱动

先rmmod卸载,然后再modprobe加载,也可以直接modprobe加载

rmmod ipmi_devintf
rmmod ipmi_si
rmmod ipmi_msghandler
然后再把这3个modprobe回去
modprobe ipmi_devintf
modprobe ipmi_si
modprobe ipmi_msghandler

以上是关于Linux驱动管理的主要内容,如果未能解决你的问题,请参考以下文章

Linux设备驱动-内核如何管理设备号

Linux 设备驱动模型

:Linux电源管理的系统架构和驱动

disk磁盘管理与Linux驱动编写

linux设备驱动归纳总结:1.时间管理与内核延时

Linux 驱动开发:USB无线wifi驱动开发(MT7601)完成WIFI管理工具安装