ulimit 是一个用于控制 shell 进程资源使用的命令行工具。以下是一些使用 ulimit 命令的技巧:
查看当前资源限制:
使用 ulimit -a 命令可以查看当前用户的所有资源限制。
设置软限制和硬限制:
ulimit 命令允许你设置软限制(soft limit)和硬限制(hard limit)。软限制是用户可以自行调整的限制,而硬限制是系统管理员设置的最大限制。例如,要设置最大文件描述符数量为 4096,可以使用以下命令:
ulimit -n 4096
要设置软限制为 2048,硬限制为 4096,可以使用以下命令:
ulimit -Sn 2048 -Hn 4096
限制进程数:
使用 ulimit -u 命令可以设置允许的最大用户进程数。例如,要限制用户进程数为 1024,可以使用以下命令:
ulimit -u 1024
限制文件大小:
使用 ulimit -f 命令可以设置允许的最大文件大小(单位:块)。例如,要限制文件大小为 100MB,可以使用以下命令:
ulimit -f 102400
限制 CPU 时间:
使用 ulimit -t 命令可以设置允许的最大 CPU 时间(单位:秒)。例如,要限制 CPU 时间为 3600 秒,可以使用以下命令:
ulimit -t 3600
限制内存使用:
使用 ulimit -v 命令可以设置允许的最大内存使用量(单位:KB)。例如,要限制内存使用量为 512MB,可以使用以下命令:
ulimit -v 524288
限制核心文件大小:
使用 ulimit -c 命令可以设置允许的最大核心文件大小(单位:块)。例如,要限制核心文件大小为 100MB,可以使用以下命令:
ulimit -c 102400
临时修改资源限制:
使用 ulimit 命令设置的资源限制仅在当前 shell 会话中生效。要永久修改资源限制,需要编辑 /etc/security/limits.conf 文件。
在脚本中使用 ulimit:
可以在 shell 脚本中使用 ulimit 命令来设置资源限制。例如,在脚本开头添加以下行可以限制脚本中的最大文件描述符数量为 4096:
ulimit -n 4096
请注意,ulimit 命令的选项可能因操作系统和 shell 类型的不同而有所差异。在使用 ulimit 命令时,请参考相应系统的文档和手册页。