aix如何修改sysctl文件下的win7修改最大连接数数

> Linux如何在系统运行过程中修改内核参数
Linux如何在系统运行过程中修改内核参数
&&& RedHat向管理员提供了非常好的方法,使我们可以在系统运行时更改内核参数,而不需要重新引导系统。这是通过/proc虚拟文件系统实现的。/proc/sys目录下存放着大多数的内核参数,并且设计成可以在系统运行的同时进行更改。下面我们以打开内核的 ip转发功能为例说明在系统运行时修改内核参数的两种方法。IP转发是指允许系统对来源和目的地都不是本机的数据包通过网络,RedHat默认屏蔽此功能,在 需要用本机作为路由器、NAT等情况下需要开启此功能。
&&& 方法一:修改/proc下内核参数文件内容
&&& 直接修改内核参数ip_forward对应在/proc下的文件/proc/sys/net/ipv4/ip_forward.用下面命令查看ip_forward文件内容:
&&& # cat /proc/sys/net/ipv4/ip_forward
&&& 该文件默认值0是禁止ip转发,修改为1即开启ip转发功能。修改命令如下:
&&& # echo 1 &/proc/sys/net/ipv4/ip_forward
&&& 修改过后就马上生效,即内核已经打开ip转发功能。但如果系统重启后则又恢复为默认值0,如果想永久打开需要通过修改/etc/sysctl.conf文件的内容来实现。
&&& 方法二。修改/etc/sysctl.conf文件
&&& 默认sysctl.conf文件中有一个变量是
&&& net.ipv4.ip_forward = 0
&&& 将后面值改为1,然后保存文件。因为每次系统启动时初始化脚本/etc/rc.d/rc.sysinit会读取/etc/sysctl.conf文件的内容,所以修改后每次系统启动时都会开启ip转发功能。但只是修改sysctl文件不会马上生效,如果想使修改马上生效可以执行下面的命令:
&&& # sysctl Cp
&&& 在修改其他内核参数时可以向/etc/sysctl.conf文件中添加相应变量即可,下面介绍/proc/sys下内核文件与配置文件 sysctl.conf中变量的对应关系,由于可以修改的内核参数都在/proc/sys目录下,所以sysctl.conf的变量名省略了目录的前面部 分(/proc/sys)。
&&& 将/proc/sys中的文件转换成sysctl中的变量依据下面两个简单的规则:
&&& 1.去掉前面部分/proc/sys
&&& 2.将文件名中的斜杠变为点
&&& 这两条规则可以将/proc/sys中的任一文件名转换成sysctl中的变量名。
&&& 例如:
&&& /proc/sys/net/ipv4/ip_forward =》 net.ipv4.ip_forward
&&& /proc/sys/kernel/hostname =》 kernel.hostname
&&& 可以使用下面命令查询所有可修改的变量名
&&& # sysctl Ca
&&& 下面例举几个简单的内核参数:
&&& 1./proc/sys/kernel/shmmax
&&& 该文件指定内核所允许的最大共享内存段的大小。
&&& 2./proc/sys/kernel/threads-max
&&& 该文件指定内核所能使用的线程的最大数目。
&&& 3./proc/sys/kernel/hostname
&&& 该文件允许您配置网络主机名。
&&& 4./proc/sys/kernel/domainname
&&& 该文件允许您配置网络域名。
本文地址 :
------分隔线----------------------------本站文章信息来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如果您有什么意见或建议,请联系QQ28-!
健康还是时尚? 残酷竞争促 智能手环分化
百度机器人商业首秀 人工智能在肯德基点鸡块薯条
虚拟现实还只是电影中遥不可及的愿景
3D打印将会融入我们的身体 服务领域从生到死
4月28日消息,一年一度的GMIC大会于今日开幕,在下午的全球智能机器人大会上,地平线机器人技术创始人兼CEO余凯发表了开场演讲,认为人工智...
恰逢人工智能诞生60周年,由人工智能学会发起的2016全球人工智能技术大会暨人工智能60周年纪念活动启动仪式,在北京国家会议中心召开。老中...
据美国科技媒体网站The Verge4月30日报道,法国喷气滑雪冠军和世界摩托赛艇冠军佛朗基 萨帕塔(Franky Zapata)操控喷气动力 悬浮滑板 Flyboa...
斯坦福大学人工智能与伦理学教授杰瑞卡普兰认为,不久的将来,人类再也不用劳动。因为人工智能在自动化作业、自动驾驶,合成智能、执行能力...怎么修改AIX操作系统上使用oracle数据库的一些限制参数_百度知道
怎么修改AIX操作系统上使用oracle数据库的一些限制参数
提问者采纳
i /etc&#47.shmall等参数限制;sysctl.conf 修改 kernel
其他类似问题
为您推荐:
oracle数据库的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁9378人阅读
最大共享内存段尺寸(字节)
最少若干兆(见文本)
最小共享内存段尺寸(字节)
可用共享内存的总数量(字节或者页面)
如果是字节,就和 SHMMAX
一样;如果是页面,ceil(SHMMAX/PAGE_SIZE)
每进程最大共享内存段数量
只需要 1 个段,不过缺省比这高得多。
系统范围最大共享内存段数量
类似 SHMSEG
加上用于其他应用的空间
信号灯标识符的最小数量(也就是说,套)
至少ceil(max_connections / 16)
系统范围的最大信号灯数量
ceil(max_connections / 16) * 17
上用于其他应用的空间
每套信号灯最小信号灯数量
信号灯映射里的记录数量
信号灯的最大值
至少 1000 (缺省通常是32767,除非被迫,否则不要修改)
最重要的共享内存参数是 SHMMAX
以字节记的共享内存段可拥有的最大尺寸。
如果你收到来自shmget
的类似Invalid argument
这样的错误信息,那么很有可能是你超过限制了。
有些系统对系统里面共享内存的总数(SHMALL
)还有限制。
请注意这个数值必须足够大。
(注意:SHMALL
在很多系统上是用页面数,而不是字节数来计算的。)
系统里的最大信号灯数目是由SEMMNS
因此这个值应该至少和 max_connections
设置一样大,并且每十六个联接还要另外加一个。&
参数SEMMNI
决定系统里一次可以存在的信
号灯集的数目。
因此这个参数至少应该为 ceil(max_connections % 16)
降低允许的联接数目是一个临时的绕开失败的方法,这个启动失败通常被来自函数semget
的错误响应
No space left on device
搞得很让人迷惑。
有时候还可能有必要增大SEMMAP
,使之至少按照 SEMMNS
配置。这个参数定义信号灯资源映射的尺寸,
可用的每个连续的信号灯块在这个映射中存放一条记录。
每当一套信号灯被释放,那么它要么会加入到该映射中一条相连的已释放的块的入口中,要么注册成一条新的入口。如果映射填满了碎片,
那么被释放的信号灯就丢失了(除非重起)。因此时间长信号灯空间的碎片了会导致可用的信号灯比应该有的信号灯少。
参数,决定一套信号灯里可以有多少信号灯,
缺省设置只适合小安装(缺省最大共享内存是 32 MB)。不过,其它的缺省值都相当大,
通常不需要改变。最大的共享内存段设置可以用 sysctl
接口设置。
比如,要允许 128 MB,并且最大的总共享内存数为 2097152 页(缺省):
sysctl -w kernel.shmmax=
sysctl -w kernel.shmall=2097152
你可以把这些设置放到 /etc/sysctl.conf
里,在重启后保持有效。
老版本里可能没有
但是同样的改变可以通过操作 /proc
文件系统来做:
&/proc/sys/kernel/shmmax
echo 2097152 &/proc/sys/kernel/shmall
另外可行的方法:
修改方法如下:修改/etc/rc.d/rc.local文件。
在文件的前面注释的后面加入以下行:
#修改内核共享内存大小;
echo&/proc/sys/kernel/
#说明:这里的值为内存的一半;
#如果系统内存是256M,则值为;
#如果系统内存是512M,则值为;
修改完成以后,重起机器就搞定。
其它系统的修改方法
在 OS X 10.2 以及更造版本里,
编辑文件 /System/Library/StartupItems/SystemTuning/SystemTuning
并且用下列命令修改这些数值:
sysctl -w kern.sysv.shmmax
sysctl -w kern.sysv.shmmin
sysctl -w kern.sysv.shmmni
sysctl -w kern.sysv.shmseg
sysctl -w kern.sysv.shmall
在 OS X 10.3 及以后的版本里,这些命令移动到 /etc/rc
里面去了,必须在那里编辑。
你需要重新启动才能让设置生效。请注意 /etc/rc
OS X 更新覆盖
(比如 10.3.6 到 10.3.7),所以每次更新后你可能都需要重新编辑。
在这个平台上,SHMALL
是用 4KB 页来度量的。
还要注意有些版本的 OS X 将拒绝把 SHMMAX
的数值数值为非 4096 的倍数。
SCO OpenServer
缺省配置时,只允许每段 512KB 共享内存。
要增大设置,首先进入 /etc/conf/cf.d
要显示当前的以字节记的
./configure -y SHMMAX
设置 SHMMAX
./configure SHMMAX=value
这里 value
是你想设置的以字节记的新值。
设置完了以后SHMMAX
重新制作内核
./link_unix
然后重起。
至少对于版本 5.1 而言,我们有必要为类似 SHMMAX
这样的参数做特殊的配置,
因为这个参数可以配置为所有内容都当作共享内存使用。这就是类似 DB/2
这样的数据库常用的配置。
不过,我们可能有必要在 /etc/security/limits
里面修改全局 ulimit
信息,因为文件大小的缺省硬限制(fsize
)以及文件数(nofiles
)可能太低了。
至少到版本 2.6 为止,共享内存段的缺省最大设置对 PostgreSQL
来说是太低了。相关的设置可以在/etc/system
里面修改,
set shmsys:shminfo_shmmax=0x2000000
set shmsys:shminfo_shmmin=1
set shmsys:shminfo_shmmni=256
set shmsys:shminfo_shmseg=256
set semsys:seminfo_semmap=256
set semsys:seminfo_semmni=512
set semsys:seminfo_semmns=512
set semsys:seminfo_semmsl=32
你要重起系统令修改生效。
获取关于 Solaris
里面的共享内存的信息。
在 UnixWare
上,缺省配置里的最大共享内存段是 512 kB。
要显示SHMMAX
的当前值,
/etc/conf/bin/idtune -g SHMMAX
就会显示以字节记的当前的缺省的最小和最大值。
要给SHMMAX
置一个新值,运行:
/etc/conf/bin/idtune SHMMAX value
这里 value
是你想设置的以字节记的新值。
设置完SHMMAX
后,重建内核
/etc/conf/bin/idbuild -B
然后重起。
缺省时是只支持 4 MB 的共享内存。请记住共享内存是不能分页的;它是锁在
RAM 里面的。
要增加你的系统支持的共享缓冲区数目,向你的内核配置文件里增加下面的行:
options &SHMALL=8192&
options &SHMMAX=/(SHMALL*PAGE_SIZE/)&
以 4KB 页为单位计算,所以 1024 页面代表 4 M 共享内存。
所以上面的东西把共享内存区域增加到 32 MB。
对于运行 4.3 或者更新版本的人,你可能需要增大 KERNEL_VIRTUAL_MB
超过缺省的 248
做完上面的修改之后,然后编译内核并重起。
对于运行 4.0 或者更早的版本的,
请用 bpatch
找出当前内核的 sysptsize
值。它是启动的时候动态计算的。
$ bpatch -r sysptsize
然后,把 SYSPTSIZE
修改为在内核配置文件里的一个硬代码值。
算出来的值,并且为你需要的每个额外的 4 MB 共享内存再加
options &SYSPTSIZE=16&
不能用 sysctl
你可能还需要增加信号灯的数量;系统缺省的总数 60 只能允许大概
50 个 PostgreSQL
在内核配置文件里设置你需要的值,比如:
options &SEMMNI=40&
options &SEMMNS=240&
缺省设置只适合于很小的安装(比如,缺省 SHMMAX
是 32 MB)。
我们可以用
或者 loader
接口来修改。
下面的参数可以用 sysctl
sysctl -w kern.ipc.shmall=32768
sysctl -w kern.ipc.shmmax=
sysctl -w kern.ipc.semmap=256
要想让这些设置重启后有效,修改 /etc/sysctl.conf
如果用 sysctl
,那么剩下的信号灯设置是只读的,
但是信号灯可以在启动的时候,在
提示符下设置:
set kern.ipc.semmni=256
set kern.ipc.semmns=512
set kern.ipc.semmnu=256
类似的,这些东西可以在 /boot/loader.conf
以便重启之后依然有效。
你可能还想配置内核,让把共享内存装载到 RAM 里,避免他们被交换到交换分区中。
这些可以通过使用 sysctl
设置 kern.ipc.shm_use_phys
在 4.0 之前的 FreeBSD
版本类似 NetBSD
(见下文)。
编译内核时需要把选项 SYSVSHM
和 SYSVSEM
(缺省是打开的。)共享内存的最大尺寸是由选项SHMMAXPGS
(以页计)。
下面显示了一个如何设置这些参数的例子(OpenBSD
使用的是 option
SHMMAXPGS=4096
SHMSEG=256
SEMMNI=256
SEMMNS=512
SEMMNU=256
SEMMAP=256
你可能原意使用 sysctl
设置将共享内存锁在 RAM
中以避免它们被交换出去,
我们可以用 sysctl
设置 kern.ipc.shm_use_phys
来实现这个目的。
缺省设置看来对普通安装是足够的了。
10,SEMMNS
的出厂缺省是 128,
可能对大的数据库节点来说太小了。
可以在 System Administration Manager(系统管理器)
)下面的 Kernel
Configuration
-&Configurable
Parameters
配置。你配置完了以后敲 Create A
New Kernel
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:217084次
积分:2863
积分:2863
排名:第8547名
原创:66篇
转载:17篇
评论:37条
(1)(1)(3)(1)(2)(2)(1)(14)(12)(1)(3)(4)(1)(6)(17)(14)求助:AIX下面的消息队列的最大字节数的值,以及在什么地方配置;
[问题点数:20分]
求助:AIX下面的消息队列的最大字节数的值,以及在什么地方配置;
[问题点数:20分]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
2008年6月 Linux/Unix社区大版内专家分月排行榜第二2008年4月 Linux/Unix社区大版内专家分月排行榜第二2008年1月 Linux/Unix社区大版内专家分月排行榜第二2007年11月 Linux/Unix社区大版内专家分月排行榜第二2007年10月 Linux/Unix社区大版内专家分月排行榜第二2007年8月 Linux/Unix社区大版内专家分月排行榜第二
2008年8月 Linux/Unix社区大版内专家分月排行榜第三2008年5月 Linux/Unix社区大版内专家分月排行榜第三
2008年6月 Linux/Unix社区大版内专家分月排行榜第二2008年4月 Linux/Unix社区大版内专家分月排行榜第二2008年1月 Linux/Unix社区大版内专家分月排行榜第二2007年11月 Linux/Unix社区大版内专家分月排行榜第二2007年10月 Linux/Unix社区大版内专家分月排行榜第二2007年8月 Linux/Unix社区大版内专家分月排行榜第二
2008年8月 Linux/Unix社区大版内专家分月排行榜第三2008年5月 Linux/Unix社区大版内专家分月排行榜第三
本帖子已过去太久远了,不再提供回复功能。

我要回帖

更多关于 linux 修改最大连接数 的文章

 

随机推荐