25.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>/ のコントローラーディレクトリーにあります。