温馨提示×

Ubuntu ulimit如何限制打开文件描述符数量

小樊
46
2025-11-27 15:00:49
栏目: 智能运维

在 Ubuntu 系统中,ulimit 命令用于设置或获取用户进程的资源限制。要限制打开的文件描述符数量,可以使用 ulimit 命令来设置 nofile 资源的限制。

以下是具体步骤:

  1. 临时限制: 打开终端并输入以下命令来临时设置当前 shell 会话的文件描述符限制:

    ulimit -n <number_of_descriptors>
    

    <number_of_descriptors> 替换为你希望设置的文件描述符数量。例如,要将限制设置为 1024,可以输入:

    ulimit -n 1024
    

    这个设置只对当前 shell 会话有效,关闭终端或重新登录后设置将失效。

  2. 永久限制: 要永久设置文件描述符的限制,可以编辑 /etc/security/limits.conf 文件。打开该文件:

    sudo nano /etc/security/limits.conf
    

    在文件的末尾添加以下行:

    * soft nofile <number_of_descriptors>
    * hard nofile <number_of_descriptors>
    

    <number_of_descriptors> 替换为你希望设置的文件描述符数量。* 表示所有用户,你也可以指定特定的用户名。

    保存并关闭文件后,重新登录以使更改生效。

  3. 系统级限制: 如果你需要设置系统级的文件描述符限制,可以编辑 /etc/sysctl.conf 文件。打开该文件:

    sudo nano /etc/sysctl.conf
    

    添加或修改以下行:

    fs.file-max = <number_of_descriptors>
    

    <number_of_descriptors> 替换为你希望设置的系统级文件描述符数量。保存并关闭文件后,运行以下命令使更改生效:

    sudo sysctl -p
    

通过以上步骤,你可以成功地在 Ubuntu 系统中限制打开的文件描述符数量。

0