一、打开文件数(open files)
每个Linux系统对进程资源都会有默认的设置,要查看内核可以同时打开的文件描述符的值(open file),可以使用ulimit命令:
查询命令:ulimit -n
修改方法:
临时修改:root用户执行如下命令修改,例如修改为65535
ulimit -n 65535
说明:临时修改只能临时生效,切换用户、重新登录用户和重启操作系统就会还原
永久修改:使用root用户修改系统limit的配置文件,路径为/etc/security/limits.conf,在文件结尾添加如下内容并保存,例如65535
* soft nofile 65535
* hard nofile 65535
说明:
1、修改参数后可以重新登录登录用户或重启操作系统查看是否生效
2、前面的“*”代表所有用户,如果只单独用户修改该参数,可以将“*”换成需要修改的用户名称
3、如果遇到修改系统limit的配置文件后系统open files还是默认值的问题,可以将临时修改命令加到用户环境变量文件里面,即shell登录用户后自动执行了临时修改命令。
二、Linux系统调整信号量方法
查询命令
sysctl -a | grep kernel.sem
修改方法:以root用户执行如下命令,例如修改的参数为10240 32000 10240 10240
sysctl -w kernel.sem="10240 32000 10240 10240"
说明:
执行之后,系统就会将kernel.sem调整为10240 32000 10240 10240,但是在系统重启之后,就又会恢复的原来的默认值。如果想要系统重启之后修改值还是10240 32000 10240 10240 ,需要修改/etc/sysctl.conf文件,在文件中添加如下一行:
kernel.sem = 10240 32000 10240 10240
这样在机器重启之后这些系统会自动加载这些值的。
三、 Linux系统调整共享内存的方法
查询命令
sysctl -a | grep kernel.shmmax
修改方法:以root用户执行如下命令,例如修改的参数为18446744073692774399
sysctl -w kernel.shmmax="18446744073692774399"
说明:
系统就会将shmmax调整为18446744073692774399,但是在系统重启之后,就又会恢复的原来的默认值。如果想要系统重启之后修改值还是18446744073692774399,需要修改/etc/sysctl.conf文件,在文件中添加如下一行:
kernel. shmmax = 18446744073692774399
这样在机器重启之后这些系统会自动加载这些值的。
四、参数修改注意事项
1、系统打开文件数一般默认为1024,建议安装前建议修改,打开文件数建议为65535,如果查询到的参数比该值大,可以不做修改
2、系统信号灯值参数系统默认值一般都比较小,建议安装前修改,个人建议值为10240 32000 10240 10240,如果查询到的系统参数比这个大,可以不做修改
3、共享内存参数现在一般高版本的操作系统默认值会很大,此参数没有统一的建议值,一般在出现问题时在做调整