2024年11月如何对Linux系统内核进行模块管理?

发布时间:

  ⑴Linux内核分为几个模块,这样既方便管理,也可以方便增加新模块,从而丰富Linux系统的功能。下面就从内核模块路径和查看内核模块等方面来介绍一下,如何对Linux系统内核进行模块管理?

  ⑵一、内核模块存放位置

  ⑶Linux内核模块文件的命名方式通常为,CentOS .系统的内核模块被集中存放在/lib/modules/`uname -r`/[]目录下(uname -r获得的信息为当前内核的版本号。下面通过几个实例说明对内核模块的基本操作。

  ⑷二、 查看已加载内核模块

  ⑸lsmod命令用来显示当前Linux内核模块状态,不是使用任何参数会显示当前已经加载的所有内核模块。输出的三列信息分别为模块名称、占用内存大小、是否在被使用,如果第三列为则该模块可以随时卸载,非则无法执行modprobe删除模块。

  ⑹.[rootcentos ~]# lsmod

  ⑺.Module Size Used by

  ⑻.bridge

  ⑼.stp bridge

  ⑽.llc bridge,stp

  ⑾.autofs

  ⑿.sunrpc

  ⒀.ipt_REJECT

  ⒁.nf_conntrack_ipv

  ⒂.nf_defrag_ipv nf_conntrack_ipv

  ⒃.iptable_filter

  ⒄.ip_tables iptable_filter

  ⒅.(部分输出省略

  ⒆<!--[if !supportLists]-->..<!--[endif]-->加载与卸载内核模块

  ⒇三、modprobe命令可以动态加载与卸载内核模块

  ⒈.[rootcentos ~]# modprobe ip_vs #动态加载ip_vs模块

  ⒉.[rootcentos ~]# lsmod |grep ip_vs #查看模块是否加载成功

  ⒊.[rootcentos ~]# modprobe -r ip_vs #动态卸载ip_vs模块

  ⒋modinfo命令可以查看内核模块信息:

  ⒌.[rootcentos ~]# modinfo ip_vs

  ⒍.filename: /lib/modules/..-.el.x_/kernel//filter/ipvs/ip_vs.ko

  ⒎.license: GPL

  ⒏.srcversion: EABCBEB

  ⒐.depends: ipv,libcr

  ⒑.vermagic: ..-.el.x_ SMP mod_unload modversions

  ⒒四、修改内核参数

  ⒓通过上述modprobe方式加载的内核模块仅在当前有效,计算机重启后并不会再次加载该模块,如果希望系统开机自动挂载内核模块则需要将modprobe命令写入/etc/rc.sysinit文件中:

  ⒔.[rootcentos ~]# echo “modprobe ip_vs” >> /etc/rc.sysinit

  ⒕当内核模块不再需要时可以通过将/etc/rc.sysinit文件中的对应modprobe命令删除,但需要重启计算机才生效。此时,可以通过modprobe -r命令来立刻删除内核模块:

  ⒖.[rootcentos ~]# modprobe -r ip_vs

  ⒗<!--[if !supportLists]-->..<!--[endif]-->修改内核参数

  ⒘<!--[if !supportLists]-->.<!--[endif]-->临时调整内核参数

  ⒙Linux内核参数随着系统的启动会被写入内存中,我们可以直接修改/proc目录下的大量文件来调整内核参数,并且这种调整是立刻生效的。

  ⒚以上就是Linux系统对内核模块进行管理方法了,利用本文介绍的方法,可以查看内核模块、加载和卸载内核,还可以对内核的参数进行修改,希望能够对大家有所帮助。