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
執行使之生效