科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网服务器频道在Linux系统的dmesg中报告VFS: file-max limit reached

在Linux系统的dmesg中报告VFS: file-max limit reached

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

这是由于Linux的内核参数设置不当造成的,linux的文件系统部分由Kernel的VFS负责,在内核设置中,一般有一个最大打开文件数的上限。

2008年3月17日

关键字: ORACLE limit 服务器 dmesg Linux 操作系统 Kernel

  • 评论
  • 分享微博
  • 分享邮件

  问题

  在Linux系统的dmesg中报告VFS:

  VFS: file-max limit 8192 reached

  VFS: file-max limit 8192 reached

  VFS: file-max limit 8192 reached

  VFS: file-max limit 8192 reached

  解决方案

  这是由于Linux的内核参数设置不当造成的

  linux的文件系统部分由Kernel的VFS负责

  在内核设置中,一般有一个最大打开文件数的上限

  即file-max

  这个参数的当前值可以用如下命令查询:

  [root@prima ~]# sysctl -a | grep file-max

  fs.file-max = 8192

  [root@prima ~]#

  不同版本的linux,这个参数设置的范围不一样

  老版本的Redhat 7.2 Linux,默认为8192,比较小

  在运行邮件系统、Oracle、VPS等大型应用时候

  会让内核达到自身资源上限

  解决方法:

  登录到linux上,执行如下命令:

  sysctl -w fs.file-max=16384

  即可将这个内核参数设置到16384

  这个命令不需要重启系统即可生效

  但是下次重启系统,内核参数fs.file-max又会变成系统默认的8192

  这需要修改配置文件/etc/sysctl.conf

  加入如下一行:

  fs.file-max=16384

  保存退出

  这样即便重启了服务器,参数也是指定的16384了

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章