You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

挂载cgroup时cgroup与none设备的差异及通用挂载选择

cgroup vs none 设备挂载的区别及跨发行版适配方案

背景信息

关闭cgroup v2的Ubuntu 22.04中,cgroup挂载信息:

cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpu,cpuacct)

CentOS 9 Stream(原生支持cgroup v1)中,挂载信息:

none on /run/cgroups/cpu type cgroup (rw,relatime,seclabel,cpu)

一、cgroup设备和none设备的核心区别

  • 功能完全一致,仅为发行版配置习惯差异
    两者挂载的都是同一套cgroup虚拟文件系统,对CPU、内存等资源的限制管理能力没有任何区别,只是不同发行版的标识和挂载偏好不同。
  • 设备名的含义差异
    • cgroup:是cgroup v1早期实现的传统写法,直接明确这是cgroup文件系统的挂载,Debian/Ubuntu系发行版偏爱这种表述。
    • none:是虚拟文件系统的通用占位符,说明该挂载没有对应的物理块设备(cgroup本身是内核虚拟出来的),RHEL/CentOS系常用这种标识。
  • 挂载路径与参数差异
    • 用cgroup的场景一般挂载到/sys/fs/cgroup/下,按子系统拆分独立挂载点,参数偏向基础权限控制(如nosuid、noexec)。
    • 用none的场景常挂载到/run/cgroups/,会带上发行版特有的安全参数(如CentOS的seclabel)。

二、跨发行版的最优挂载选择

优先选择以cgroup为设备名,挂载到/sys/fs/cgroup/[子系统名称]路径,理由:

  1. 这是cgroup v1的标准挂载路径,Debian/Ubuntu、Fedora、openSUSE等绝大多数主流发行版默认遵循这个规范。
  2. 即使是RHEL/CentOS系,手动按此方式挂载也能正常工作,不会出现兼容性问题。
  3. 如果需要兼容cgroup v2,可先检查/sys/fs/cgroup/unified是否存在(v2默认挂载点),不存在再按v1的标准方式挂载即可。

内容的提问来源于stack exchange,提问作者JenyaKh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 22:14:54