如何永久更改 WSL2 Ubuntu 中的堆栈大小?我可以使用以下命令暂时更改大小:
ulimit -s unlimited
但这只会持续到会话关闭。我尝试将这些行添加到/etc/security/limits.conf
:
* soft stack unlimited
* hard stack unlimited
但这并没有改变所报告的堆栈限制ulimit -a
。
我可以调用ulimit -s unlimited
,.bashrc
但是这对于非交互式 shell 不起作用。
奇怪的是,如果我su
向自己的用户输入su user
,堆栈显示为无限!只有当我打开 shell 时,它才显示有 8192 的默认值。
答案1
/etc/security/limits.conf
由pam_限制。您需要通过 ssh、su、sudo 进行身份验证,聚丙烯酰胺并limits.conf
考虑文件。
我认为在 ~/.bashrc 或 /etc/bash.bashrc 中设置限制的替代方法也是在这些文件中,您可以导出 BASH_ENV 以指向类似于非交互式 shell 的 bashrc 的文件。
例如~/.bashrc
:
ulimit -s unlimited
export BASH_ENV=~/.bashrc-non-interactive
并且~/.bashrc-non-interactive
:
ulimit -s unlimited
更多细节:Bash 启动文件