ulimit 命令用于控制 shell 进程及其子进程的资源限制。要设置堆栈大小,可以使用 -s 选项来指定软限制(soft limit)和硬限制(hard limit)。单位通常是千字节(KB)。
以下是如何使用 ulimit 设置堆栈大小的示例:
查看当前堆栈大小限制:
ulimit -s
ulimit -Hs
ulimit -Ss
ulimit -s 显示当前的软限制。ulimit -Hs 显示当前的硬限制(Hard limit)。ulimit -Ss 显示当前的软限制(Soft limit)。设置堆栈大小:
设置软限制:
ulimit -s <size_in_kb>
设置硬限制:
ulimit -Hs <size_in_kb>
例如,要将堆栈大小设置为 8MB(即 8192 KB),可以执行以下命令:
ulimit -s 8192
ulimit -Hs 8192
这些设置只对当前的 shell 会话有效。如果你希望永久更改这些限制,可以将这些命令添加到用户的 shell 配置文件中,例如 ~/.bashrc 或 ~/.bash_profile。
永久设置堆栈大小:
编辑 ~/.bashrc 或 ~/.bash_profile 文件,添加以下行:
ulimit -s 8192
ulimit -Hs 8192
然后重新加载配置文件:
source ~/.bashrc
或者重新启动终端。
请注意,某些系统可能会有不同的默认限制,具体取决于操作系统和配置。如果你遇到权限问题,可能需要以 root 用户身份运行这些命令。