cgroups(7) Miscellaneous Information Manual cgroups(7) cgroups - cgroups . cgroup cgroupfs. cgroup ( ). cgroup cgroup. subsystem ( ) cgroup. cgroup cgroup cgroup. resource controllers ( ). cgroups hierarchy (). cgroup. ( ). cgroups cgroup . cgroup cgroups . 1 2 Cgroups cgroups 2.6.24. cgroup . cgroup . Documentation/admin-guide/cgroup-v2.rst ( Documentation/cgroup-v2.rst 4.17 ). cgroups ( 1) 3.10 . -o __DEVEL__sane_behavior (cgroups 2) 4.5. . cgroup.sane_behavior cgroups v1 . "0" . cgroups v2 cgroups v1 ( ). cgroups v2 cgroups v1. v1 v2 . 2 1 2 . cgroups v1 cgroups v2. CGROUPS 1 cgroups v1 cgroup . ( ) cgroups v1 cgroup . . cgroups . /user/joe/1.session 1.session cgroup joe /user. cgroup cgroup . () cgroups v1 processes () tasks (). ( ). cgroups v1 cgroup . cgroups v1 cgroups . memory () . cgroup cgroups v2 ( " " ). v1 cgroups CONFIG_CGROUP. v1 . v1 cgroup. tmpfs(5) /sys/fs/cgroup. cpu ( ) : mount -t cgroup -o cpu none /sys/fs/cgroup/cpu . cpu cpuacct : mount -t cgroup -o cpu,cpuacct none /sys/fs/cgroup/cpu,cpuacct cgroup . cgroup /foo1 /foo2/foo3 . v1 : mount -t cgroup -o all cgroup /sys/fs/cgroup ( -o all .) cgroup. cpu cpuacct cpu . . . v1 /sys/fs/cgroup systemd(1) . v1 cgroup umount(8) : umount /sys/fs/cgroup/pids : cgroup cgroup . umount(8) . cgroup cgroup . Cgroups 1 cgroups 1 ( ). cgroups CONFIG_CGROUPS. cpu ( 2.6.24 CONFIG_CGROUP_SCHED) " " Cgroups . cgroup . Documentation/scheduler/sched-design-CFS.rst. 3.2 " " . CONFIG_CFS_BANDWIDTH ( cgroup) cgroup. . Documentation/scheduler/sched-bwc.rst. cpuacct ( 2.6.24 CONFIG_CGROUP_CPUACCT) . Documentation/admin-guide/cgroup-v1/cpuacct.rst. cpuset ( 2.6.24 CONFIG_CPUSETS) cgroup (CPU) NUMA. Documentation/admin-guide/cgroup-v1/cpusets.rst. memory ( 2.6.25 CONFIG_MEMCG) cgroups. Documentation/admin-guide/cgroup-v1/memory.rst. devices ( 2.6.26 CONFIG_CGROUP_DEVICE) (mknod) . . cgroups . Documentation/admin-guide/cgroup-v1/devices.rst. freezer ( 2.6.28 CONFIG_CGROUP_FREEZER) cgroup freezer () cgroup. cgroup /A /A/B. Documentation/admin-guide/cgroup-v1/freezer-subsystem.rst. net_cls ( 2.6.29 CONFIG_CGROUP_NET_CLASSID) (classid) cgroup cgroup. tc(8). cgroup . Documentation/admin-guide/cgroup-v1/net_cls.rst. blkio ( 2.6.33 CONFIG_BLK_CGROUP) cgroup blkio . . CFQ. CFQ. . Documentation/admin-guide/cgroup-v1/blkio-controller.rst. perf_event ( 2.6.39 CONFIG_CGROUP_PERF) perf cgroup. net_prio ( 3.3 CONFIG_CGROUP_NET_PRIO) cgroups. Documentation/admin-guide/cgroup-v1/net_prio.rst. hugetlb ( 3.5 CONFIG_CGROUP_HUGETLB) cgroups. Documentation/admin-guide/cgroup-v1/hugetlb.rst. pids ( 4.3 CONFIG_CGROUP_PIDS) cgroup ( ). Documentation/admin-guide/cgroup-v1/pids.rst. rdma ( 4.11 CONFIG_CGROUP_RDMA) RDMA RDMA/IB cgroup. Documentation/admin-guide/cgroup-v1/rdma.rst. cgroups cgroup cgroup '/' . cgroup cgroup: mkdir /sys/fs/cgroup/cpu/cg1 cgroup . cgroup (PID) cgroup.procs cgroup: echo $$ > /sys/fs/cgroup/cpu/cg1/cgroup.procs PID . 0 cgroup.procs cgroup . PID cgroup.procs cgroup . cgroup . PID cgroup.procs cgroup . cgroup.procs cgroup. PID . . ( PID ). cgroups v1 cgroup ( clone(2) gettid(2)) tasks cgroup. cgroup. cgroups cgroup cgroups ( /zombie). . cgroup . Cgroups v1 cgroup . cgroup cgroups . cgroup release_agent cgroup . cgroup ( cgroup) release_agent. release_agent cgroup . release_agent . release_agent cgroup: mount -o release_agent=pathname ... release_agent (cgroup) notify_on_release . 0 release_agent. 1 release_agent. (root cgroup) 0. . (cgroups v1) (cgroups v1) : mount -t cgroup -o none,name=somename none /some/mount/point . . ( ). name=systemd systemd(1) . 5.0 cgroup_no_v1 ( ) cgroup_no_v1=named. (CGROUPS VERSION 2) (cgroups v2) . () . . o . o "" . (root cgroup) ( ). . o cgroup.controllers cgroup.subtree_control. o tasks. cgroup.clone_children cpuset. o cgroup.events. Documentation/admin-guide/cgroup-v2.rst . " " (thread mode) 4.14 ( ). . . . ( ) : mount -t cgroup2 none /mnt/cgroup2 . . ( ) . systemd(1) . cgroup_no_v1=list list all . ( systemd(1) ). systemd(1) cgroup2 /sys/fs/cgroup/unified . (mount -o) : nsdelegate ( 4.15) . . memory_localevents ( 5.2) memory.events . 5.2. 5.2 memory.events . . Documentation/admin-guide/cgroup-v2.rst : cpu ( 4.15) cpu cpuacct . cpuset ( 5.0) cpuset . freezer ( 5.2) freezer . hugetlb ( 5.6) hugetlb . io ( 4.5) blkio . memory ( 4.5) memory . perf_event ( 4.11) perf_event . pids ( 4.5) pids . rdma ( 4.11) rdma . net_cls net_prio . iptables(8) eBPF . devices eBPF (BPF_CGROUP_DEVICE) . : cgroup.controllers . cgroup.subtree_control . cgroup.subtree_control () . cgroup.controllers . '+' ( ) '-' ( ) : echo '+pids -memory' > x/y/cgroup.subtree_control cgroup.controllers ENOENT cgroup.subtree_control. cgroup.subtree_control cgroup.controllers . cgroup.subtree_control . ( pids) cgroup.subtree_control ( pids.max) . " " " ". ( ). A A. /cg1/cg2 /cg1/cg2 /cg1. /cg1 . leaf . /cg1 /cg1/leaf. /cg1/leaf /cg1. " " . ( ) (1) (2) -- cgroup.subtree_control . ( ). " " (thread mode) 4.14 ( ) " " . cgroup.events cgroup.events (-) ( ) : $ cat mygrp/cgroup.events populated 1 frozen 0 : populated 1 0 . frozen ( 5.2) 1 0 . cgroup.events . inotify(7) IN_MODIFY poll(2) POLLPRI POLLERR revents. . release_agent notify_on_release populated cgroup.events. 0 () ( ) 1 ( ) . release_agent : o cgroup.events ( ). . o . . cgroup.stat cgroup.stat ( 4.14) (-). : nr_descendants ( ) . nr_dying_descendants ( ) . . ( ) . . . : cgroup.max.depth ( 4.14) . 0 . ( mkdir(2) EAGAIN). "max" . "max". cgroup.max.descendants ( 4.14) . ( mkdir(2) EAGAIN). "max" . "max". : . ( ). . . . (delegater) ( root) . (delegatee) . (UID) . () /dlgt_grp : /dlgt_grp ( ) . /dlgt_grp/cgroup.procs . /dlgt_grp/cgroup.subtree_control (cgroups v2 ) ( /dlgt_grp/cgroup.controllers) . ( .) /dlgt_grp/cgroup.threads (cgroups v2 ) ( " " ). . ( - - cgroup.threads.) 1 (cgroups v1) tasks. ( pids.max memory.high) dlgt_grp. . /sys/kernel/cgroup/delegate (NOTES) cgroups v2. ( ) . dlgt_grp/cgroup.subtree_control . v2: nsdelegate cgroup 4.13 cgroups v2. cgroup v2 nsdelegate. cgroup v2 nsdelegate : mount -t cgroup2 -o remount,nsdelegate \ none /sys/fs/cgroup/unified . : o EPERM. cgroup.procs cgroup.subtree_control . o ( ENOENT). ( ) . . cecilia . cecilia . ( cecilia.) cecilia : o . ( .) o . nsdelegate . nsdelegate . : systemd(1) cgroup v2 . nsdelegate : cgroup_no_v1=all systemd.legacy_systemd_cgroup_controller cgroups v1 ( v2) systemd(1) cgroup v2 v2 . . ( ) (PID) "" cgroup.procs : o ( ) cgroup.procs . o cgroup.procs . . cgroups v1 1 2. ( cgroups v1 .) o cgroup v2 nsdelegate . o cgroups v1: (effective UID) ( ) (set-user-ID) . 4.11 cgroups v2 ( cgroups v1 cgroups v2.) : ( ) . 2 2 1 : o : . o : . cgroups v1. cgroups v1 . ( : .) cgroups v2 (cpu) . 4.14 2 . : o . ( .) o . o " " . cgroup.type "" . : domain 2 . () . cgroups v2 . threaded . . domain threaded . " ". domain invalid " ". . ( ) threaded "threaded" cgroup.type. "" ( threaded) . 2 : o : . 4.19 : cpu perf_event pids. o : . . . . : (1) "threaded" cgroup.type y/z domain. : o y/z threaded. o y domain threaded. ( " "). o y threaded ( ) domain invalid. y domain invalid. (2) "threaded" domain invalid y threaded. threaded . "threaded" . : (1) z domain (1.1) (1.2) z. ( .) : o z domain threaded. o z threaded domain invalid. (2) "threaded" domain invalid z threaded. threaded ( domain invalid) . domain threaded domain. threaded . (PID) cgroup.procs . . ( gettid(2)) cgroup.threads . . cgroup.procs cgroup.threads: o cgroup.threads . o cgroup.procs . ( .) o . ( cgroup.threads domain EOPNOTSUPP.) cgroup.threads ( domain) . . cgroup.procs (PIDs) . cgroup.procs . . : . " ": ( ) . cgroup.type cgroup.type: o "threaded". domain threaded. o "threaded" cgroup.type : o domain domain threaded: ( ) o domain invalid: ( ) ( threaded) o threaded: ( ). o cgroup.type domain invalid. threaded . x: o x. ( x .) o cgroup.subtree_control x. "threaded" cgroup.type ENOTSUP. "domain threaded" domain threaded : o "threaded" . o . domain threaded x domain - threaded x x . domain threaded x domain: o domain invalid x domain. o domain threaded. (cgroup) (cgroup) : domain threaded. "threaded" cgroup.type : o threaded. o (threaded) domain invalid. domain threaded. ( threaded.) (threaded) cpu () . "cpu" v2 4.19 cpu ( SCHED_FIFO SCHED_RR SCHED_DEADLINE sched(7)). cpu . ( write(2) "+cpu" cgroup.subtree_control EINVAL.) systemd(1) . cpu. mount(2): EBUSY name= ( ) ( all). fork(2) (cgroup) . execve(2). CLONE_INTO_CGROUP clone3(2) . /proc /proc/cgroups ( 2.6.24) . ( ) : #subsys_name hierarchy num_cgroups enabled cpuset 4 1 1 cpu 8 1 1 cpuacct 8 1 1 blkio 6 1 1 memory 3 1 1 devices 10 84 1 freezer 7 1 1 net_cls 9 1 1 perf_event 5 1 1 net_prio 9 1 1 hugetlb 0 1 0 pids 2 1 1 : [1] . [2] . . 0 : o o o ( ). [3] . [4] 1 0 ( cgroup_disable). /proc/pid/cgroup ( 2.6.24) (PID) . . : hierarchy-ID:controller-list:cgroup-path : 5:cpuacct,cpu,cpuset:/daemons : [1] /proc/cgroups. 0. [2] . . [3] . . /sys/kernel/cgroup /sys/kernel/cgroup/delegate ( 4.15) v2 ( ) ( ). . 4.15 : $ cat /sys/kernel/cgroup/delegate cgroup.procs cgroup.subtree_control cgroup.threads /sys/kernel/cgroup/features ( 4.15) v2 . . : $ cat /sys/kernel/cgroup/features nsdelegate memory_localevents : memory_localevents ( 5.2) memory_localevents. nsdelegate ( 4.15) nsdelegate. memory_recursiveprot ( 5.7) memory_recursiveprot. prlimit(1), systemd(1), systemd-cgls(1), systemd-cgtop(1), clone(2), ioprio_set(2), perf_event_open(2), setrlimit(2), cgroup_namespaces(7), cpuset(7), namespaces(7), sched(7), user_namespaces(7) Documentation/admin-guide/cgroup-v2.rst. 3 . . : . 6.18 8 2026 cgroups(7)