700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 查看 修改linux系统的最大链接数限制 文件描述符限制 端口范围限制 虚拟内存等

查看 修改linux系统的最大链接数限制 文件描述符限制 端口范围限制 虚拟内存等

时间:2020-02-26 18:36:34

相关推荐

查看 修改linux系统的最大链接数限制 文件描述符限制 端口范围限制 虚拟内存等

一、修改最大连接数 1、查看当前文件描述符的限制数目的命令: ulimit -n 2、修改文件描述符的限制数目 2.1 临时改变当前会话: ulimit -n 65536 2.2 永久变更需要下面两个步骤: 1) 修改/etc/security/limits.conf 文件(注意带着前面的*号),如下: vi /etc/security/limits.conf * soft nofile 570000 * hard nofile 570000 保存退出后重新登录,其最大文件描述符已经被永久更改了;但是需要经过下面的步骤2)之后才能生效。 2) 重新加载库: 打开文件: vi /etc/pam.d/login 在最后加上: session required /lib64/security/pam_limits.so 即可3.查看和修改系统的最大打开文件限制位置: /proc/sys/fs/file-max查看命令: cat /proc/sys/fs/file-max修改:通过vi修改 /etc/sysctl.conf 文件,在该文件中加上: fs.file-max=2000000 可以在令针对此参数 的修改一直生效,在该文件中,修改完后执行命令:

sysctl -p

使修改立即生效,而无需重启;

可使用下面两条命令验证一下修改是否成功:

cat /proc/sys/fs/file-max

或者

sysctl fs.file-max

4.修改nr_open通过vi修改 /etc/sysctl.conf,在该文件中加上: fs.nr_open = 2000000 可以在令针对此参数 的修改一直生效,在该文件中,修改完后执行命令: sysctl -p

使修改立即生效,而无需重启;

注意:

a.所有进程打开的文件描述符数不能超过/proc/sys/fs/file-max

b.单个进程打开的文件描述符数不能超过user limit中nofile的soft limit

c.nofile的soft limit不能超过其hard limit

d.nofile的hard limit不能超过/proc/sys/fs/nr_open

二、修改端口限制 主要是对内核参数sysctl.conf的优化,/etc/sysctl.conf 是用来控制linux网络的配置文件,对于依赖网络的程序(如web服务器和cache服务器)非常重要,RHEL默认提供的最好调整。推荐配置(把下面内容添加进去):

net.ipv4.ip_local_port_range = 1024 65535net.core.rmem_max = 16777216net.core.wmem_max = 16777216net.ipv4.tcp_rmem = 4096 87380 16777216net.ipv4.tcp_wmem = 4096 65536 16777216net.ipv4.tcp_fin_timeout = 10net.ipv4.tcp_tw_recycle = 1net.ipv4.tcp_timestamps = 0net.ipv4.tcp_window_scaling = 0net.ipv4.tcp_sack = dev_max_backlog = 30000net.ipv4.tcp_no_metrics_save = 1net.core.somaxconn = 22144net.ipv4.tcp_syncookies = 0net.ipv4.tcp_max_orphans = 262144net.ipv4.tcp_max_syn_backlog = 262144net.ipv4.tcp_synack_retries = 2net.ipv4.tcp_syn_retries = 2vm.overcommit_memory = 1fs.file-max = 2000000fs.nr_open = 2000000

这个配置参考于cache服务器varnish的推荐配置和SunOne 服务器系统优化的推荐配置。这里有个对端口范围的限制如果不做修改原始的返回只有2.8万个port区间。 对上述内存参数的具体操作命令示例: 1)查看端口范围: [root@slave2 sub_client]# sysctl -a | grep range net.ipv4.ip_local_port_range = 1024 65000 2)修改内核参数sysctl.conf,打开该文件, vi /etc/sysctl.conf 如果文件中有参数net.ipv4.ip_local_port_range的配置,则将其修改为: net.ipv4.ip_local_port_range = 1024 65000 否则,直接加上这句话。 3)让配置立即生效: sysctl -p 另外,端口范围参数net.ipv4.ip_local_port_range不要超过1024和65535,1024以下系统使用,65535以上设置会会提示失败:

error: "Invalid argument" setting key "net.ipv4.ip_local_port_range"

三、查看linux下虚拟内存情况

使用命令free,例如:

[root@cddserver1 log_rd]# free

total used freeshared buffers cached

Mem: 7950788 1144080 68067080 51432 832588

-/+ buffers/cache: 260060 7690728

Swap: 8093688 97648083924

-------------------------------------------------

在linux kernel 2.6.25之前通过ulimit -n(setrlimit(RLIMIT_NOFILE))设置每个进程的最大打开文件句柄数不能超过NR_OPEN (1024*1024),也就是100多w(除非重新编译内核),而在25之后,内核导出了一个sys接口可以修改这个最大值(/proc/sys/fs /nr_open).具体的changelog

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。