systemd 與 cgroups 透過使用者程式進行資源隔離?

systemd 與 cgroups 透過使用者程式進行資源隔離?

環境:kubuntu桌面版17.10.1

近期目標chrome以限制其最大記憶體消耗的方式運行。

目前的解決方法:我將以下內容放入/usr/local/bin/cchrome

#!/bin/sh
sudo mkdir -p /sys/fs/cgroup/memory/chrome
sudo chown -R ji /sys/fs/cgroup/memory/chrome
echo 8G > /sys/fs/cgroup/memory/chrome/memory.limit_in_bytes
exec cgexec -g memory:chrome google-chrome

然後,我編輯應用程式選單以建立一個名為 cchrome 的條目,一切都很棒!如果我不那麼懶的話,我甚至會在啟動時建立 cgroup,這樣我就不必在腳本中呼叫 sudo。

這可行,但很醜。根據 TFM(man cgrules.confman cgconfig.conf),我應該能夠進行設置,以便當 chrome 啟動時,它會在自己的 cgroup 中運行。但是,這些檔案在 17.10 桌面版或 16.04 LTS 伺服器中不存在。 AIUI,systemd有自己的cgroup管理。

我還沒有找到任何關於如何做到這一點的文檔,並且關於這個主題的每個谷歌搜索要么是關於一些解決方法,要么不起作用,要么是針對其他一些 Linux 發行版。

相關內容