当前位置: 首页 > news >正文

cgroup 使用

  1. 验证系统使用 cgroup v2:

    $ mount | grep cgroup2
    cgroup2 on /sys/fs/cgroup type cgroup2 (rw,nosuid,nodev,noexec,relatime,nsdelegate,memory_recursiveprot)
    
  2. 创建 cgroup:

    # 创建名为 limited_memory 的 cgroup
    sudo mkdir /sys/fs/cgroup/limited_memory
    
  3. 设置内存限制:

    # 限制内存用量为 2GB
    echo $((2 * 2 ** 30)) | sudo tee /sys/fs/cgroup/limited_memory/memory.max
    
  4. 将用户进程加入 cgroup:

    # 将 USER 的所有进程加入 cgroup
    for pid in $(pgrep -u USER); doecho $pid | sudo tee /sys/fs/cgroup/limited_memory/cgroup.procs
    done
    
  5. 验证配置:

    # 检查 cgroup 中的进程
    cat /sys/fs/cgroup/limited_memory/cgroup.procs
    

持久化

为了确保新进程也受到限制,可以在用户登录时自动将其加入到指定的 cgroup。这里通过创建一个用户服务来实现:

  1. 编辑单元文件:

    vim ~/.config/systemd/user/cgroup.service
    
    [Unit]
    Description=Move user session to cgroup[Service]
    ExecStart=/usr/bin/bash -c "echo $$ > /sys/fs/cgroup/limited_memory/cgroup.procs"[Install]
    WantedBy=default.target
    
  2. 重载单元文件:

    systemctl --user daemon-reload
    
  3. 启动服务:

    systemctl --user enable cgroup
    systemctl --user start cgroup
    
  4. 检查服务状态:

    systemctl --user status cgroup
    

反持久化

sudo rmdir /sys/fs/cgroup/limited_memory

参考:Controlling Process Resources with Linux Control Groups | iximiuz Labs

http://www.rkmt.cn/news/13241.html

相关文章:

  • US$34 PCAN Cable for ACDP Module3
  • US$39 CGPRO CAN V2.1 Adapter for CG Pro 9S12 Key Programmer
  • 使用 preact 渲染组件到任何元素
  • 《ZeroTier教程》03-客户端配置 zerotier-cli常用命令 桥接和路由配置示例
  • JAVA 语法基础课程动手动脑及课后实验问题整理文档
  • python垃圾回收
  • K8S部署Openwebui 服务(Nvidia版)
  • 9.27动手动脑及课后实验
  • NTT
  • 解决方案 | 无需安装任何插件,chrome如何快速搜索书签
  • Java语法基础课程动手动脑与实验问题深度解析
  • 课程中的所有动手动脑的问题以及课后实验性的问题
  • Java语法基础课程“动手动脑”问题与实验整理
  • 课后感想
  • Java基础核心问题 链接版
  • Python脚本生成包含标准的#ifndef保护宏的头文件
  • sg.帮我写一个类似于vb6窗体设计的PySimpleGUI布局设计助手
  • IP新定义下的商业新范式:基于定制开发开源AI智能名片S2B2C商城小应用的IP价值变现研究
  • mysql的单表多大要考虑分库分表
  • 无刷电机速度闭环控制
  • 微信小程序云开发 授权手机号快捷登陆
  • newDay05
  • AtCoder Beginner Contest 425 ABCDEF 题目解析
  • maven打包依赖
  • 对话汇总:从东方哲学到可计算架构的演进
  • 25.9.27 继续MyBatis
  • MoeCTF 2025 二进制漏洞审计:boomboom_revenge
  • 威联通 NAS Docker 容器更新详解:从备份、推送到重建的全流程指南
  • UNIQUE VISION Programming Contest 2024 Autumn (AtCoder Beginner Contest 425)
  • loguru 日志库快速入门