在 CentOS 系统中,文件描述符(File Descriptors)是一种用于访问文件和其他 I/O 资源的抽象指标
查看当前的文件描述符限制:
使用 ulimit
命令查看当前用户的文件描述符限制:
ulimit -n
使用 lsof
命令查看当前进程打开的文件描述符数量:
lsof | wc -l
临时修改文件描述符限制:
使用 ulimit
命令临时修改当前用户的文件描述符限制:
ulimit -n <新的限制值>
请注意,这种方法只会在当前 shell 会话中生效。关闭 shell 或重新登录后,更改将丢失。
永久修改文件描述符限制:
要永久修改文件描述符限制,需要编辑 /etc/security/limits.conf
文件。使用文本编辑器打开文件:
sudo vi /etc/security/limits.conf
在文件末尾添加以下行,用 <username>
替换要修改限制的用户名,用 <新的限制值>
替换新的限制值:
<username> soft nofile <新的限制值>
<username> hard nofile <新的限制值>
保存并关闭文件。下次用户登录时,新的限制将生效。
修改系统级别的文件描述符限制:
要修改系统级别的文件描述符限制,需要编辑 /etc/sysctl.conf
文件。使用文本编辑器打开文件:
sudo vi /etc/sysctl.conf
在文件末尾添加以下行,用 <新的限制值>
替换新的限制值:
fs.file-max = <新的限制值>
保存并关闭文件。运行以下命令使更改生效:
sudo sysctl -p
通过以上方法,您可以在 CentOS 系统中管理 ulimit 中的文件描述符。请注意,适当调整文件描述符限制以避免资源耗尽和性能问题。