由于Linux的内核参数信息都存在内存中,因此能够
议决
命令直接修改,并且修改后直接生效。但是,当系统重新启动后,原来配置
的参数值就会丢失,而系统每次启动时都会自动去/etc/sysctl.conf文件中读取内核参数,因此将内核的参数配置写入这个文件中,是一个比较好的挑选
。
最先
打开/etc/sysctl.conf文件,查看如下两行的配置
值,这里是:
kernel.shmall = 2097152 kernel.shmmax = 4294967295 假如
系统默认的配置比这里给出的值大,就不要修改原有配置。同时在/etc/sysctl.conf文件结尾
,添加以下内容:
fs.file-max = 6553600 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 net.ipv4.ip_local_port_range = 1024 65000 net.core.rmem_default = 4194304 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 262144 这里的"fs.file-max = 6553600"本来
是由"fs.file-max = 512 * PROCESSES"得到的,咱们
指定PROCESSES的值为12800,即为"fs.file-max =512 *12800"。
sysctl.conf文件修改完毕后,接着执行"sysctl -p"使配置
生效。
[root@localhost ~]# sysctl -p 常用的内核参数的意思
如下。
kernel.shmmax:示意
单个共享内存段的最大值,以字节为单位,此值通常
为物理内存的一半,不过大一点也没联系
,这里设定的为4GB,即"4294967295/1024/1024/1024=4G"。
kernel.shmmni:示意
单个共享内存段的最小值,通常
为4kB,即4096bit。
kernel.shmall:示意
可用共享内存的总量,单位是页,在32位系统上一页等于4kB,也就是4096字节。
fs.file-max:示意
文件句柄的最大数目
。文件句柄示意
在Linux系统中能够
打开的文件数目
。
ip_local_port_range:示意
端口的范围,为指定的内容。
kernel.sem:示意
配置
的信号量,这4个参数内容大小固定。
net.core.rmem_default:示意
接收套接字缓冲区大小的缺省值(以字节为单位)。