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

systemd-analyze: システム起動とサービス分析

systemd-analyzeは、systemdベースのシステムの起動時間と個々のサービスの開始時間を分析・デバッグするために使用される強力なツールです。システムパフォーマンスの最適化に役立ちます。

概要

systemd-analyzeは、システム起動プロセスにおけるボトルネックを特定し、各サービスが起動に寄与する時間を測定することで、システム管理者がパフォーマンスの問題を診断・解決するのを支援します。

主な機能

  • 全体の起動時間の測定
  • 個々のサービスおよびユニットの開始時間の分析
  • 起動に最も影響を与える「クリティカルチェーン」の特定
  • 起動プロセスの可視化 (SVG, DOTグラフ)
  • systemdユニットファイルの検証

主なオプション

systemd-analyzeコマンドと共に使用される主なオプションです。

起動時間の分析

可視化とデバッグ

生成されたコマンド:

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

説明:

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

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

使用例

systemd-analyzeコマンドの様々な活用例です。

全体の起動時間確認

systemd-analyze

システムの全体の起動時間を確認します。

サービスごとの起動時間確認

systemd-analyze blame

各サービスが起動に要した時間を降順でソートして表示します。

起動クリティカルチェーン分析

systemd-analyze critical-chain

起動完了に最も影響を与えるユニットの依存関係チェーンを確認します。

起動時間可視化 (SVG)

systemd-analyze plot > boot.svg

起動プロセスをSVG形式のグラフとして生成し、「boot.svg」ファイルに保存します。このファイルはWebブラウザで開くことができます。

ユニットファイル検証

systemd-analyze verify /etc/systemd/system/my-custom.service

指定されたsystemdユニットファイルの構文エラーや不正な設定を検査します。

ヒントと注意点

systemd-analyzeの使用に関する役立つヒントと注意点です。

Graphvizのインストール

plotまたはdotオプションを使用して可視化されたグラフを生成するには、Graphvizパッケージがインストールされている必要があります。

  • Debian/Ubuntu: sudo apt install graphviz
  • CentOS/RHEL: sudo yum install graphviz

blame結果の解釈

systemd-analyze blameの結果は、各ユニットが「開始にかかった時間」を示しますが、systemdは多くのサービスを並列で開始するため、単純に最も時間がかかったサービスが起動遅延の原因であると断定することはできません。critical-chainと合わせて分析することがより正確です。

起動の最適化

critical-chainで特定されたユニットを中心に、不要な依存関係を削除したり、サービス開始タイプ(例: on-demand)を変更したりすることで、起動時間を短縮できます。


同じカテゴリのコマンド