调整Linux实例中limits系统参数的方法

在 Linux 系统中,/etc/security/limits.conf 文件用于实现用户和进程资源使用限制的精细化管控,例如控制打开文件数量、线程数及内存使用量等。其中,nofile 参数用于设定单个用户可打开的最大文件数。而系统级别对单个进程所能分配的文件描述符上限则由 /proc/sys/fs/nr_open 文件中的数值定义。若 nofile 的设置值超过 nr_open 所允许的上限,可能引发系统资源耗尽,甚至影响远程连接的可用性。因此,合理配置这些参数对保障 Linux 实例的稳定运行至关重要。本文将重点介绍如何在 Linux 实例中正确调整 limits.conf 文件中的 nofile 参数。

操作步骤

  1. 通过VNC远程登录Linux实例。具体请参见VNC远程登录。
  2. 执行以下命令,编辑/etc/security/limits.conf配置文件。
    vim /etc/security/limits.conf
  3.  修改nofile参数值
    1. 按i键进入编辑模式。
    2. 找到root soft nofile和root hard nofile参数,并将参数设置成以下内容。
      root soft nofile 65535
      root hard nofile 65535
    3. 按Esc键退出编辑模式。输入:wq,按Enter键,保存并退出。
说明

在 Linux 资源限制中,soft nofile 与 hard nofile 共同定义了用户可打开文件数的软、硬上限:

  • soft nofile:软限制,是系统发出的警告阈值。建议设置为 65535。请注意,此参数的值不应超过 hard nofile 的设置。

  • hard nofile:硬限制,是打开文件数的绝对上限,超出此值系统将报错。同样建议设置为 65535。此参数的值必须小于 /proc/sys/fs/nr_open 中定义的全局进程上限,否则可能导致您无法登录系统。

通过修改配置文件的方式进行设置可永久生效。若需临时调整当前会话的 nofile 限制,可使用命令 ulimit -n <value>。

 

 

本文档内容整理自移动云官方帮助中心(查看原文),仅供参考。