ubuntu

Ubuntu ulimit如何设置内存限制

小樊
73
2025-03-19 10:18:14
栏目: 智能运维

在Ubuntu系统中,ulimit命令用于控制shell进程及其子进程的资源限制。要设置内存限制,可以使用ulimit命令的-v选项。以下是具体步骤:

  1. 临时设置内存限制: 打开终端并输入以下命令来设置内存限制(以KB为单位):

    ulimit -v <memory_limit_in_kb>
    

    例如,要将内存限制设置为512MB(即524288KB),可以输入:

    ulimit -v 524288
    
  2. 永久设置内存限制: 要永久设置内存限制,需要编辑系统的资源限制配置文件。通常,这些文件是/etc/security/limits.conf/etc/pam.d/common-session/etc/pam.d/common-session-noninteractive

    • 打开/etc/security/limits.conf文件:

      sudo nano /etc/security/limits.conf
      
    • 在文件末尾添加以下行来设置内存限制(以KB为单位):

      * soft as unlimited
      * hard as unlimited
      

      这里的*表示所有用户,soft表示软限制,hard表示硬限制。你可以根据需要替换为特定用户或组。

    • 保存并关闭文件。

    • 编辑/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
      
    • 在文件中添加以下行:

      session required pam_limits.so
      
    • 保存并关闭文件。

  3. 验证设置: 重新登录系统或重启系统后,新的内存限制应该生效。你可以通过以下命令验证设置:

    ulimit -v
    

请注意,ulimit命令设置的内存限制是针对单个shell会话的,而永久设置会影响所有用户和进程。如果你需要更细粒度的控制,可能需要使用其他工具或配置文件。

0
看了该问题的人还看了