1. 程式人生 > >linux學習筆記--sysctl命令

linux學習筆記--sysctl命令

sysctl命令被用於在核心執行時動態地修改核心的執行引數,可用的核心引數在目錄/proc/sys中。它包含一些TCP/IP堆疊

和虛擬記憶體系統的高階選項,這可以讓有經驗的管理員提高引人注目的系統性能。用sysctl可以讀取設定超過五百個系統

變數。

語法:

sysctl (選項) (引數)
選項:
-n:列印值時不列印關鍵字
-e:忽略未知關鍵字錯誤
-N:僅列印名稱
-w:當改變sysctl設定時使用此項
-p:從配置檔案”/etc/sysctl.conf“載入核心引數設定
-a:列印當前所有可用的核心引數變數和值
-A:以表格方式列印當前所有可用的核心引數變數和值
引數:

變數=值:設定核心引數對應的變數值

例項:

檢視所有可讀變數:

sysctl -a

讀一個指定的變數:例如kern.maxproc:

sysctl kern.maxproc kern.maxproc:1044

要設定一個指定的變數,直接用variable=value這樣的語法:

sysctl kern.maxfiles=5000
kern.maxfiles: 2088 -> 5000
您可以使用sysctl修改系統變數,也可以通過編輯sysctl.conf檔案來修改系統變數。sysctl.conf看起來很像rc.conf。它

用variable=value的形式來設定值。指定的值在系統進入多使用者模式之後被設定。並不是所有的變數都可以在這個模式

下設定。

sysctl變數的設定通常是字串,數字或者布林型。(布林型用1來表示yes,用0來表示no)

dev.cdrom.info = drive # of slots:      1   
dev.cdrom.info = Can close tray:                1   
dev.cdrom.info = Can open tray:         1   
dev.cdrom.info = Can lock tray:         1   
dev.cdrom.info = Can change speed:      1   
dev.cdrom.info = Can select disk:       0   
dev.cdrom.info = Can read multisession: 1
dev.cdrom.info = Can read MCN:          1  
配置sysctl

編輯此檔案:/etc/sysctl.conf

如果希望遮蔽別人ping你的主機,則加入以下程式碼:

#Disable ping requests
net.ipv4.icmp_echo_ignore_all = 1
編輯完成後,執行命令使變動立即生效:
/sbin/sysctl -p
/sbin/sysctl -w net.ipv4.route.flush=1