Linux 文件描述符(fd)
文章目录前言前言Linux 系统中把一切都看做是文件,当进程打开现有文件或创建新文件时,内核向进程返回一个文件描述符,文件描述符就是内核为了高效管理已被打开的文件所创建的索引,用来指向被打开的文件,所有执行 I/O 操作的系统调用都会通过文件描述符。检查某个进程的文件描述符#以 sshd 为例,首先找到需要检查的进程 id,找到的进程 id 为 1063[root@c7-1 ~]#ps aux|g
·
文章目录
前言
Linux 系统中把一切都看做是文件,当进程打开现有文件或创建新文件时,内核向进程返回一个文件描述符,文件描述符就是内核为了高效管理已被打开的文件所创建的索引,用来指向被打开的文件,所有执行 I/O 操作的系统调用都会通过文件描述符。
- 检查某个进程的文件描述符
#以 sshd 为例,首先找到需要检查的进程 id,找到的进程 id 为 1063
[root@c7-1 ~]#ps aux|grep sshd
root 1063 0.0 0.1 112920 4360 ? Ss 04:49 0:00 /usr/sbin/sshd -D
root 88389 0.0 0.1 163616 6124 ? Ss 09:43 0:00 sshd: root@pts/1
root 102189 0.0 0.0 112732 968 pts/1 S+ 13:03 0:00 grep --color=auto sshd
#查看该进程的限制,在 Max open files 那一行,可以看到当前设置中最大文件描述符的数量为 1024
[root@c7-1 ~]#cat /proc/1063/limits
Limit Soft Limit Hard Limit Units
Max cpu time unlimited unlimited seconds
Max file size unlimited unlimited bytes
Max data size unlimited unlimited bytes
Max stack size 8388608 unlimited bytes
Max core file size 0 unlimited bytes
Max resident set unlimited unlimited bytes
Max processes 14959 14959 processes
Max open files 1024 4096 files
Max locked memory 65536 65536 bytes
Max address space unlimited unlimited bytes
Max file locks unlimited unlimited locks
Max pending signals 14959 14959 signals
Max msgqueue size 819200 819200 bytes
Max nice priority 0 0
Max realtime priority 0 0
Max realtime timeout unlimited unlimited us
#该进程占用 17 个文件描述符
[root@c7-1 ~]#cat /proc/1063/limits | wc -l
17
- 查看当前系统使用的打开文件描述符数
[root@c7-1 ~]#cat /proc/sys/fs/file-nr
8992 0 378170
#其中第一个数表示当前系统已分配使用的打开文件描述符数,第二个数为分配后已释放的(目前已不再使用),第三个数等于 file-max
- 进程最多打开的 fd
查看:ulimit -n
临时设置:ulimit -n 1000000
更多推荐
已为社区贡献3条内容
所有评论(0)