ubuntu

Ubuntu ulimit如何修改

小樊
44
2025-12-23 05:17:40
栏目: 智能运维

在 Ubuntu 系统中,ulimit 命令用于控制 shell 进程及其子进程可以使用的资源限制。要修改 ulimit 设置,可以通过以下几种方法:

临时修改

  1. 通过命令行临时修改

    • 打开终端。
    • 使用 ulimit 命令来设置特定的资源限制。例如:
      ulimit -n 4096  # 设置打开文件描述符的最大数量为 4096
      ulimit -u 1024  # 设置用户可以同时运行的最大进程数为 1024
      
    • 这些修改只在当前 shell 会话中有效,关闭终端后设置将失效。
  2. 通过脚本临时修改

    • 在脚本的开头添加 ulimit 命令来设置资源限制。
    • 例如:
      #!/bin/bash
      ulimit -n 4096
      ulimit -u 1024
      # 脚本的其他部分
      

永久修改

  1. 修改 /etc/security/limits.conf 文件

    • 打开终端。
    • 使用文本编辑器(如 nanovim)打开 /etc/security/limits.conf 文件:
      sudo nano /etc/security/limits.conf
      
    • 在文件末尾添加以下行来设置资源限制:
      * soft nofile 4096
      * hard nofile 4096
      * soft nproc 1024
      * hard nproc 1024
      
    • 这些设置将对所有用户生效。你可以根据需要修改用户名和资源类型。
  2. 修改 /etc/pam.d/common-session/etc/pam.d/common-session-noninteractive 文件

    • 打开终端。
    • 使用文本编辑器打开 /etc/pam.d/common-session/etc/pam.d/common-session-noninteractive 文件:
      sudo nano /etc/pam.d/common-session
      sudo nano /etc/pam.d/common-session-noninteractive
      
    • 在文件末尾添加以下行来确保 limits.conf 设置生效:
      session required pam_limits.so
      
  3. 修改系统启动脚本

    • 对于特定的服务或应用程序,可以在其启动脚本中添加 ulimit 命令。
    • 例如,在 systemd 服务文件中添加:
      [Service]
      ExecStart=/usr/bin/myapp
      LimitNOFILE=4096
      LimitNPROC=1024
      

验证修改

通过以上方法,你可以根据需要临时或永久地修改 Ubuntu 系统中的 ulimit 设置。

0
看了该问题的人还看了