ubuntu

ubuntu ulimit修改后生效吗

小樊
41
2025-07-30 15:19:15
栏目: 智能运维

在 Ubuntu 系统中,ulimit 命令用于控制 shell 进程及其子进程的资源限制。如果你修改了 ulimit 的设置,这些更改通常只对当前的 shell 会话有效。如果你打开一个新的终端窗口或会话,之前的设置将不会保留。

要使 ulimit 修改永久生效,你需要将设置添加到系统配置文件中。以下是一些常见的方法:

方法一:修改 /etc/security/limits.conf

  1. 打开终端。

  2. 使用文本编辑器(如 nanovim)打开 /etc/security/limits.conf 文件:

    sudo nano /etc/security/limits.conf
    
  3. 在文件末尾添加你想要设置的资源限制。例如,要设置所有用户的最大文件大小为 1GB,可以添加以下行:

    * soft fsize 1073741824
    * hard fsize 1073741824
    

    这里的 * 表示所有用户,soft 是软限制,hard 是硬限制。

  4. 保存并关闭文件。

方法二:修改 /etc/pam.d/common-session

  1. 打开终端。
  2. 使用文本编辑器打开 /etc/pam.d/common-session 文件:
    sudo nano /etc/pam.d/common-session
    
  3. 在文件末尾添加以下行:
    session required pam_limits.so
    
  4. 保存并关闭文件。

方法三:修改 /etc/pam.d/common-session-noninteractive

  1. 打开终端。
  2. 使用文本编辑器打开 /etc/pam.d/common-session-noninteractive 文件:
    sudo nano /etc/pam.d/common-session-noninteractive
    
  3. 在文件末尾添加以下行:
    session required pam_limits.so
    
  4. 保存并关闭文件。

方法四:修改用户的 shell 配置文件

如果你只想为特定用户设置 ulimit,可以修改该用户的 shell 配置文件(如 .bashrc.profile):

  1. 打开终端。
  2. 使用文本编辑器打开用户的 .bashrc 文件:
    nano ~/.bashrc
    
  3. 在文件末尾添加你想要设置的资源限制。例如:
    ulimit -f 1073741824
    
  4. 保存并关闭文件。
  5. 使更改生效:
    source ~/.bashrc
    

通过以上方法之一,你可以使 ulimit 的修改在系统重启后仍然有效。

0
看了该问题的人还看了