[monitor] 3. Linux内核参数sysctl设置

1、内核参数“/proc/sys”

Linux提供了一种非常灵活的方法可以在系统运行的时候动态更改内核的参数。性能优化、功能变更时通常需要更改这些参数。这些参数大部分都存在于“/proc”目录下,其中最核心的部分被集中于“/proc/sys”目录下linux称之为sysctl。

查看/proc/sys下的内容,都是相关内核参数。

1

2、sysctl工具

“/proc/sys”下这些参数的修改可以通过手工命令“echo xxx > /proc/sys/xxxfile”来修改。同时linux也提供了一个专有命令sysctl来配置这些参数。

首先sysctl命令使用自己的一套规则来标示“/proc/sys/xxxfile”的路径,将 /proc/sys 中的文件转换成 sysctl 中的变量有两个简单的规则:去掉前面部分/proc/sys;将文件名中的正斜杠变为点。

这两条规则使您能将 /proc/sys 中的任一文件名转换成 sysctl 中的任一变量名。一般文件到变量的转换为:

/proc/sys/dir/file --> dir.file
dir1.dir2.file --> /proc/sys/dir1/dir2/file

“sysctl –a” 命令查看所有可以更改的变量和其当前设置 :

2

“sysctl -w dir.file=”value””命令修改单个参数:

3

还可以修改“/etc/sysctl.conf”配置文件来达到开机自动配置的功能。修改完“/etc/sysctl.conf”配置文件后,可以执行“sysctl -p”让配置立即生效。

3、代码实现

从内核代码中我们可以看到“/proc/sys”目录下到底注册了哪些功能,其初始化函数在sysctl_init()中。

4
5
6
7
8

可以参考上述的方法来查看“/proc/sys”下参数的具体含义。

posted @ 2017-10-13 11:59  pwl999  阅读(73)  评论(0)    收藏  举报