systemd守护程序创建cgroup所需的功能是什么?

时间:2017-07-04 21:24:57

标签: systemd cgroups linux-capabilities

在我的项目中,我有时需要能够以非特权用户的身份创建新的控制组。我决定为此编写一个systemd守护进程。

我在守护程序代码中使用libcgroup进行cgroup操作。

当我尝试创建cgroup(cgroup_create_cgroup)时,收到libcgroup错误ECGROUPNOTALLOWEDCgroup, operation not allowed)。如何允许我的守护进程创建新的cgroup?

systemd .service file:

[Service]
...
CapabilityBoundingSet=CAP_SYS_ADMIN
PrivateTmp=yes
PrivateDevices=yes
PrivateNetwork=yes
ProtectSystem=yes
ProtectHome=yes
ProtectControlGroups=no
ProtectKernelTunables=no
RestrictRealtime=no
User=root
Group=root

1 个答案:

答案 0 :(得分:0)

嗯,我真的不知道哪些保护是奇怪的,但只是将它们全部删除就可以了。