Linux动态修改内核参数命令——sysctl

命令描述

sysctl可以动态修改内核的参数。可以修改的参数可以在/proc/sys/目录下查看,包含一些TCP/IP堆栈和虚拟内存系统的高级选项。经验丰富的人员可以通过合理配置这些参数来提高系统的性能。采用sysctl既可以读又可以写系统参数。

命令格式

sysctl (选项) (参数)

例子
sysctl [-n] [-e] variable …
sysctl [-n] [-e] [-q] -w variable=value …
sysctl [-n] [-e] [-q] -p [filename]
sysctl [-n] [-e] -a
sysctl [-n] [-e] -A

选项
-n:打印值时不打印关键字;
-e:忽略未知关键字错误;
-N:仅打印名称;
-w:当改变sysctl设置时使用此项;
-p:从配置文件“/etc/sysctl.conf”加载内核参数设置;
-a:打印当前所有可用的内核参数变量和值;
-A:以表格方式打印当前所有可用的内核参数变量和值。

参数
变量=值:设置内核参数对应的值。注意等号两端不能有空格。

实例

(1)查看系统变量

sysctl  -a  //显示当前所有可用的内核参数
sysctl  kernel.hostname  //读特定的内核参数,比如kernel.hostname
sysctl  -a | grep hostname  //显示名称中带有“hostname”关键字的内核参数

(2)修改系统变量

sysctl  -w  kernel.hostname=abc  //把hostname改为abc

简略一点:

sysctl  kernel.hostname=abc  //把hostname改为abc

(3)从配置文件加载内核参数

sysctl  -p  //从配置文件sysctl.conf中加载内核参数

修改系统变量有两种方式,一种是上述(2)中的命令行方式,另一种是修改sysctl.conf文件。sysctl.conf文件一般在系统的/etc目录下。在最后一行输入如下语句:

kernel.hostname=abc

然后需要执行sysctl -p 指令更新修改的内核参数配置文件,使其生效。

【参考】
sysctl命令 网址:http://man.linuxde.net/sysctl

你可能感兴趣的:(【linux,shell】)