全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Linux设置内核参数的方法1 内核参数的查看方法使用“sysctl -a”命令可以查看所有正在使用的内核参数。内核参数比较多(一般多达500项),按照前缀主要分为以下几大类:net.ipv4、net.ipv6、net.core、vm、fs、dev.parport、dev.cdrom 、dev.raid、kernel等等。相同的linux,安装的组件和使用的方式不一样,正在使用的内核参数是不一样的。所有的内核参数的说明文档是放到/usr/src/linux/Documentation/sysctl中的,如果想知道对内核参数的说明,可以到该目录下查看相应的说明文档。2 内核参数的的设置方法由于Linux的内核参数信息都存在内存中,因此可以通过命令直接修改,并且修改后直接生效。也可以通过文件的方式进行设置。下面就介绍这两种修改方法。2.1 命令设置的方式可以用两种方法实现。1、使用“sysctl -w 参数名=值”的方式假设我们把net.ipv4.ip_forward的值修改为1,使用命令“sysctl -w net.ipv4.ip_forward=1”。2、修改内核参数对应的proc文件内核参数位于/proc/sys/之下,参数名称是以文件所在的路径,并将“/”以“.”来取代。举例来说,/proc/sys/net/ip_forward的参数名称为net.ipv4.ip_forward。同样把net.ipv4.ip_forward的值修改为1,使用命令“echo “1” /proc/sys/net/ipv4/ip_forward”。注意,这里proc文件跟普通的文件不一样。一般一个文件用echo写入内容之后,会变成一个文本文件,但echo修改proc文件之后还是个空文件。2.2 文件设置的方式更改的内核参数默认保存在/etc/sysctl.conf文件中。修改的时候可以直接用vi编辑sysctl.conf文件,增加要修改的内核参数内容,修改的格式为:参数名=值。例如,把net.ipv4.ip_forward的值修改为1,在sysctl.conf中增加下面这行内容:net.ipv4.ip_forward=1文件修改好后,进行保存。然后使用“sysctl -p 配置文件名”来使配置生效,如果配置文件是默认的,可以不用输配置文件名,即使用“sysctl -p”。通过文件设置的方式修改的内核参数是在系统重启后将失效(我之前认为修改后的内核参数放在文件中,系统启动的时候会读这个文件,重启后设置应该不会失效。但经过验证,一般会失效,但如果把将默认的boot.sysctl服务打开,所以系统启动时就会执行这个文件的设置)。把我们修改参数的命令写入启动执行脚本文件里/etc/rc.local,这样系统重启后配置就不会失效。文件方式的好处是内核参数设置的值可以用文件保留下来,调用“sysctl -p”可以使文件中的所有配置的值马上生效。3 内核参数设置的实际应用3.1 文件和网络类参数我们一般需要关注的文件类的内核参数有fs.file-max和file-nr。fs.file-max是一个系统能申请到的最大文件句柄数;file-nr是只读的,它与file-max相关,仅用于显示已分配文件句柄的数目、已使用文件句柄的数目、文件句柄的最大数目,如下图所示。suse11lwb:/home/zxin10/steven # sysctl -a|grep fs.file-nrfs.file-nr = 5152 0 6815744对于文件句柄的问题,对于要处理很多文件的接口机要注意,系统的文件句柄是否够用。以前短信网管项目就出现过文件句柄的问题,现场是Solaris系统,而家里的测试是在HP-UX进行,由于Solaris默认支持的文件句柄比HP-UX少很多(如下图所示),家里测试没有发现,从而导致故障泄漏到现场。操作系统名称默认系统句柄数Solaris256AIX2000Suse Linux1024HP-UX2000NT10000下面介绍修改文件句柄限制的方法。1、按照最大打开文件数量的需求设置内核参数,并且通过检查/proc/sys/fs/file-max文件来确认最大打开文件数已经被正确设置。 # cat /proc/sys/fs/file-max如果设置值太小, 修改文件/etc/sysctl.conf的变量到合适的值。2、在/etc/security/limits.conf文件中设置最大打开文件数, 下面是一行提示: # 添加如下这行。 * - nofile 2048这行设置了每个用户的默认打开文件数为2048。 注意nofile项有两个可能的限制措施。就是项下的hard和soft。要使修改过的最大打开文件数生效,必须对这两种限制进行设定。如果使用-字符设定, 则hard和soft设定会同时被设定。硬限制表明soft限制中所能设定的最大值。soft限制指的是当前系统生效的设置值。hard限制值可以被普通用户降低。但是不能增加。soft限制不能设置的比hard限制更高。只有root用户才能够增加hard限制值。3、使用“ulimit -n 2048”来限制用户的最大文件打开数为2048。ulimit -n对非root用户有限制,对root用户则没有限制,能享受到整个系统可以同时打开的文件数的好处。设置句柄数量后,系统重启后,又会恢复默认值。如果想永久保存下来,可以修改.bash_profile文件,把上面命令加到最后。3.2 平台内核参数平台在安装的过程中,会调用一个专门的shell来负责系统内核参数的设置。这个shell是checkkernel,在平台上/home/zxin10/bin目录下能找到。对于Linux,需要关注的是其中的check_linux_kernel函数。下面是涉及到设置内核参数的主要代码,除开设置了平台相关的一些内核参数,另外针对Oracle数据库也进行了相应的设置,大家可以一起分析一下。# 消息队列的设置 if ! grep -q /proc/sys/kernel/shmmax /etc/rc.d/rc.local then echo echo $ShmMaxSizecfg /proc/sys/kernel/shmmax /etc/rc.d/rc.local fi if ! grep -q /proc/sys/kernel/msgmni /etc/rc.d/rc.local then echo echo 300 /proc/sys/kernel/msgmni /etc/rc.d/rc.local fi if ! grep -q /proc/sys/kernel/msgmnb /etc/rc.d/rc.local then echo echo 163840 /proc/sys/kernel/msgmnb /etc/rc.d/rc.local fi if ! grep -q /proc/sys/kernel/msgmax /etc/rc.d/rc.local then echo echo 56383 /proc/sys/kernel/msgmax /etc/rc.d/rc.local fi # 针对Oralce的一些内核参数的设置 # 2007.01.10 add for oracle10g if $db_version = oracle10g then if ! grep -q /proc/sys/net/core/rmem_max /etc/rc.d/rc.local then echo echo 25032000100128 /proc/sys/kernel/sem /etc/rc.d/rc.local echo echo 102465000 /proc/sys/net/ipv4/ip_local_port_range /etc/rc.d/rc.local echo echo 1048576 /proc/sys/net/core/rmem_max /etc/rc.d/rc.local echo echo 1048576 /proc/sys/net/core/rmem_default /etc/rc.d/rc.local echo echo 262144 /proc/sys/net/core/wmem_max /etc/rc.d/rc.local echo echo 262144 /proc/sys/net/core/wmem_default /etc/rc.d/rc.local fi fi 下面是网上一篇redhat linux as 4.7 静默安装 oracle 10g的过程中涉及到内核参数设置的部分,跟上面平台设置的内容大致相同。检查内核参数正在检查 semmsl=250; 已发现 semmsl=250。 通过正在检查 semmns=32000; 已发现 semmns=32000。 通过正在检查 semopm=100; 已发现 semopm=100。 通过正在检查 semmni=128; 已发现 semmni=128。 通过正在检查 shmmax=536870912; 已发现 shmmax=2147483648。 通过正在检查 shmmni=4096; 已发现 shmmni=4096。 通过正在检查 shmall=2097152; 已发现 shmall=2097152。 通过正在检查 file-max=65536; 已发现 file-max=65536。 通过正在检查 VERSION=2.6.9; 已发现 VERSION=2.6.9-78.EL。 通过正在检查 ip_local_port_range=1024 - 65000; 已发现 ip_local_port_range=1024 - 65000。 通过正在检查 rmem_default=262144; 已发现 rmem_default=1048576。 通过正在检查 rmem_max=262144; 已发现 rmem_max=1048576。 通过正在检查 wmem_default=262144; 已发现 wmem_default=262144。 通过正在检查 wmem_max=262144; 已发现 wmem_max=262144。 通过检查完成。此次检查的总体结果为: 通过 下面对上面涉及到的内核参数进行说明。shmmax:共享内存段的最大字节数,建议设大点,甚至可以大过物理内存的字节数。该参数定义了共享内存段的最大尺寸(以字节为单位)。缺省为32M,对于oracle来说,该缺省值太低了,通常将其设置为2G。shmmin:共享内存段的最小尺寸。这个参数的设置一般不会出问题。shmmni:共享内存段的最大数目。这个内核参数用于设置系统范围内共享内存段的最大数量。该参数的默认值是4096 。通常不需要更改。shmseg:每个进程可分配的最大共享内存段数目shmall:最大的并发共享内存段数目,比SGA还要大。该参数表示系统一次可以使用的共享内存总量(以页为单位,一个页大小为4KB)。缺省值就是2097152,通常不需要修改。sem:是semaphores的缩写,该参数表示设置的信号量。它包含四个值:semmsl、semmns、semopm、semmni。suse11lwb: # sysctl -a|grep semkernel.sem = 250 32000 100 128semmns:信号灯的最大数量,跟ORACLE的PROCESS数有关。SEMMSL * SEMMNIsemopm:系统调用允许的信号量最大个数。至少100;或者等于SEMMSLsemmni:系统信号量set最大个数。最少128semmsl:每个信号灯集合中最多的信号灯数目。最小250;对于processes参数设置较大的系统建议设置为processes+10。msgmni:指定消息队列标识的最大数目。缺省设置:16msgmax:从一个进程发送到另一个进程的消息的最大长度。进程间的消息传递是在内核的内存中进行,不会交换到磁盘上,所以如果增加该值,则将增加操作系统所使用的内存数量。缺省设置:8192msgmnb:一个消息队列中最大的字节数。缺省设置:16384optmem_max:每个socket的最大缓存大小rmem_default:接收socket的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 太原精密钢管施工方案(3篇)
- 航天装备制造协同设计技术
- 深层搅拌桩加固高速铁路软土地基效果的试验研究与分析
- 深国际全程公司供应链管理绩效评价:体系构建与提升策略
- 深低温停循环手术中血糖变化机制与控制策略的深度剖析
- 淮南市上窑镇生态农业观光园项目经济可行性的深度剖析与展望
- 淄博高新区农业科技生态园建设项目风险管理:策略与实践
- 液相色谱 - 串联质谱法:猪血浆与尿液中62种兽药检测的关键技术与应用
- 液基细胞学联合HPV - DNA检测:宫颈癌及癌前病变诊断的精准探索
- 涨跌停板制度下金融市场的双重效应解析:流动性干扰与磁吸现象
- 2026年浙江温州高三二模高考数学试卷答案详解
- 2026年湖南益阳市中心医院人才引进67人考试备考试题及答案解析
- 2026河南黄金叶投资管理有限公司所属企业大学生招聘29人备考题库(第一批次)附参考答案详解(综合卷)
- 北京2025年中国地质环境监测院(自然资源部地质灾害技术指导中心)招聘(第二批)笔试历年参考题库附带答案详解(5卷)
- 2025 初中写作学习作文的学习心态积极调整课件
- 2026年市场监管总局直属单位第一批招聘161人考试参考试题及答案解析
- 河南工业和信息化职业学院2026年单独招生《职业适应性测试》模拟试题及答案解析
- 无人机培训方案
- ICG荧光导航技术在肿瘤外科精准切除与综合治疗中的应用
- 2026年普拉提教练认证考试大纲解析试题及答案
- 2024-2025学年河南省南阳市高一下学期期中考试生物试卷(解析版)
评论
0/150
提交评论