• linux内核模块


    内核模块的查看

    使用 lsmod 命令可以查看系统中到底安装了哪些内核模块。命令如下:

    [root@a kernel]# lsmod | grep vfat
    vfat 17461 0
    fat 65950 1 vfat

    我们还可以使用 modinfo 命令来查看这些模块的说明,命令格式如下:

    [root@localhost ~]# modinfo 模块名 例如:

    [root@a kernel]# modinfo vfat
    filename: /lib/modules/3.10.0-693.el7.x86_64/kernel/fs/fat/vfat.ko.xz
    author: Gordon Chaffee
    description: VFAT filesystem support
    license: GPL
    alias: fs-vfat
    rhelversion: 7.4
    srcversion: A3254796A3CD9815ABDDC94
    depends: fat
    intree: Y
    vermagic: 3.10.0-693.el7.x86_64 SMP mod_unload modversions
    signer: CentOS Linux kernel signing key
    sig_key: DA:18:7D:CA:7D:BE:53:AB:05:BD:13:BD:0C:4E:21:F4:22:B6:A4:9C
    sig_hashalgo: sha256

    内核模块的添加与删除

    其实,如果模块已经下载到本机了,那么安装模块的方法非常简单。首先需要把模块复制到指定位置,一般复制到 /lib/modules/2.6.32-279.el6.i686/kemel/ 目录中,模块的扩展名一般是 *.ko;然后需要执行 depmod 命令扫描这些新模块,并写入 modules.dep 文件;最后就可以利用 modprobe 命令安装这些模块了。命令格式如下:

    [root@localhost ~]# modprobe [选项] 模块名

    选项:

    • -I:列出所有模块的文件名,依赖 modules.dep 文件;
    • -f:强制加载模块;
    • -r:删除模块;


    举个例子,我们需要安装 vfat 模块(fat32 文件系统的模块),那么需要执行如下命令即可

    [root@a kernel]# lsmod | grep vfat
    [root@a kernel]# modprobe vfat
    [root@a kernel]# lsmod | grep vfat
    vfat 17461 0
    fat 65950 1 vfat
    [root@a kernel]# modprobe -r vfat
    [root@a kernel]# lsmod | grep vfat

    [root@a kernel]#

    定义模块的文件路径,与系统启动流程有关

    [root@a systemd]# cd /usr/lib/systemd
    [root@a systemd]# ls | grep rhel-loadmodules
    rhel-loadmodules
    [root@a systemd]# cat rhel-loadmodules
    #!/bin/bash

    # Load other user-defined modules
    for file in /etc/sysconfig/modules/*.modules ; do
    [ -x $file ] && $file
    done

    # Load modules (for backward compatibility with VARs)
    if [ -f /etc/rc.modules ]; then
    /etc/rc.modules
    fi
    [root@a systemd]#

    添加模块,并设为开机自启动

    [root@a systemd]# which modprobe
    /usr/sbin/modprobe
    [root@a systemd]# vim  /etc/rc.modules
    /usr/sbin/modprobe vfat

    或者是

    [root@a systemd]# vim   /etc/sysconfig/modules/vfat.modules 
    /usr/sbin/modprobe vfat

    [root@a systemd]# ll /etc/rc.modules
    -rw-r--r-- 1 root root 25 Aug 14 22:40 /etc/rc.modules
    [root@a systemd]# chmod a+x /etc/rc.modules
    [root@a systemd]# ll /etc/rc.modules
    -rwxr-xr-x 1 root root 25 Aug 14 22:40 /etc/rc.modules
    [root@a systemd]#

    [root@a systemd]# reboot

    Connection closed by foreign host.

    Disconnected from remote host(192.168.0.160) at 22:44:07.

    Connecting to 192.168.0.160:22...
    Connection established.

    WARNING! The remote SSH server rejected X11 forwarding request.
    Last login: Wed Aug 14 20:26:38 2019 from 192.168.0.104
    [root@a ~]# lsmod | grep vfat
    vfat 17461 0
    fat 65950 1 vfat

    查看内核中所有模块以及别名的命令是modprobe -c

    [root@a ~]# modprobe -c | grep vfat
    alias fs_vfat vfat

  • 相关阅读:
    codefoeces problem 671D——贪心+启发式合并+平衡树
    bzoj 1598: [Usaco2008 Mar]牛跑步
    bzoj 1050: [HAOI2006]旅行comf&&【codevs1001】
    codefoeces 671 problem D
    利用FFMPEG以及EasyRTMP实现读取H.264文件推RTMP视频流的两种方式
    视频流拉转推工具对比:EasyRTSPLive和FFMPEG拉转推效果对比
    TSINGSEE青犀视频Webrtc实时通信的构建流程:PeerConnection对等通信的实现方式
    TSINGSEE青犀视频云边端架构产品编译Intel Media SDK 编译报错error"SSE4.1 instruction set not enabled"
    H.265编码视频在web网页实现无插件播放,应该通过软解码还是硬解码?
    【案例分析】EasyDSS+EasyCVR融合共享解决方案
  • 原文地址:https://www.cnblogs.com/xiaofeng666/p/11355123.html
Copyright © 2020-2023  润新知