萬盛學電腦網

 萬盛學電腦網 >> Linux教程 >> 如何對Linux系統內核進行模塊管理?

如何對Linux系統內核進行模塊管理?

  Linux內核分為幾個模塊,這樣既方便管理,也可以方便增加新模塊,從而豐富Linux系統的功能。下面就從內核模塊路徑和查看內核模塊等方面來介紹一下,如何對Linux系統內核進行模塊管理?

如何對Linux系統內核進行模塊管理?

  一、內核模塊存放位置

  Linux內核模塊文件的命名方式通常為,CentOS 6.3系統的內核模塊被集中存放在/lib/modules/`uname -r`/[1]目錄下(uname -r獲得的信息為當前內核的版本號)。下面通過幾個實例說明對內核模塊的基本操作。

  二、 查看已加載內核模塊

  lsmod命令用來顯示當前Linux內核模塊狀態,不是使用任何參數會顯示當前已經加載的所有內核模塊。輸出的三列信息分別為模塊名稱、占用內存大小、是否在被使用,如果第三列為0則該模塊可以隨時卸載,非0則無法執行modprobe刪除模塊。

  1.[root@centos6 ~]# lsmod

  2.Module Size Used by

  3.bridge 79950 0

  4.stp 2173 1 bridge

  5.llc 5642 2 bridge,stp

  6.fuse 66891 2

  7.autofs4 27212 3

  8.sunrpc 263516 1

  9.ipt_REJECT 2351 2

  10.nf_conntrack_ipv4 9506 2

  11.nf_defrag_ipv4 1483 1 nf_conntrack_ipv4

  12.iptable_filter 2793 1

  13.ip_tables 17831 1 iptable_filter

  14.(部分輸出省略)

  <!--[if !supportLists]-->2.9.3<!--[endif]-->加載與卸載內核模塊

  三、modprobe命令可以動態加載與卸載內核模塊

  1.[root@centos6 ~]# modprobe ip_vs #動態加載ip_vs模塊

  2.[root@centos7 ~]# lsmod |grep ip_vs #查看模塊是否加載成功

  3.[root@centos7 ~]# modprobe -r ip_vs #動態卸載ip_vs模塊

  modinfo命令可以查看內核模塊信息:

  1.[root@centos7 ~]# modinfo ip_vs

  2.filename: /lib/modules/2.6.32-279.el6.x86_64/kernel/net/netfilter/ipvs/ip_vs.ko

  3.license: GPL

  4.srcversion: 01386EABC060B63920E181B

  5.depends: ipv6,libcrc32c

  6.vermagic: 2.6.32-279.el6.x86_64 SMP mod_unload modversions

  四、修改內核參數

  通過上述modprobe方式加載的內核模塊僅在當前有效,計算機重啟後並不會再次加載該模塊,如果希望系統開機自動掛載內核模塊則需要將modprobe命令寫入/etc/rc.sysinit文件中:

  1.[root@centos7 ~]# echo “modprobe ip_vs” >> /etc/rc.sysinit

  當內核模塊不再需要時可以通過將/etc/rc.sysinit文件中的對應modprobe命令刪除,但需要重啟計算機才生效。此時,可以通過modprobe -r命令來立刻刪除內核模塊:

  1.[root@centos6 ~]# modprobe -r ip_vs

  <!--[if !supportLists]-->2.9.4<!--[endif]-->修改內核參數

  <!--[if !supportLists]-->1.<!--[endif]-->臨時調整內核參數

  Linux內核參數隨著系統的啟動會被寫入內存中,我們可以直接修改/proc目錄下的大量文件來調整內核參數,並且這種調整是立刻生效的。

  以上就是Linux系統對內核模塊進行管理方法了,利用本文介紹的方法,可以查看內核模塊、加載和卸載內核,還可以對內核的參數進行修改,希望能夠對大家有所幫助。

copyright © 萬盛學電腦網 all rights reserved