Bootchart

提供: ArchWiki
2022年8月23日 (火) 10:38時点におけるKusanaginoturugi (トーク | 投稿記録)による版 (章の順序の変更および参照の削除)
ナビゲーションに移動 検索に移動

Bootchart は Linux のブートシーケンスをプロファイリングするために使用する便利なツールです。基本的にコンピュータの起動を速くするために使われます。プロファイリングデータのグラフを記録・表示する bootchartd デーモンが付属しています。

ノート: 現在 Bootchart は systemd に取り込まれています。詳しくはブートパフォーマンスの向上#ブートプロセスを解析するを見て下さい。このページでは、マージされる前のオリジナルの bootchart について説明しています。

Bootchart のインストール

Bootchart は公式リポジトリの bootchartAUR でインストールできます。

Bootchart の実行

bootchart を利用するには、ブートローダーの init プロセスで設定するか、init スクリプト (rc.sysinit など) から手動で起動する必要があります。bootchartd を手動で起動した場合、手動で停止しなくてはなりません。一般的には、以下の手順に注意してください。

ブートローダーの設定

プロファイリングしたいブートオプションのコピーを作成して init=/usr/bin/bootchartd を追加します。方法はカーネルパラメータを見て下さい。ブートローダーから起動した場合、bootchart はログインプロンプトが表示された時に停止します。

グラフの作成

書き込み権限があるフォルダで次を実行することでブートチャートが生成されます:

bootchart-render

グラフが書き込まれた bootchart.png 画像が生成されます。コマンドを実行する前に Java ランタイムをインストールして設定する必要があります。

トラブルシューティング

Bootchart-render が 'bootchart.png' 画像を生成しないで以下のようなエラーメッセージを表示する場合:

/var/log/bootchart.tgz not found

これはブートプロセスがいつ終了したのか bootchartd が判別できなかったことを意味しています。KDM, GDM, SLiM, Entrance 以外のログインマネージャを使用しているとこのエラーが発生します。/usr/bin/bootchartd スクリプトを開いてアプリケーションを exit_proc 変数に追加してください。例えば:

# The processes we have to wait for
local exit_proc="gdmgreeter gdm-binary kdm_greet kdm slim"

ログインマネージャを使っていないときは、exit_proc 変数を以下のように編集します:

# The processes we have to wait for
local exit_proc="login"

ブートチャートの例

Boot in 5 seconds

LWN Article on fast booting netbooks

This article is really awesome and along with a bunch of bootcharts provides some tips on how to boot faster. Some of those improvements are beyond reach of the ordinary user though (patching X.org, kernel, etc.).

Bootchart2

Bootchart2 の実行

ブートローダーの設定

プロファイリングしたいブートオプションのコピーを作成して initcall_debug printk.time=y init=/usr/bin/bootchartd を追加します。方法はカーネルパラメータを見て下さい。ブートローダーから起動した場合、bootchart2 はデフォルトで120秒後、もしくはログインプロンプトが表示された時に停止します。

bootchart2.service

The bootchart2AUR package from AUR comes with an undocumented systemd service. After you have installed bootchart2, enable bootchart2.service.

You can visualize the results by opening /var/log/bootchart.png, or if you would like more features by launching:

$ pybootchartgui -i

Read the bootchart2 documentation for further details on using this version of Bootchart.

Bootchart2 の設定

ログイン後に Bootchartd2 を停止
/etc/bootchartd.conf
EXIT_PROC="kdm_greet xterm konsole gnome-terminal metacity mutter compiz ldm icewm-session enlightenment"

上の設定を変更して、空にすることで、定義済みのプログラムが起動した時ではなく手動で記録を停止することができます。

グラフの作成

Bootchart2 の使い方は Bootchart Legacy と同じように簡単です: インタラクティブなグラフ作成ツールを使うには、起動後に次を実行してください:

$ pybootchartgui -i 

詳細は Gentoo Wiki で読むことができます。

Bootchart2 は E4rat と一緒に使うことが可能です。