ブート時間SysV対Systemd - systemdシステムは約2秒かかります!

ブート時間SysV対Systemd - systemdシステムは約2秒かかります!

meta-raspberrypi私のraspberrypi画像を形成するために使用します。

systemdSysVと比較して開始時間が約2秒増加したことを確認しました。

Systemv_Systemd_kernel_log_comp

カーネルログでは多くの情報が得られません。

システム

[    4.452082] gpiomem-bcm2835 20200000.gpiomem: Initialised: Registers at 0x20200000
[    8.111375] i2c /dev entries driver
[    8.284057] EXT4-fs (mmcblk0p2): re-mounted. Opts: data=ordered

システムV

[    3.839449] gpiomem-bcm2835 20200000.gpiomem: Initialised: Registers at 0x20200000
[    5.990874] i2c /dev entries driver
[    6.136112] EXT4-fs (mmcblk0p2): re-mounted. Opts: data=ordered

上記のように、systemdはデフォルトのカーネルの起動後にi2cカーネルモジュールをロードする前に少し余分な時間を費やします。

私はこの時間がsystemdサービスの開始に費やされたと仮定します。

では、どのサービスが開始され、各サービスにかかる時間はどのように確認できますか?

答え1

まず、あなたの質問の両方の出力がSysV init()から出てくることを確認しましたINIT: version 2.88。したがって、ある時点では混乱します。

とにかく、さまざまなサービスを使用すると、非常にファンキーなSVGを得ることができますsystemd-analyze plot > sysd.svg(ここではリダイレクトが必要です。そうしないと、SVGデータをstdoutとして印刷するため、あまり役に立ちません)。

ここに画像の説明を入力してください。

出力形式を選択する方法はありませんが、この形式(Raspbian 8を実行しているB +で)はJPEG convert sysd.svg sysd.jpgconvertImageMagickの一部であり、すべてのLinuxディストリビューションで利用可能)に変換されました。

より簡単なテキストリストを提供できますsystemd-analyze blame

systemdが起動中なので、サービスは不要です。

たぶんそうかもしれませんが、通常は時間がかかりません。たとえば、サービスがNFSの設定を担当しているが、これらのファイルシステムを構成していない場合は、時間やリソースを消費しません。

もちろん、きれいに保つために削除したいかもしれません。まず、何かの目的を確認してください。 systemctl list-unitsデフォルトでは、ロードされたサービスの簡単なリストを提供するので、ここで便利です。 Systemdには多くのマニュアルページがあります。見つけることができますapropos systemd(結果が出ない場合は、まず試してみてくださいsudo mandb。何らかの理由で一部のディストリビューションでは持続しない場合があります)。これらの多くはサービスファイルを作成するためのガイドラインであり、コマンドの使用に厳しく制限されていますapropos -s 1 systemd

関連情報