linux ulimit 命令说明及配置
ulimit
是一个在 Linux 和 UNIX 系统中用来控制 shell 或进程使用系统资源的命令。它可以用来限制 shell 启动的进程的资源,例如可打开文件数量、CPU 使用时间、虚拟内存等。
基本语法:
ulimit [选项] [限制值]
常用选项:
-a
:显示当前所有的资源限制。-c
:设置 core 文件的最大值。-f
:为所有新建文件设置大小限制。-n
:设置每个进程可以打开的文件描述符的最大数量。-s
:设置堆栈的最大大小。-t
:设置每个进程的 CPU 使用时间上限。-u
:设置用户可以同时运行的进程数上限。-v
:设置虚拟内存的大小上限。
配置示例:
- 查看当前所有资源限制:
ulimit -a
- 设置打开文件数量的上限:
ulimit -n 4096
- 设置 core 文件的大小上限:
ulimit -c unlimited
- 设置栈的大小:
ulimit -s 1024
- 设置 CPU 使用时间上限(分钟):
ulimit -t 30
- 设置用户可创建的进程数上限:
ulimit -u 100
- 设置虚拟内存大小上限:
ulimit -v unlimited
注意:非 root 用户可能无法增加某些资源限制,这时候需要使用 root 用户或者 sudo 提升权限。此外,某些限制可能会被系统的 hard limit 所约束,这个值在 /etc/security/limits.conf
文件中定义,并且只有 root 用户可以修改。
评论已关闭