2012-07-05 171 views
19

SSH'ing到运行Linux的亚马逊AMI的EC2实例后,我想:如何增加Amazon EC2实例的ulimit?

ulimit -n 20000 

...并得到了以下错误:

-bash: ulimit: open files: cannot modify limit: Operation not permitted 

然而,外壳可以让我仅在当前会话中减少这个数字。

反正有增加在EC2实例上的ulimit (永久)

回答

46

事实上,通过ulimit命令更改值仅适用于当前shell会话。如果您想永久设置新限制,则必须编辑/etc/security/limits.conf文件并设置硬限制和软限制。这里有一个例子:

# <domain> <type> <item> <value> 
    *  soft nofile 20000 
    *  hard nofile 20000 

保存文件,注销,重新登录,并通过ulimit -n命令测试配置。希望能帮助到你。

P.S. 1:请牢记以下几点:

  • 软限制:内核对相应资源执行的值。
  • 硬限制:作为软限制的上限。

P.S. 2:/etc/security/limits.d/中的其他文件可能会影响limits.conf中配置的内容。

+3

重新PS2 - 如果您想更改这些值,建议您在limit.d中添加一个文件,因为它们优先。不要直接编辑limits.conf是我的建议。 – Ross 2014-07-12 16:09:03

+0

你确定你需要重新启动吗?我认为注销并返回就足够了。 – 2014-10-15 10:48:50

+0

对我来说,注销并重新登录工作。 – Meekohi 2014-12-10 15:39:50