关闭。这个问题不符合 Stack Overflow guidelines 。它目前不接受答案。












想改善这个问题吗?更新问题,以便堆栈溢出为 on-topic

8年前关闭。



Improve this question




我使用的是 ubuntu 12.04,我在上面运行 ulimit -n ,它显示 1024,
我想将打开文件限制从 1024 增加到 65535,所以我尝试了以下命令:

sudo ulimit -n 65535

但我收到以下错误:
sudo: ulimit: command not found

如何将文件限制从 1024 增加到 65535?任何帮助将不胜感激。

最佳答案

ulimit 是一个类似于 cd 的内置 shell ,而不是一个单独的程序。 sudo 查找要运行的二进制文件,但没有 ulimit 二进制文件,这就是您收到错误消息的原因。您需要在 shell 中运行它。

然而,虽然您确实需要成为 root 才能将限制提高到 65535,但您可能不想以 root 身份运行您的程序。因此,在提高限制后,您应该切换回当前用户。

为此,请运行:

sudo sh -c "ulimit -n 65535 && exec su $LOGNAME"

你会得到一个新的 shell,没有 root 权限,但有提高的限制。 exec 导致新 shell 用 sudo 权限替换进程,因此在退出该 shell 后,您不会意外地再次成为 root。

关于linux - 使用 sudo ulimit 时找不到命令,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17483723/

10-13 08:41