zoukankan      html  css  js  c++  java
  • [Linux 运维]/proc/modules 以及内核模块工具

    [Linux 运维] /proc/modules 以及内核模块工具

    1. 基本情况

    这个文件列出了所有load进入内核的模块列表。里面的内容会随着系统使用和配置的变化而变化。这里面的很多信息可以通过lsmod 命令获取

    # cat /proc/modules
    ipv6 334932 54 - Live 0xffffffffa00dd000
    xenfs 5705 1 - Live 0xffffffffa00d8000
    dm_mod 95622 0 - Live 0xffffffffa00b5000
    xen_netfront 18994 0 - Live 0xffffffffa00a4000
    i2c_piix4 11776 0 - Live 0xffffffffa009e000
    i2c_core 29964 1 i2c_piix4, Live 0xffffffffa0090000
    ext3 240580 1 - Live 0xffffffffa003f000
    jbd 80950 1 ext3, Live 0xffffffffa0022000
    mbcache 8193 1 ext3, Live 0xffffffffa001b000
    xen_blkfront 15329 2 - Live 0xffffffffa0013000
    pata_acpi 3701 0 - Live 0xffffffffa000f000
    ata_generic 3837 0 - Live 0xffffffffa000b000
    ata_piix 24409 0 - Live 0xffffffffa0000000
    
    • 第一列: 模块的名字
    • 第二列: 模块的内存大小,单位是bytes
    • 第三列: 被load的次数,0以为着没有被load过
    • 第四列: 是否依赖第三方moudle,列出这些module
    • 第五列: 模块的状态,有LiveLoadingUnloading三种状态
    • 第六列: 模块当前的内核内存偏移位置。这些信息,debug的时候会非常有用。例如一些诊断工具 oprofile

    2. 相关工具

    (1) lsmod

    lsmod的输出,是基于/proc/modules

    Module                  Size  Used by
    ipv6                  334932  54 
    xenfs                   5705  1 
    dm_mod                 95622  0 
    xen_netfront           18994  0 
    i2c_piix4              11776  0 
    i2c_core               29964  1 i2c_piix4
    ext3                  240580  1 
    jbd                    80950  1 ext3
    mbcache                 8193  1 ext3
    xen_blkfront           15329  2 
    pata_acpi               3701  0 
    ata_generic             3837  0 
    ata_piix               24409  0 
    

    (2)insmod

    向内核中插入一个模块

    (3)rmmod

    删除内核中的一个模块

    (4)modprobe

    增加和删除内核中的模块(modprobe - program to add and remove modules from the Linux Kernel),现在比较多的用这个。

    (5)modinfo

    看内核模块的信息:

    # modinfo xen_netfront
    filename:       /lib/modules/2.6.32-504.el6.x86_64/kernel/drivers/net/xen-netfront.ko
    alias:          xennet
    alias:          xen:vif
    license:        GPL
    description:    Xen virtual network device frontend
    srcversion:     5C6FC78BC365D9AF8135201
    depends:        
    vermagic:       2.6.32-504.el6.x86_64 SMP mod_unload modversions 
    

    (6)depmod

    分析可加载模块的依赖性,生成modules.dep文件和映射文件。

  • 相关阅读:
    浙大数据结构课后习题 练习二 7-2 Reversing Linked List (25 分)
    浙大数据结构课后习题 练习二 7-2 一元多项式的乘法与加法运算 (20 分)
    浙大数据结构课后习题 练习一 7-1 Maximum Subsequence Sum (25 分)
    浙大数据结构课后习题 练习一 7-1 最大子列和问题 (20 分)
    PAT Basic 1019 数字黑洞 (20 分)
    PAT Basic 1017 A除以B (20 分)
    PAT Basic 1013 数素数 (20 分)
    PAT Basic 1007 素数对猜想 (20 分)
    PAT Basic 1003 我要通过! (20 分)
    自动化运维——HelloWorld(一)
  • 原文地址:https://www.cnblogs.com/zk47/p/4743209.html
Copyright © 2011-2022 走看看