網頁

2013年2月23日 星期六

sysctl,lsmod,insmode,modprobe ,rmmod ,modinfo ,depmod ,uname ,dmesg ,get_module ,kexec ,kernelversion ,slabtop 指令

sysctl 設置和顯示 /proc/sys 目錄中的內核參數,能用 sysctl 來設置或重新設置網路功能,如 ip 轉發、ip 碎片去除及 rotue 檢查;始用 sysctl 指令來設定內核參數的效果,會在重新開機後遺失,若要永久生效的話,請編輯 /etc/sysctl.conf 文件。


step 1. sysctl -a

vm.min_free_kbytes = 44900
vm.mmap_min_addr = 65536
vm.nr_hugepages = 0
vm.nr_overcommit_hugepages = 0
...

step 2. 使用 sysctl 來設置內核參數
           sysctl net.ipv4.ip_forward=0
----------------------------------------------------------------------------------------------------------
lsmod指令,用來顯示當前內核,已加載的模塊列表
----------------------------------------------------------------------------------------------------------
insmode指令,用來動態向內核當中加載新的模塊

step 1. insmod /lib/modules/`uname -r` /kernel/drivers/ata/ata_piix.ko
           由於在加載模塊的時侯,我們一定要在相同版本的內核上操作所以使用`uname -r`來
           取得。

step 2.查詢 lsmod | grep ata_piix
-----------------------------------------------------------------------------------------------------------
modprobe 指令,用來智能加載模塊,這是一個比較好的加載方式,因為使用比較方便外,另
                 外它會自動加載其他依賴的模塊。

step 1.modprobe -v ata_piix
-----------------------------------------------------------------------------------------------------------
rmmod 指令,用於從內核當中移除一個內核模塊。如果那一個內核模塊正在使用的話,我們
            是無法移除的。

step 1. rmmod ata_piix
-----------------------------------------------------------------------------------------------------------
modinfo 指令,用於顯示內核模塊的詳細資訊
step 1. modinfo ext3
-----------------------------------------------------------------------------------------------------------
depmod 指令,用於產生內核模塊依賴關系的映射文件
step 1. depmod 
step 2. ls -l /lib/modules/`uname -r` 
           列表內核模塊依賴關系的映射文件
-----------------------------------------------------------------------------------------------------------
uname 指令,用於打印內核版本號、硬件架構、主機名稱和操作系統的訊息
step 1.canred@canred:/etc$ uname -a
Linux canred 3.5.0-21-generic #32-Ubuntu SMP Tue Dec 11 18:52:46 UTC 2012 i686 i686 i686 GNU/Linux
-----------------------------------------------------------------------------------------------------------
dmesg 指令,經常用來顯示內核啟動時的輸出訊息
-----------------------------------------------------------------------------------------------------------
get_module  指令,功能和 modinfo 指差不多,用於顯示內核模塊的詳細資訊
-----------------------------------------------------------------------------------------------------------
kexec 指令,用於直接啟動另一個Linux的內核,由當前的內核切換到另一個內核
step 1. ls /boot 
           列出所有的內核

step 2. uname -r
           查表當前版本

step 3. kexec -l /boot/vmlinuz-2.6.18-1.e15 --append=root=LABEL=/

step 4. kexec -e
-----------------------------------------------------------------------------------------------------------
kernelversion 指令,功能於 uname 指令差不多,使用 uname 的詳細比較完整,就不要用這一個
                     指定啦
-----------------------------------------------------------------------------------------------------------
slabtop 指令,用於顯示內核的slab緩衝區的訊息
step 1. slabtop -d 10
-----------------------------------------------------------------------------------------------------------

沒有留言:

張貼留言