linux内核模块的依赖性、查看、加载与删除

  1. 《鸟哥的linux私房菜》第20.2小节总结:

  2. 内核模块与依赖性:

    1. 内核模块一般放置在/lib/modules/$(uname -r)/kernel目录下。

    2. 文件/lib/modules/$(uname -r)/modules.dep,记录了内核所支持的各个模块的依赖性。

    3. depmod [-Ane]命令用来生成modules.dep文件。

      1. 不加任何参数:depmod分析所有的内核模块,然后重新写入modules.dep文件。

      2. -A: 查找比modules.dep新的模块,如果找到新模块,才会更新modules.dep。

      3. -n: 不写入modules.dep文件,将结果直接显示在屏幕上。

      4. -e: 显示出目前已加载的,不可执行的模块名称。

  3. 内核模块的查看:

    1. lsmod: 查看目前内核加载了哪些模块。

    2. modinfo [-adln] [module_name]: 查看指定模块的信息。

      1. -a (author): 查看该模块的作者

      2. -d (description): 查看该模块的说明

      3. -l (license): 查看该模块的授权信息

      4. -n: 查看该模块的路径信息。

  4. 内核模块的加载与删除

    1. insmod /full_path/module_name: 加载指定模块。

      1. 需输入模块的完整路径名。

      2. 当待加载的模块存在依赖模块时,加载可能失败。

    2. rmmod [-fw] module_name: 删除指定模块。

      1. -f: 强制删除模块,不论模块是否正在被使用。

      2. -w: 如果模块正在被使用,则等待该模块使用完毕后再删除。

    3. modprobe [-lcfr] module_name

      1. -c: 列出目前系统所有的模块。

      2. -l: 列出目前在/lib/modules/$(uname -r)/kernel/中的所有模块的完整文件名。

      3. -f: 强制加载指定模块。

      4. -r: 删除指定模块。

      5. 示例:

        1. modprobe ipv6.ko // 加载ipv6模块。不需要指定模块的完整路径名。

        2. modprobe -r ipv6.ko // 删除ipv6模块。

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值