我需要在一个由大约100台机器组成的集群上执行一个进程。因此,我不能手动执行进程,我必须通过脚本来执行它们(该脚本使用ssh,目前我正在使用python-paramiko)。这些进程打开的tcp套接字数量超过了1024个(linux的默认限制)。因此,我需要使用{ulimit -n 10000}来更改它。这只会对当前的shell会话产生影响。而且,这个命令只适用于root用户。因此,我的脚本无法执行此操作。 我尝试执行这个命令。
sudo su && ulimit -n 10000 && <commandToExecuteMyProcess>
但这并没有起作用。在“sudo su”之后的命令根本没有执行。只有当我注销su会话时,它们才会执行。 这篇文章展示了使更改永久化的方法。但是当我打开limits.conf时,我发现里面什么都没有。它只有一些被注释的说明。 请建议一些方法来永久增加限制或通过脚本为每个会话更改它。