Linux:使用ulimit设置文件最大打开数

2010年6月12日 | 分类: 技术 | 标签: 5,049浏览 | By admin

大家都知道Linux系统默认打开文件数是1024,而实际的生产环境中,这个值总是显得太小,而太小的后果就是你的系统会报:too many open files 等这样的错误导致你系统死掉,所以我们总是要修改这个值,虽然表面上看来,Linux提供了ulimit这样的命令让你修改这个文件打开数,但不幸的是,过程远远没有看到的那么简单,下面子猴就谈谈这方面的问题。

1、  首先我们通过ulimit –a命令来查看系统的一些资源限制情况,如下

红框中所示的是最大文件打开数,一般情况下是1024,但由于我系统已经改为了32768,所以现在看到的是32768。

我们也可以通过ulimit –n命令来查看最大文件打开数,如下:

32768

2、  修改目标

我们的目标是:让每一个用户登录系统后系统打开的最大文件数都是我们设定好的。

但我这里不得不说的是:非常遗憾,网上很多这方面关于ulimit设置修改资源限制的文章,但没一篇文章管用。

把这个目标分解为两个目标:

2.1、设置对root用户登录系统生效

这个目标可以实现起来不难

2.2、设置对所有用户生效

这个就非常麻烦了,弄不好还会把你的系统给整坏,因为要重编译Linux的内核才行!

所以权衡之下,我只实现了第一个目标,因为第二个目标的风险太大,我想如果我之前知道这点,那么我在装系统的时候我会先做这个处理,但现在我觉得已经晚了。

3、  修改的地方

3.1、修改/etc/security/limits.conf

通过 vi /etc/security/limits.conf修改其内容,在文件最后加入(数值也可以自己定义):

* soft  nofile = 32768

* hard  nofile = 65536

3.2、修改/etc/profile

通过vi /etc/profile修改,在最后加入以下内容

ulimit -n 32768

然后重新登录即可生效了。

说明

其实只修改/etc/profile就可以生效了,但我还是建议把/etc/security/limits.conf也修改一下。

最后强调的是,你如果要使得修改对所有用户都生效,那么现在看来你只能重新编译Linux的内核才行。

如无转载说明,则均为本站原创文章,转载请注明:来源:子猴博客





相关内容

  1. 2010年6月13日08:21

    老九牌大白菜前来拍砖,嘿嘿

  2. 2010年6月13日09:54

    那个博客搜索竟然搜到我给别人的留言 最主要的是没搜到我 哈哈

  3. 子猴
    2010年6月13日10:57

    @权子
    谢谢反馈,可能再过段时间会有你的网站的

  4. 2010年6月13日13:14

    相识在于缘,相知在于诚,有老朋友的时候,能结识一些您这样新好朋友感到荣幸。

  5. 2010年6月13日14:34

    楼上的在说什么啊?

  6. 2010年6月13日21:34

    我的也是lin服务器。

  7. 2010年6月13日23:00

    这个,我应该用不到的吧

  8. 2010年6月14日13:45

    linux对于我而言是天书

*

酷!左边勾选上复选框,评论里将显示你博客文章!
:wink: :-| :-x :twisted: :) 8-O :( :roll: :-P :oops: :-o :mrgreen: :lol: :idea: :-D :evil: :cry: 8) :arrow: :-? :?: :!:

Upload Files

你可以上传一张或多张图片,这些图片将附在你评论里