Linux: sysctl 命令

Linux: sysctl 命令

sysctl 命令用於運行時配置系統內核參數。

常用參數:sysctl -a | -p | -w

關聯man手冊:

man sysctl
man sysctl.conf

關聯文件(目錄):

/proc/sys
/etc/sysctl.conf

1.查看運行時內核參數

以 net.ipv4.ip_local_port_range 爲例:

$ sysctl net.ipv4.ip_local_port_range
net.ipv4.ip_local_port_range = 32768	61000

$ sysctl -a | grep net.ipv4.ip_local_port_range
net.ipv4.ip_local_port_range = 32768	61000

其實我更喜歡:

$ [root@test1280 ~]# sysctl -a | grep -i range
net.ipv4.ip_local_port_range = 32768	61000
net.ipv4.ping_group_range = 1	0

內核參數太多,用grep+key word我倒是更喜歡。

可以通過-a參數查看所有的可配置內核參數(在CentOS 6.8中有700+參數):

$ sysctl -a

2.修改運行時內核參數

$ echo "32768 62000" > /proc/sys/net/ipv4/ip_local_port_range
$ sysctl -w net.ipv4.ip_local_port_range="32768 61000"

注意:

上面的兩種方式都是直接修改內存中的內核參數,非持久化方式。

如果要持久化修改(保留配置包本地文件,重啓系統或服務進程仍然有效),可以:

$ echo "net.ipv4.ip_local_port_range=32768 62000" >> /etc/sysctl.conf

即,內核參數配置文件在/etc/sysctl.conf,可以手動修改配置文件,然後執行:

$ sysctl -p

使得重載/etc/sysctl.conf配置到運行時內核參數中。

3.重載配置文件到內核參數

sysctl -p [config file]

有 config file,重載指定配置文件
無 config file,重載/etc/sysctl.conf配置文件

4.配置文件格式

默認配置文件(sysctl -p):/etc/sysctl.conf

一行一對鍵值,key=value

註釋以#或;開頭。

# comment
; comment
token = value

可以參考 man sysctl.conf 。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章