35.7. プロセスの cgroup の表示
プロセスがどのコントロールグループ (cgroup) に属しているかを特定し、その cgroup が使用するコントローラーおよびコントローラー固有の設定を確認します。
手順
プロセスが属する
cgroupを表示するには、# cat proc/<PID>/cgroupコマンドを実行します。# cat /proc/2467/cgroup 0::/system.slice/example.serviceこの出力例は、対象のプロセスに関するものです。今回の例では、
example.serviceユニットに属するPID 2467で識別されるプロセスです。systemd ユニットファイル仕様で定義されているとおり、プロセスが正しいコントロールグループに配置されているかどうかを判断できます。cgroupが使用するコントローラーとその設定ファイルを表示するには、cgroupディレクトリーを確認してください。# cat /sys/fs/cgroup/system.slice/example.service/cgroup.controllers memory pids # ls /sys/fs/cgroup/system.slice/example.service/ cgroup.controllers cgroup.events … cpu.pressure cpu.stat io.pressure memory.current memory.events … pids.current pids.events pids.max
cgroups のバージョン 1 階層は、コントローラーごとのモデルを使用します。したがって、/proc/PID/cgroup ファイルからの出力には、PID が属する各コントローラーの下の cgroups が表示されます。cgroups は、コントローラーディレクトリーの /sys/fs/cgroup/<controller_name>/ にあります。