ulimit 是一个用于控制 shell 进程资源限制的命令行工具。它可以用来查看和设置用户进程的资源限制,例如文件大小、打开文件描述符的数量等。以下是一些常用的 ulimit 命令行参数及其用法:
查看所有资源限制:
ulimit -a
查看特定资源限制(例如,最大文件大小):
ulimit -f
查看打开文件描述符的最大数量:
ulimit -n
设置最大文件大小(以块为单位):
ulimit -f <size>
设置打开文件描述符的最大数量:
ulimit -n <number>
设置进程可以使用的最大内存大小(以 KB 为单位):
ulimit -m <size>
设置进程可以创建的最大子进程数:
ulimit -u <number>
设置进程可以使用的最大 CPU 时间(以秒为单位):
ulimit -t <time>
设置进程可以使用的最大虚拟内存大小(以 KB 为单位):
ulimit -v <size>
设置进程可以使用的最大堆栈大小(以 KB 为单位):
ulimit -s <size>
设置进程可以使用的最大数据段大小(以 KB 为单位):
ulimit -d <size>
设置进程可以使用的最大核心转储文件大小(以块为单位):
ulimit -c <size>
ulimit 命令设置的资源限制仅在当前 shell 会话中有效。关闭 shell 或重新登录后,更改将失效。/etc/security/limits.conf。假设你想将当前 shell 会话中打开文件描述符的最大数量设置为 4096,可以使用以下命令:
ulimit -n 4096
如果你想永久地将这个限制应用到所有用户,可以在 /etc/security/limits.conf 文件中添加以下行:
* soft nofile 4096
* hard nofile 4096
请注意,修改系统配置文件需要管理员权限,并且更改可能需要重新启动系统或重新登录才能生效。