3.8.1 内核参数对应目录
控制内核运行的参数存储在/proc目录下,可以简单通过查看/proc目录树下的文件来查看关于内核、处理器、内存、网络和其他部分的内核参数的配置情况。系统下运行的每个进程在proc下都有一个对应的以PID命名的目录。下表列出了一些目录存储的内核信息
3.8.2 使用sysctl命令
sysctl命令使用/proc/sys目录树下的文件名做为参数,例如,改变内核参数shmmax的值,可以通过对/proc/sys/kernel/shmmax文件使用cat命令显示当前值并且使用echo命令进行修改。
# cat /proc/sys/kernel/shmmax
33554432
# echo 33554430 > /proc/sys/kernel/shmmax
# cat /proc/sys/kernel/shmmax
33554430
然而使用上述命令容易出现错误,所以我们建议使用sysctl命令因为sysctl命令在更改之前会进行一致性的检查,示例如下
# sysctl kernel.shmmax
kernel.shmmax = 33554432
# sysctl -w kernel.shmmax=33554430
kernel.shmmax = 33554430
# sysctl kernel.shmmax
kernel.shmmax = 33554430
这个改变必须在一次重新启动后才会生效,如果你想长期改变参数,可以通过修改/etc/sysctl.conf文件加入附加的行来实现
kernel.shmmax = 33554439
在下一次重新启动后,改变的参数文件将被读取,如果你不想重新启动系统可以通过执行下面命令来使改变生效
#sysctl -p
3.9 内核参数
Linux 2.4和2.6内核包括了一些可以优化系统性能的内核参数,下
控制内核运行的参数存储在/proc目录下,可以简单通过查看/proc目录树下的文件来查看关于内核、处理器、内存、网络和其他部分的内核参数的配置情况。系统下运行的每个进程在proc下都有一个对应的以PID命名的目录。下表列出了一些目录存储的内核信息
文件/目录 | 信息 |
/proc/sys/abi/* | 用于提供对外部二进制的支持,不是传统的Linux,比如SCO UnixWare 7、SCO OpenServer和SUN Solaris 2。默认情况下是安装的,也可以在安装过程中移除。 |
/proc/sys/fs/* | 用于增加操作系统支持的文件系统和控制磁盘配额。 |
/proc/sys/kernel/* | 为了调优目的,你可以启用热添加、操作共享内存、指定PID文件最大数量和syslog中的debug级别。 |
/proc/sys/net/* | 调优网络,IPV4和IPV6。 |
/proc/sys/vm/* | 管理缓存和缓冲区。 |
3.8.2 使用sysctl命令
sysctl命令使用/proc/sys目录树下的文件名做为参数,例如,改变内核参数shmmax的值,可以通过对/proc/sys/kernel/shmmax文件使用cat命令显示当前值并且使用echo命令进行修改。
# cat /proc/sys/kernel/shmmax
33554432
# echo 33554430 > /proc/sys/kernel/shmmax
# cat /proc/sys/kernel/shmmax
33554430
然而使用上述命令容易出现错误,所以我们建议使用sysctl命令因为sysctl命令在更改之前会进行一致性的检查,示例如下
# sysctl kernel.shmmax
kernel.shmmax = 33554432
# sysctl -w kernel.shmmax=33554430
kernel.shmmax = 33554430
# sysctl kernel.shmmax
kernel.shmmax = 33554430
这个改变必须在一次重新启动后才会生效,如果你想长期改变参数,可以通过修改/etc/sysctl.conf文件加入附加的行来实现
kernel.shmmax = 33554439
在下一次重新启动后,改变的参数文件将被读取,如果你不想重新启动系统可以通过执行下面命令来使改变生效
#sysctl -p
3.9 内核参数
Linux 2.4和2.6内核包括了一些可以优化系统性能的内核参数,下