#another #node #cgroup #system #cgroupv2

cgumi

cgumi 是又一个用于与 cgroupv2 交互的 crate。

2 个版本

0.0.2 2023 年 5 月 25 日
0.0.1 2023 年 5 月 25 日

#895 in Unix APIs

每月下载量 24 次

MIT 许可证

80KB
1.5K SLoC

cgumi

https://crates.io/crates/cgumi

cgumi 是又一个用于与 cgroupv2 交互的 crate(WIP)。它专注于为应用程序提供创建自己的 cgroupv2 层级的功能,而不是管理一个系统上所有 cgroup 节点。

没有计划支持传统的 cgroupv1。

注意

可能会发生破坏性变化!欢迎提出建议,因为当前的 API 设计可能不是最优化的。

systemd 特性默认启用。要禁用 systemd 特性(从而避免安装 zbus

[dependencies]
cgumi = { version = "*", default-features = false }

计划中的功能

  • 创建节点
  • 将进程移动到节点
  • 委托节点(chown)
  • 获取内存和 I/O 使用情况
  • sudo + sh 支持
  • systemd 支持

运行测试

有些测试只能在 root 下运行,而有些测试只能在非 root 环境下运行。

# both are necessary to run all tests
cargo test
CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUNNER='sudo -E' cargo test

此外,您可以使用 --nocapture 运行测试以查看更多详细信息。 RUST_LOG 也可用。

RUST_LOG=debug cargo test -- --nocapture

依赖项

~2–12MB
~147K SLoC