在 CentOS 系统中,ulimit 命令用于设置或查看用户进程的资源限制。这些限制分为软限制(soft limit)和硬限制(hard limit)。它们之间的主要区别如下:
软限制(soft limit):这是用户可以自行调整的限制。用户可以在软限制范围内自由调整资源限制,但不能超过硬限制。软限制的目的是允许用户在不需要管理员干预的情况下调整资源使用。
硬限制(hard limit):这是系统管理员设置的最大限制,用户无法自行调整超过硬限制的资源。硬限制的目的是防止用户过度消耗系统资源,从而影响其他用户或整个系统的稳定性。
在 CentOS 系统中,可以使用 ulimit -H 命令查看硬限制,使用 ulimit -S 命令查看软限制。要修改这些限制,可以使用 ulimit 命令,例如:
查看当前用户的软限制和硬限制:
ulimit -a
设置当前用户的软限制和硬限制(例如,将最大文件描述符数量设置为 4096):
ulimit -n 4096
设置当前用户的软限制(例如,将最大进程数设置为 1024):
ulimit -u 1024
需要注意的是,通过 ulimit 命令设置的限制仅在当前 shell 会话中生效。要永久更改这些限制,需要修改 /etc/security/limits.conf 文件。在这个文件中,可以为特定用户或用户组设置软限制和硬限制。例如:
* soft nofile 4096
* hard nofile 8192
这将设置所有用户的最大文件描述符数量为 4096(软限制),最大允许值为 8192(硬限制)。