在 Ubuntu 系统中,ulimit
命令用于控制 shell 会话中的资源限制。这些限制分为软限制(soft limit)和硬限制(hard limit)。软限制是用户可以自行调整的限制,而硬限制是由系统管理员设置的,用户无法直接修改。
要修改硬限制,您需要使用 ulimit
命令的 -H
选项来设置硬限制。以下是一些示例:
ulimit -Hn
这将显示当前进程的最大文件描述符数量。
ulimit -Hn <新的硬限制值>
将 <新的硬限制值>
替换为您希望设置的硬限制值。例如,如果您想将最大文件描述符数量设置为 4096,您可以运行:
ulimit -Hn 4096
请注意,这种方法只会临时更改当前 shell 会话的硬限制。当您关闭终端或重新启动系统时,更改将不会生效。
要永久更改硬限制,您需要编辑 /etc/security/limits.conf
文件。以下是一个示例:
/etc/security/limits.conf
文件。例如,使用 nano 编辑器:sudo nano /etc/security/limits.conf
<username>
,并将 <新的硬限制值>
替换为您希望设置的硬限制值:<username> hard nofile <new_hard_limit>
例如,如果您想将用户 “john” 的最大文件描述符数量设置为 4096,您可以添加以下行:
john hard nofile 4096
保存并关闭文件。
重新登录以使更改生效。
现在,您已经成功地为指定用户设置了新的硬限制。请注意,这仅适用于通过 PAM(Pluggable Authentication Modules)进行身份验证的用户。对于其他用户,您可能需要编辑其他配置文件,例如 /etc/pam.d/common-session
或 /etc/pam.d/common-session-noninteractive
。