在 CentOS 系统中,ulimit
命令用于设置或查看用户进程的资源限制。每个资源限制都有一个软限制(soft limit)和一个硬限制(hard limit)。软限制是用户可以自行增加的限制,而硬限制是系统管理员设置的最大值,用户无法自行超过这个值。
要调整硬限制和软限制,可以使用 ulimit
命令或者编辑 /etc/security/limits.conf
文件。
要临时调整当前 shell 会话的资源限制,可以使用 ulimit
命令。例如,要增加文件描述符的最大数量,可以这样做:
ulimit -n 4096
这里的 -n
表示文件描述符的数量,4096
是新的软限制。如果要同时设置软限制和硬限制,可以使用 -H
和 -S
选项:
ulimit -Hn 8192 # 设置硬限制
ulimit -Sn 4096 # 设置软限制
请注意,使用 ulimit
命令设置的限制只对当前的 shell 会话有效。一旦关闭 shell 或者重新登录,这些设置就会失效。
要永久调整用户的资源限制,需要编辑 /etc/security/limits.conf
文件。使用文本编辑器打开该文件:
sudo vi /etc/security/limits.conf
在文件的末尾添加以下行来设置用户的资源限制:
username soft nofile 4096
username hard nofile 8192
将 username
替换为实际的用户名,nofile
表示文件描述符的数量,4096
是软限制,8192
是硬限制。如果要为所有用户设置限制,可以使用 *
代替用户名。
保存并关闭文件后,新的限制将在用户下次登录时生效。
ulimit
或 /etc/security/limits.conf
,也可能无法超过内核参数设置的最大值。例如,文件描述符的总数可能受到内核参数 fs.file-max
的限制。通过上述方法,你可以根据需要调整 CentOS 系统中的资源限制。