前言:幸运的是,在基于 Linux 的服务器上,都有 ulimit 命令,通过它可以查看、设置、获取文件打开的状态和配置详情。此命令配备了许多选项,通过这些组合可以设置打开文件的数量。下面逐个命令用示例做了详细说明。
如何在 Linux 服务器上设置 ulimit 和文件描述符数限制!
在生产环境中遇到打开文件数这类的挑战如今已是司空见惯的事情了。因为许多应用程序是基于 Java 和 Apache 的,安装和配置它们可能会导致打开过多的文件(文件描述符)。如果打开的文件描述符超过了默认设置的限制,就可能会面临访问控制问题,受阻于打开文件的挑战。许多生产环境因此而陷入停滞状态。
【石家庄Linux培训】 Linux服务器上如何设置 ulimit 和文件描述符数限制!
幸运的是,在基于 Linux 的服务器上,都有 ulimit 命令,通过它可以查看、设置、获取文件打开的状态和配置详情。此命令配备了许多选项,通过这些组合可以设置打开文件的数量。下面逐个命令用示例做了详细说明。
查看任何 Linux 系统中当前打开文件数的限制
要在 Linux 服务器上得到打开文件数的限制,请执行以下命令,
上面的数字表明用户可以在每个用户登录会话中打开 ‘146013’ 个文件。
这清楚地表明,各个 Linux 操作系统具有不同的打开文件数限制。这基于各自系统中运行的依赖关系和应用程序。
ulimit 命令
顾名思义,ulimit(用户限制)用于显示和设置登录用户的资源限制。当我们使用 -a 选项运行 ulimit 命令时,它将打印登录用户的所有资源限制。现在让我们在 Ubuntu/Debian 和 CentOS 系统上运行 ulimit -a,
Ubuntu / Debian 系统
CentOS 系统
正如我们可以在这里看到的,不同的操作系统具有不同的限制设置。所有这些限制都可以使用 ulimit 命令进行配置/更改。
要显示单个资源限制,可以在 ulimit 命令中传递特定的参数,下面列出了一些参数:
使用以下命令检查登录用户打开文件数量的硬限制和软限制:
如何修复达到最大文件数限制的问题?
让我们假设我们的 Linux 服务器已经达到了打开文件的最大数量限制,并希望在系统范围扩展该限制,例如,我们希望将 100000 设置为打开文件数量的限制。
上述更改将在下次重启之前有效,因此要使这些更改在重启后仍存在,请编辑文件 /etc/sysctl.conf 并添加相同的参数,
保存文件并退出。
运行下面命令,使上述更改立即生效,而无需注销和重新启动。
现在验证新的更改是否生效。
使用以下命令找出当前正在使用的文件描述符数量:
注意:命令 sysctl -p 用于在不重新启动和注销的情况下提交更改。
通过 limit.conf 文件设置用户级资源限制
/etc/sysctl.conf 文件用于设置系统范围的资源限制,但如果要为 Oracle、MariaDB 和 Apache 等特定用户设置资源限制,则可以通过 /etc/security/limits.conf 文件去实现。
示例 limits.conf 如下所示,
Limits-conf-linux-part1
Limits-conf-linux-part2假设我们要为 linuxtechi 用户设置打开文件数量的硬限制和软限制,而对于 oracle 用户设置打开进程数量的硬限制和软限制,编辑文件 /etc/security/limits.conf 并添加以下行:
保存文件并退出。
注意: 如果你想对一个组而不是用户进行资源限制,那么也可以通过 limits.conf 文件,输入 @<组名> 代替用户名,其余项都是相同的,示例如下,
验证新的更改是否生效:
注:其他主要使用的命令是 lsof,可用于找出“当前打开了多少个文件”,这命令对管理员非常有帮助。
结尾
正如在介绍部分提到的,ulimit 命令非常强大,可以帮助用户配置并确保应用程序安装更加流畅而没有任何瓶颈。此命令有助于修复基于 Linux 的服务器中的(打开)大量文件的限制。
文章出自:http://qh.itpxw.cn/peixun/software/201948747.html
文章标题:【石家庄Linux培训】 Linux服务器上如何设置 ulimit 和文件描述符数限制!
免责声明:本站文章均由入驻起航学习网的会员所发或者网络转载,所述观点仅代表作者本人,不代表起航学习网立场。如有侵权或者其他问题,请联系举报,必删。侵权投诉
IT培训网 访问该机构站点 报名留言 加为好友 用户等级:注册会员
用户级别:10
机构名称:IT培训网
联 系 人:罗老师
联系电话:13783581536
联系手机:13783581536
在线客服:
在 线 QQ:
电子邮件:
网站域名:http://www.itpxw.cn
注册时间:2016-07-18 11:07
最后登录:2024-02-20 13:02
Java定义方法的格式是什么?IT培训网小编来告诉大家。所谓方法...
大家在Java教程中会学到关于Java消息推送的知识,那么,Java消息...
常用的Java日期格式转换有哪些?IT培训网小编来告诉大家。 1...
Java创建对象数组的方法是什么?IT培训网小编来告诉大家。Ja...