命令
sysctl
使用方法
sysctl [options] [variable[=value]] [...]
sysctl -p [file or regexp] [...]
功能描述
sysctl is used to modify kernel parameters at runtime. The parameters available are those listed under /proc/sys/. Procfs is required for sysctl support in Linux. You
can use sysctl to both read and write sysctl data.
主要参数
variable
The name of a key to read from. An example is kernel.ostype. The '/' separator is also accepted in place of a '.'.
variable=value
To set a key, use the form variable=value where variable is the key and value is the value to set it to. If the value contains quotes or characters which are parsed
by the shell, you may need to enclose the value in double quotes.
-n, --values
Use this option to disable printing of the key name when printing values.
-e, --ignore
Use this option to ignore errors about unknown keys.
-N, --names
Use this option to only print the names. It may be useful with shells that have programmable completion.
-q, --quiet
Use this option to not display the values set to stdout.
-w, --write
Use this option when all arguments prescribe a key to be set.
-p[FILE], --load[=FILE]
Load in sysctl settings from the file specified or /etc/sysctl.conf if none given. Specifying - as filename means reading data from standard input. Using this op‐
tion will mean arguments to sysctl are files, which are read in the order they are specified. The file argument may be specified as regular expression.
-a, --all
Display all values currently available.
--deprecated
Include deprecated parameters to --all values listing.
-b, --binary
Print value without new line.
--system
Load settings from all system configuration files. Files are read from directories in the following list in given order from top to bottom. Once a file of a given
filename is loaded, any file of the same name in subsequent directories is ignored.
/run/sysctl.d/*.conf
/etc/sysctl.d/*.conf
/usr/local/lib/sysctl.d/*.conf
/usr/lib/sysctl.d/*.conf
/lib/sysctl.d/*.conf
/etc/sysctl.conf
-r, --pattern pattern
Only apply settings that match pattern. The pattern uses extended regular expression syntax.
-A Alias of -a
-d Alias of -h
-f Alias of -p
-X Alias of -a
-o Does nothing, exists for BSD compatibility.
-x Does nothing, exists for BSD compatibility.
-h, --help
Display help text and exit.
-V, --version
Display version information and exit.
示例
查看所有内核参数
sysctl -a
查看所有网络参数
sudo sysctl net
查看所有tcp参数
sudo sysctl -a -r '^net.ipv4.tcp'
查看所有udp的参数
sudo sysctl -a -r '^net.ipv4.udp'
查看所有kernal参数
sudo sysctl -a -r ‘^kernel’
/sbin/sysctl -a
/sbin/sysctl -n kernel.hostname
/sbin/sysctl -w kernel.domainname="example.com"
/sbin/sysctl -p/etc/sysctl.conf
/sbin/sysctl -a --pattern forward
/sbin/sysctl -a --pattern forward$
/sbin/sysctl -a --pattern 'net.ipv4.conf.(eth|wlan)0.arp'
/sbin/sysctl --system --pattern '^net.ipv6'
|