温馨提示×

怎样修改CentOS的文件描述符限制

小樊
38
2025-11-29 21:18:24
栏目: 智能运维

要修改 CentOS 的文件描述符限制,您可以按照以下步骤操作:

临时修改

  1. 查看当前限制: 使用 ulimit 命令查看当前的文件描述符限制。

    ulimit -n
    
  2. 临时修改限制: 使用 ulimit 命令临时修改当前 shell 会话的文件描述符限制。

    ulimit -n <新的限制值>
    

    例如,将限制设置为 65535:

    ulimit -n 65535
    

永久修改

  1. 修改系统范围的限制: 编辑 /etc/security/limits.conf 文件,添加或修改以下行:

    * soft nofile <新的限制值>
    * hard nofile <新的限制值>
    

    例如,将所有用户的软硬限制都设置为 65535:

    * soft nofile 65535
    * hard nofile 65535
    
  2. 修改 systemd 服务文件: 如果您希望修改特定 systemd 服务的文件描述符限制,可以编辑该服务的 .service 文件。通常位于 /etc/systemd/system//lib/systemd/system/ 目录下。

    sudo vi /etc/systemd/system/your_service.service
    

    [Service] 部分添加以下行:

    LimitNOFILE=65535
    

    然后重新加载 systemd 配置并重启服务:

    sudo systemctl daemon-reload
    sudo systemctl restart your_service
    
  3. 修改内核参数: 编辑 /etc/sysctl.conf 文件,添加或修改以下行:

    fs.file-max = <新的最大文件描述符数>
    

    例如,将最大文件描述符数设置为 100000:

    fs.file-max = 100000
    

    然后应用更改:

    sudo sysctl -p
    

验证修改

  1. 验证系统范围的限制: 使用 ulimit 命令查看修改后的限制。

    ulimit -n
    
  2. 验证 systemd 服务的限制: 使用 systemctl show 命令查看服务的限制。

    systemctl show your_service -p LimitNOFILE
    

通过以上步骤,您可以成功修改 CentOS 的文件描述符限制。

0