24.7. 查看进程的 cgroup
您可以了解进程属于哪一个 控制组 (cgroup
)。然后,您可以检查 cgroup
,以查找其使用哪个控制器和特定于控制器的配置。
流程
要查看某个进程所属的
cgroup
,请运行# cat proc/<PID>/cgroup
命令:# cat /proc/2467/cgroup 0::/system.slice/example.service
输出示例与关注进程相关。在这种情况下,它是由
PID 2467
来标识的进程,它属于example.service
单元。您可以确定该过程是否放置在systemd
单元文件规格定义的正确控制组中。要显示
cgroup
使用哪些控制器和对应的配置文件,请检查cgroup
目录:# cat /sys/fs/cgroup/system.slice/example.service/cgroup.controllers memory pids # ls /sys/fs/cgroup/system.slice/example.service/ cgroup.controllers cgroup.events … cpu.pressure cpu.stat io.pressure memory.current memory.events … pids.current pids.events pids.max
注意
cgroup
版本 1 层次结构使用每个控制器模型。因此,/proc/PID/cgroup
文件中的输出显示,PID 所属的每个控制器下的 cgroups
。您可以在控制器目录(/sys/fs/cgroup/<controller_name>/
)中查找相应的 cgroup
。
其他资源
-
cgroups (7)
手册页 - 什么是内核资源控制器
-
/usr/share/doc/kernel-doc-<kernel_version>/Documentation/admin-guide/cgroup-v2.rst
文件的文档(安装kernel-doc
软件包)