Linux核心模組
導讀 | 核心採用的是模組化技術,這樣的設計可以使得系統核心保持最小化,同時確保了核心的可擴充套件性和可維護性,模組化設計允許我們在需要時才將模組載入至核心,實現動態核心的調整。下面我給大家介紹一下有關核心的操作方法。 |
Linux核心模組檔案的命名方式通常為<模組名稱.ko>, 6.3 系統的核心模組被集中存放在/lib/modules/`uname -r`/目錄下。
lsmod 用來顯示當前Linux核心模組狀態,不使用任何引數會顯示當前已經載入的所有核心模組。輸出的三列資訊分別為模組名稱、佔用記憶體大小、是否在被使用,如果第三列為0,則該模組可以隨時解除安裝,非0則無法執行modprobe刪除模組。
[root@centos6 ~]# lsmod Module Size Used by bridge 79950 0 stp 2173 1 bridge llc 5642 2 bridge,stp fuse 66891 2 autofs4 27212 3 sunrpc 263516 1 ipt_REJECT 2351 2 nf_conntrack_ipv4 9606 1 nf_defrag_ipv4 1483 1 nf_conntrack_ipv4 iptable_filter 2793 1 ip_tables 17831 1 iptable_filter
modprobe 可以動態載入和解除安裝核心模組,具體命令如下:
[root@centos6 ~]# modprobe ip_vs #動態載入ip_vs模組 [root@centos6 ~]# lsmod | grep ip_vs #檢視模組是否載入成功 [root@centos6 ~]# modprobe -r ip_vs #動態解除安裝ip_vs模組
modinfo命令也可以檢視核心模組資訊:
[root@centos6 ~]# modinfo ip_vs
引數隨著系統的啟動會被寫入系統記憶體中,我們可以直接修改/proc目錄下的大量檔案來調整核心引數,並且這種調整是立即生效的,下面舉幾個例子:
開啟核心路由轉發功能(透過0或1設定開關):
[root@centos6 ~]# echo "1" > /proc/sys/net/ipv4/ip_forward
開啟禁止其它主機ping本機功能:
[root@centos6 ~]# echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all
調整所有的程式可以開啟的檔案總數量:
[root@centos6 ~]# echo "108248" >/proc/sys/fs/file-max
透過以上方法直接修改/proc相關檔案的方式,在系統重啟後不再有效,如果希望設定引數永久生效,可以修改/etc/sysctl.conf檔案,可以使用Vim修改該檔案:
[root@centos6 ~]# vim /etc/sysctl.conf net.ipv4.ip_forward = 1 net.ipv4.icmp_echo_ignore_all = 1 fs.file-max = 108248
注意:透過sysctl.conf檔案修改的引數不會立即生效,需要使用sysctl -p 命令設定立即生效。
本文原創地址: 作者:馮琪,稽核員:逄增寶
本文原創地址:
導讀 | 核心採用的是模組化技術,這樣的設計可以使得系統核心保持最小化,同時確保了核心的可擴充套件性和可維護性,模組化設計允許我們在需要時才將模組載入至核心,實現動態核心的調整。下面我給大家介紹一下有關核心的操作方法。 |
Linux核心模組檔案的命名方式通常為<模組名稱.ko>, 6.3 系統的核心模組被集中存放在/lib/modules/`uname -r`/目錄下。
lsmod 用來顯示當前Linux核心模組狀態,不使用任何引數會顯示當前已經載入的所有核心模組。輸出的三列資訊分別為模組名稱、佔用記憶體大小、是否在被使用,如果第三列為0,則該模組可以隨時解除安裝,非0則無法執行modprobe刪除模組。
[root@centos6 ~]# lsmod Module Size Used by bridge 79950 0 stp 2173 1 bridge llc 5642 2 bridge,stp fuse 66891 2 autofs4 27212 3 sunrpc 263516 1 ipt_REJECT 2351 2 nf_conntrack_ipv4 9606 1 nf_defrag_ipv4 1483 1 nf_conntrack_ipv4 iptable_filter 2793 1 ip_tables 17831 1 iptable_filter
modprobe 可以動態載入和解除安裝核心模組,具體命令如下:
[root@centos6 ~]# modprobe ip_vs #動態載入ip_vs模組 [root@centos6 ~]# lsmod | grep ip_vs #檢視模組是否載入成功 [root@centos6 ~]# modprobe -r ip_vs #動態解除安裝ip_vs模組
modinfo命令也可以檢視核心模組資訊:
[root@centos6 ~]# modinfo ip_vs
引數隨著系統的啟動會被寫入系統記憶體中,我們可以直接修改/proc目錄下的大量檔案來調整核心引數,並且這種調整是立即生效的,下面舉幾個例子:
開啟核心路由轉發功能(透過0或1設定開關):
[root@centos6 ~]# echo "1" > /proc/sys/net/ipv4/ip_forward
開啟禁止其它主機ping本機功能:
[root@centos6 ~]# echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all
調整所有的程式可以開啟的檔案總數量:
[root@centos6 ~]# echo "108248" >/proc/sys/fs/file-max
透過以上方法直接修改/proc相關檔案的方式,在系統重啟後不再有效,如果希望設定引數永久生效,可以修改/etc/sysctl.conf檔案,可以使用Vim修改該檔案:
[root@centos6 ~]# vim /etc/sysctl.conf net.ipv4.ip_forward = 1 net.ipv4.icmp_echo_ignore_all = 1 fs.file-max = 108248
注意:透過sysctl.conf檔案修改的引數不會立即生效,需要使用sysctl -p 命令設定立即生效。
本文原創地址:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2915602/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Linux核心模組編譯Linux編譯
- Linux核心模組學習Linux
- 深入學習 Linux 核心模組Linux
- 高效學習Linux核心——核心模組編譯Linux編譯
- 【linux】驅動-2-核心模組Linux
- 如何使用cgdb + qemu除錯linux核心模組除錯Linux
- Linux核心net模組引入了Rust程式碼 - PhoronixLinuxRust
- node核心模組-vm
- toa 核心模組分析
- 【轉載】Linux核心除錯之使用模組引數Linux除錯
- Linux核心模組驅動載入與dmesg除錯Linux除錯
- 【核心模組】node.jsNode.js
- 核心模組建立檔案
- 核心補丁熱更新ceph核心模組
- 驅動篇——核心空間與核心模組
- 核心模組的載入流程
- webpack核心模組tapable用法解析Web
- Linux 核心101:cache組織策略Linux
- Nodejs核心模組之net和httpNodeJSHTTP
- node 核心模組學習之 Buffer
- 概述nodejs模組系統核心原理NodeJS
- webpack核心模組tapable原始碼解析Web原始碼
- xmake v2.6.2 釋出,新增 Linux 核心驅動模組構建支援Linux
- Nginx 架構——【核心流程+模組介紹】Nginx架構
- 深入淺出 Node ( 四 ) HTTP核心模組HTTP
- Zepto核心模組之工具方法拾遺
- 刪除不必要的核心模組
- 解讀 Node 核心模組 Stream 系列一( Readable )
- 漫談Huawei LiteOS五大核心模組
- Linux核心筆記003 - Linux核心程式碼裡面的C語言和組合語言Linux筆記C語言組合語言
- 在Linux中,核心模組是什麼以及如何載入和解除安裝它們?Linux
- Linux下新增php的zip模組LinuxPHP
- 跨平臺渲染引擎之路:框架與核心模組框架
- (PHP7核心剖析-11) 模組擴充套件PHP套件
- cnpm 核心模組 npminstall 升級到 async 總結NPM
- 模擬實現 Tomcat 的核心模組:NIO,HTTP,容器和叢集TomcatHTTP
- Linux下PAM模組學習總結Linux
- Linux作業系統網路模組Linux作業系統