inode 或i节点是指对文件的索引。如一个系统,所有文件是放在磁盘或flash上,就要编个目录来说明每个文件在什么地方,有什么属性,及大小等。就像书本的目录一样,便于查找和管理。这目录是操作系统需要的,用来找文件或叫管理文件。许多操作系统都用到这个概念,如linux, 某些嵌入式文件系统等。当然,对某个系统来说,有许多i节点。所以对i节点本身也是要进行管理的。

在linux中,内核通过inode来找到每个文件,但一个文件可以被许多用户同时打开或一个用户同时打开多次。这就有一个问题,如何管理文件的当前位移量,因为可能每个用户打开文件后进行的操作都不一样,这样文件位移量也不同,当然还有其他的一些问题。所以linux又搞了一个文件描述符(file descriptor)这个东西,来分别为每一个用户服务。每个用户每次打开一个文件,就产生一个文件描述符,多次打开就产生多个文件描述符,一一对应,不管是同一个用户,还是多个用户。该文件描述符就记录了当前打开的文件的偏移量等数据。所以一个i节点可以有0个或多个文件描述符。多个文件描述符可以对应一个i节点。

“too manay open files” 错误与文件描述符有关

系统级限制:sysctl命令和proc文件系统中查看到的数值是一样的,这属于系统级限制,它是限制所有用户打开文件描述符的总和

查看系统限制命令:

  sysctl -a | grep -i file-max --color

  cat /proc/sys/fs/file-max

用户级限制:ulimit命令看到的是用户级的最大文件描述符限制,也就是说每一个用户登录后执行的程序占用文件描述符的总数不能超过这个限制

查看用户限制命令:  

  ulimit -n

用户级修改在文件 /etc/security/limits.conf

文件描述符理解:

https://blog.csdn.net/cywosp/article/details/38965239

https://blog.csdn.net/kumu_linux/article/details/7877770

最新文章

  1. vim 学习积累(一)
  2. 立体角的单位——立体弧度(sr)
  3. RSA For PHP
  4. U-Boot命令大全(功能参数及用法)
  5. PHPCMS出错Call to undefined function sitename()
  6. IOS 开发一些常用的地址
  7. Codeforces Round #260 (Div. 2) A
  8. JavaWeb之Servlet: ServletConfig 与 ServletContext
  9. JavaScript在IE和Firefox(火狐)的不兼容问题解决方法小结 【转】http://blog.csdn.net/uniqer/article/details/7789104
  10. flume服务的搭建
  11. passwnger
  12. index 辨别字符在字符串中的位置
  13. HTML简单介绍及常见元素
  14. teamview centos 配置
  15. Linux/Ubuntu下 静态编译Qt程序
  16. MySQL 暂时文件夹
  17. 基于visual Studio2013解决面试题之0309左移递减序列搜索
  18. UVALive 2522 Chocolate(概率DP)
  19. 关于Storm tick
  20. 【渗透测试】PHPCMS9.6.0 任意文件上传漏洞+修复方案

热门文章

  1. 5ucms的评论列表该怎么写
  2. Linux系列(3) - ls
  3. Shell系列(17)- 配置文件功能(待完善)
  4. Centos7安装配置Gitlab-CE
  5. python3使用imaplib获取邮件
  6. P4345-[SHOI2015]超能粒子炮·改【Lucas定理,类欧】
  7. 提权AND反弹OR转发
  8. mysql从零开始之MySQL LIKE 子句
  9. 【原创】xenomai 在X86平台下中断响应时间测试
  10. 题解 CF468C Hack it!