Ubuntu Cgroup:无法创建新组

Ubuntu Cgroup:无法创建新组,ubuntu,cgroups,Ubuntu,Cgroups,我想创建一个新的cgroup,并将该组的RAM访问限制为1MB 这是我的第一次尝试: mkdir /sys/fs/cgroup/mygroup mount -t cgroup -o memory mygroup /sys/fs/cgroup/mygroup 但我总是犯这个错误 mount: /sys/fs/cgroup/mygroup already mounted or /sys/fs/cgroup/mygroup busy 我使用cgcreate尝试了另一种方法 cgcreate -g

我想创建一个新的cgroup,并将该组的RAM访问限制为1MB

这是我的第一次尝试:

mkdir /sys/fs/cgroup/mygroup
mount -t cgroup -o memory mygroup /sys/fs/cgroup/mygroup
但我总是犯这个错误

mount: /sys/fs/cgroup/mygroup already mounted or /sys/fs/cgroup/mygroup busy
我使用cgcreate尝试了另一种方法

cgcreate -g memory:mygroup2
但是当我运行
cgexect-g memory:mygroup2./a.out

我收到此错误:
cgroup更改组失败

我还看到,我们可以通过更改/etc/cgconfig.cf文件来创建一个组,但是我在/etc中找不到类似的内容,尽管我已经安装了libcgroup1和cgroupbin。请帮忙


提前谢谢

如果cgroup文件系统已经挂载,我相信没有必要挂载新目录。您可以通过键入以下命令来检查以确保已装入cgroup文件系统:

cat /proc/mounts | grep cgroup
如果它返回如下内容,您就知道它已装入:

cgroup /sys/fs/cgroup/memory ...
mkdir /sys/fs/cgroup/memory/mycgroup
接下来,如果要创建限制内存访问的cgroup,我认为应该在memory子目录中创建新cgroup,而不是在cgroup目录的根目录中。它应该是这样的:

cgroup /sys/fs/cgroup/memory ...
mkdir /sys/fs/cgroup/memory/mycgroup
从那里,您可以使用echo命令将任务添加到cgroup中:

echo $pid > /sys/fs/cgroup/memory/mycgroup/tasks
最后,您可以通过以下方式将内存使用限制为1MB:

echo 1M > /sys/fs/cgroup/memory/mycgroup/memory.max_usage_in_bytes
希望这能有所帮助。

嘿,约翰,我正在使用一种与你上面提到的功能相同的方法,但我的cgroup似乎没有限制内存。我有一个Manjaro系统,我正在使用代码。