Linux
如何檢查我的 Linux 主機上是否有 cgroup 可用?
是否有命令檢查容器服務是否在 Linux 系統上執行?有人建議
unshare
,但我不確定這是否是最好的方法。
更新:重新閱讀您的問題後,我意識到我回答的問題略有不同。您想知道服務是否正在執行,我最初回答瞭如何判斷是否安裝了軟體包。要回答您的實際問題,這取決於您的初始化系統。
- systemd - 基本命令是
systemctl
,它將列出所有服務及其狀態,因此您可以手動手動瀏覽它或通過grep
命令管道它,如下所示systemctl | grep -e cgmanager -e cgproxy -e cgroupfs-mount
:或者,正如使用者 muru 在評論中建議的那樣,簡單地systemctl status 'cg*'
.- sysVinit - 基本命令是
service --status-all
,grep 命令是service --status-all 2>&1 | grep -e cgmanager -e cgproxy -e cgroupfs-mount
。請注意,在這種情況下,正在執行的服務用[+]
前綴符號表示。另請注意,要使 grep 工作,2>&1
必須為service
命令進行重定向。原始答案:
- 也許最簡單的事情就是嘗試
man cgroups
。如果這會打開一個文件頁面,那麼您的主機已經安裝了該軟體包。然而,有些安裝是“吝嗇的”並且不安裝man
頁面。- 您可以嘗試
cgm
看看這是否會產生輸出。大多數安裝cgroups
將包含該命令,但不一定。- 您可以查找主機發行版的軟體包列表。在 debian 衍生產品上,會是.,但有時
dpkg -l |grep cgroup
系統會限制對.root``sudo``dpkg
會有很多其他的方法。