centos

CentOS ulimit如何调整内存使用限制

小樊
39
2025-04-14 19:18:37
栏目: 智能运维

在 CentOS 系统中,ulimit 命令用于设置或查看用户进程的资源限制。如果你想调整内存使用限制,可以通过以下步骤来实现:

临时调整内存限制

  1. 查看当前的内存限制

    ulimit -a
    
  2. 设置内存限制

    • 例如,将软限制和硬限制都设置为 2GB:
      ulimit -v 2147483648
      
    • -v 参数用于设置虚拟内存大小(以 KB 为单位)。
  3. 验证设置

    ulimit -v
    

永久调整内存限制

临时调整只对当前 shell 会话有效。如果你想永久调整内存限制,可以修改 /etc/security/limits.conf 文件。

  1. 编辑 limits.conf 文件

    sudo vi /etc/security/limits.conf
    
  2. 添加或修改以下行

    • 例如,为用户 username 设置软限制和硬限制为 2GB:
      username soft as unlimited
      username hard as unlimited
      
    • 注意:as 是地址空间的限制,单位是 KB。2GB 等于 2147483648 KB。
  3. 保存并退出编辑器

  4. 重新登录或重启系统以使更改生效。

调整内核参数

如果你需要调整内核级别的内存限制,可以修改 /etc/sysctl.conf 文件。

  1. 编辑 sysctl.conf 文件

    sudo vi /etc/sysctl.conf
    
  2. 添加或修改以下行

    • 例如,设置最大内存使用量为 4GB:
      vm.max_map_count=262144
      vm.overcommit_memory=1
      vm.swappiness=10
      
    • vm.max_map_count 控制进程可以映射的内存区域数量。
    • vm.overcommit_memory 控制内存分配策略。
    • vm.swappiness 控制交换空间的使用倾向。
  3. 应用更改

    sudo sysctl -p
    

注意事项

通过以上步骤,你应该能够成功调整 CentOS 系统中的内存使用限制。

0
看了该问题的人还看了