ulimit -n和-u可以查看linux的最大进程数和最大文件打开数。
临时方法:
为了优化linux性能,可能需要修改这个最大值。临时修改的话ulimit -n 204800就可以了,重启后失效。
永久生效的方法:
修改/etc/security/limits.conf文件
在文件末尾添加
[html] view plain copy
- * soft nofile 204800
- * hard nofile 204800
- * soft nproc 204800
- * hard nproc 204800
- * 代表针对所有用户
- noproc 是代表最大进程数
- nofile 是代表最大文件打开数
网上都是说修改这一个文件就行,但是我修改后重启服务器发现没更改过来。
后来发现,还需要修改两个文件
1、/etc/security/limits.d/90-nproc.conf文件尾添加
[html] view plain copy
- * soft nproc 204800
- * hard nproc 204800
2、/etc/security/limits.d/def.conf文件尾添加
[html] view plain copy
- * soft nofile 204800
- * hard nofile 204800
这两个文件的设置将会覆盖前面的设置。重启后生效
一、 文件数限制修改
(1) vi /etc/security/limits.conf
在末尾追加
* soft nofile 10240
* hard nofile 10240
(2) vi /etc/pam.d/login
在末尾追加
session required /lib/security/pam_limits.so
二、 网络端口限制修改
vi /etc/sysctl.conf
net.nf_conntrack_max=6553600
将参数65536改为6553600
vi /proc/sys/net/nf_conntrack_max
查看修改是否成功
三、 TCP连接优化
vi /etc/sysctl.conf
添加如下内容
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_fin_timeout = 20
/sbin/sysctl -p
执行使之生效