1.    系统最大打开文件描述符数:/proc/sys/fs/file-max

a.    查看

$ cat /proc/sys/fs/file-max

186405

2. 设置

a.    临时性

# echo 1000000 > /proc/sys/fs/file-max

2.    永久性:在/etc/sysctl.conf中设置

fs.file-max = 1000000

2.    进程最大打开文件描述符数:user limit中nofile的soft limit

a.    查看

$ ulimit -n

1700000

2. 设置

a.    临时性:通过ulimit -Sn设置最大打开文件描述符数的soft limit,注意soft limit不能大于hard limit(ulimit -Hn可查看hard limit),另外ulimit -n默认查看的是soft limit,但是ulimit -n 1800000则是同时设置soft limit和hard limit。对于非root用户只能设置比原来小的hard limit。

查看hard limit:

$ ulimit -Hn

1700000

设置soft limit,必须小于hard limit:

$ ulimit -Sn 1600000

2.    永久性:上面的方法只是临时性的,注销重新登录就失效了,而且不能增大hard limit,只能在hard limit范围内修改soft limit。若要使修改永久有效,则需要在/etc/security/limits.conf中进行设置(需要root权限),可添加如下两行,表示用户chanon最大打开文件描述符数的soft limit为1800000,hard limit为2000000。以下设置需要注销之后重新登录才能生效:

chanon           soft    nofile          1800000

chanon           hard   nofile          2000000

设置nofile的hard limit还有一点要注意的就是hard limit不能大于/proc/sys/fs/nr_open,假如hard limit大于nr_open,注销后无法正常登录。可以修改nr_open的值:

# echo 2000000 > /proc/sys/fs/nr_open

3.    查看当前系统使用的打开文件描述符数

[root@localhost bin]# cat /proc/sys/fs/file-nr

5664        0        186405

其中第一个数表示当前系统已分配使用的打开文件描述符数,第二个数为分配后已释放的(目前已不再使用),第三个数等于file-max。

4.    总结:

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

转载于:https://www.cnblogs.com/zhming26/p/6170375.html

Linux最大打开文件描述符数相关推荐

  1. Linux C:文件描述符、IO重定向、恢复标准输入输出

    目录 一.文件描述符 二.IO重定向 三.重定向回终端.伪终端 四.恢复标准输入输出 一.文件描述符 在Linux中,文件描述符是一个非负整数的数据类型.是FILE结构体中的一个成员属性. 每打开或者 ...

  2. linux文件描述符有什么用,linux上的文件描述符3有什么特别之处?

    我的工作,那将在Linux和Mac OS X上运行的服务器应用程序它是这样的:linux上的文件描述符3有什么特别之处? 启动主要应用 控制器进程的叉 调用lock_down()在控制过程中 再次叉终 ...

  3. Linux下利用文件描述符恢复的成功失败实验

    数据误删除是作为初级运维人员常常遇到的"低级错误",一些有经验的老手有时也在疲劳.不冷静的情况下"马失前蹄".一旦误删除数据文件,尽快采用影响最小.最迅速的手段 ...

  4. jq fileupload 设置最大文件大小5m_如何在 Linux 服务器上设置 ulimit 和文件描述符数限制 | Linux 中国...

    在生产环境中遇到打开文件数这类的挑战如今已是司空见惯的事情了.-- Shashidhar Soppin 
简介:在生产环境中遇到打开文件数这类的挑战如今已是司空见惯的事情了.因为许多应用程序是基于 J ...

  5. Linux中的文件描述符与打开文件之间的关系

    1. 概述 在Linux系统中一切皆可以看成是文件,文件又可分为:普通文件.目录文件.链接文件和设备文件.文件描述符(file descriptor)是内核为了高效管理已被打开的文件所创建的索引,其是 ...

  6. linux命令之修改系统允许进程打开文件描述符限制-ulimit

    在linux下网络服务经常会遇到的一个问题就打开过多的端口或者创建大量的连接会失败,这是因为系统对每个进程能够打开的资源是有限制的. 打开过多的端口或者创建大量的连接,都会打开大量文件描述符,linu ...

  7. linux 描述符 打开 个数,Linux下增大可打开文件描述符的最大数的方法

    在安装Oracle Grid Infrastructure检查约束时遇到一个错误,大体是说当前可打开的文件描述符的最大数为1024,而要求是65536. 于是在gird用户下执行ulimit -a,显 ...

  8. Linux中对文件描述符的操作(FD_ZERO、FD_SET、FD_CLR、FD_ISSET

    在Linux中,内核利用文件描述符(File Descriptor)即文件句柄,来访问文件.文件描述符是非负整数.打开现存文件或新建文件时,内核会返回一个文件描述符.读写文件也需要使用文件描述符来指定 ...

  9. Linux网络编程--文件描述符

    文件描述符 在Unix和Unix-like操作系统中,文件描述符(file descriptor, FD)是一个文件或者像pipe或者network socket等之类的输入/输出源的唯一标识. 文件 ...

最新文章

  1. “高龄”员工如何给家庭保障
  2. Qt Data Visualization
  3. 使用 kubeadm 创建一个 kubernetes 集群
  4. 【桌面虚拟化】之五PCoIP
  5. 关于json 转换BigDecimal精度丢失问题
  6. allegro大十字光标设置方法
  7. 常用配置文件格式比较
  8. 关于 CSS will-change 属性你需要知道的事
  9. 从readyState状态看AJAX
  10. tomcat运行的本质
  11. python+Selenium2+chrome构建动态网页爬虫工具
  12. CefSharp学习笔记
  13. ros2 launch 用法以及一些基础功能函数的示例
  14. 获取PC 服务器 可用的GPU
  15. java类实现接口关键字_一个Java类实现一个接口使用的是implements关键字。
  16. Object.freeze()
  17. css3实现加载进度条的效果(二)
  18. Guessing Camels
  19. Datename() 函数与DatePart()函数
  20. ebs开发入门 oracle 知乎_知乎日报

热门文章

  1. 2012年12月4期手机网页开发
  2. Ubuntu 10.04 LTS 网站权限不够
  3. 基于OHCI的USB主机 —— 结束语
  4. 行情分析:下杀或不可持续,市场大概率继续震荡
  5. JavaScript的“ this”通过成立一个高中乐队来解释
  6. mysql中没有内置函数_[mysql]MySQL中的内置函数
  7. linux打开 root .m2,小辣椒M2 (LA-M2)获取ROOT权限教程,新手root必看
  8. 变频器参数设置_变频器接线和参数设置
  9. 再测Golang的JSON库
  10. NginxApachePHP参数汇总