ホーム > パッケージ・システム管理 > systemd-cgls

systemd-cgls: コントロールグループの内容を表示

systemd-cglsは、systemdによって管理されているコントロールグループ(cgroup)の階層構造と内容を再帰的に表示するコマンドです。システムのプロセス、サービス、ユーザーセッションなどがどのようにリソースグループに組織されているかを把握するのに役立ち、リソース管理や隔離状態を視覚的に確認できます。

概要

systemd-cglsは、Linuxカーネルのcgroup機能を利用して、システムリソースの管理と隔離を可視化します。各cgroupに属するプロセスID(PID)と、そのグループのサブcgroupをツリー形式で表示し、システムの複雑なリソース割り当て構造を容易に理解できるように支援します。

主な特徴

  • cgroup階層構造の可視化
  • 各cgroupに属するプロセスID(PID)の表示
  • システムリソースの隔離および割り当て状態の確認
  • サービス、ユーザーセッションなどのリソースグループ化方式の把握

主なオプション

systemd-cglsコマンドの主なオプションは、表示されるcgroup情報の範囲と形式を制御するために使用されます。

表示/フィルタリングオプション

その他のオプション

生成されたコマンド:

コマンドを組み合わせてみてください。

説明:

`systemd-cgls` コマンドを実行します。

これらのオプションを組み合わせて、AIと一緒に仮想的にコマンドを実行してみてください。

使用例

systemd-cglsコマンドの様々な使用例を通じて、cgroup情報を効果的に照会する方法を学びます。

基本的なcgroup階層構造を表示

systemd-cgls

システムの基本的なcgroup階層構造と、各グループに属するプロセスIDを表示します。

空のcgroupを含めてすべてのcgroupを表示

systemd-cgls -a

現在アクティブなcgroupだけでなく、空のcgroupもすべて表示して、全体的なcgroup構造を把握します。

特定のsystemdユニットのcgroupを表示

systemd-cgls --unit sshd.service

例えば、SSHデーモン(sshd.service)に関連するcgroup情報を確認します。

ユーザーセッションcgroupのフルパスを表示

systemd-cgls -p --unit user@1000.service

ユーザーID 1000のセッションcgroupに関するフルパスを含めて詳細情報を確認します。ユーザーIDは`id -u`コマンドで確認できます。

出力内容を省略せずにすべてのcgroupを表示

systemd-cgls --full -a

長いcgroupパスまたは名前を省略せずにすべて表示し、空のcgroupも含まれます。

ヒントと注意点

systemd-cglsは、システムの資源管理状態を理解し、デバッグするのに非常に役立ちます。以下のヒントを活用して、より効果的にコマンドを使用できます。

cgroupの理解

cgroupは、プロセスグループに対するリソース(CPU、メモリ、I/Oなど)の割り当てと制限を管理するLinuxカーネル機能です。systemdはこの機能を利用して、サービス、ユーザーセッションなどを隔離し、管理します。

  • 活用分野: システムリソース使用量の分析、サービス隔離状態の確認、問題解決時の特定プロセスグループの追跡
  • 他のコマンドとの連携: `systemctl status`と組み合わせて特定のサービスのcgroup情報を確認したり、`ps auxf`と比較してプロセスツリーを理解するのに役立ちます。

出力の解釈

表示されるツリー構造において、各ノードはcgroupを表し、その下にリストされている数字は該当cgroupに属するプロセスのPIDです。これにより、どのプロセスがどのリソースグループに属しているかを直感的に把握できます。



同じカテゴリのコマンド