3

新しい 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 change of group failed

また、/etc/cgconfig.cf ファイルを変更してグループを作成できることも確認しましたが、libcgroup1 と cgroup-bin をインストールしたにもかかわらず、/etc 内にそのようなものは見つかりません。助けてください!

前もって感謝します!

4

1 に答える 1

3

cgroup ファイルシステムが既にマウントされている場合、新しいディレクトリをマウントする必要はないと思います。次のコマンドを入力して、cgroup ファイルシステムが既にマウントされていることを確認できます。

cat /proc/mounts | grep cgroup

次のようなものが返されれば、マウントされていることがわかります。

cgroup /sys/fs/cgroup/memory ...

次に、メモリ アクセスを制限する cgroup を作成する場合は、cgroup ディレクトリのルートではなく、メモリ サブディレクトリに新しい cgroup を作成する必要があると思います。次のようになります。

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

お役に立てれば。

于 2014-03-10T20:39:46.353 に答える