如何确定 systemd 使用传统模式、混合模式还是统一模式(cgroupsv1 与 cgroupsv2)?

如何确定 systemd 使用传统模式、混合模式还是统一模式(cgroupsv1 与 cgroupsv2)?

Systemd 可以使用以下三种之一模式关于它如何管理 cgroup:

  • 遗产
  • 杂交种
  • 统一

我如何检查它正在使用哪一个?

答案1

根据伦纳特·珀特林:

尝试这个:

stat -fc %T /sys/fs/cgroup/

如果报告“cgroups2fs”,那么您处于完整的 cgroupsv2 模式。如果它返回“tmpfs”,那么您处于完整 cgroupsv1 模式或混合模式。然后,检查 /sys/fs/cgroup/unified 是否存在。如果是这样,那么您就处于混合模式。如果不是,您处于纯 cgroupsv1 模式。

翻译成这个 shell 代码:

[ $(stat -fc %T /sys/fs/cgroup/) = "cgroup2fs" ] && echo "unified" || ( [ -e /sys/fs/cgroup/unified/ ] && echo "hybrid" || echo "legacy")

相关内容