web-dev-qa-db-ja.com

Linuxサーバーの再起動にかかる時間

Linuxサーバーの再起動にかかる時間を計算する方法はありますか?明確にするために、rebootコマンドからサーバーがバックアップされて実行されるまでの時間(つまり、すべてのサービスが開始され、ユーザーがログオンできるなど)です。

Syslogを調べてみましたが、回転が速すぎるようです。

一番近い分で十分でしょう。

OS = CentOSおよびUbuntu

更新:単純な方法がない場合-おそらく、将来の使用のためにこのデータを取得する方法は何でしょうか。

5
DarkHeart

どちらもsystemdに付属しているCentOS 7以降またはUbuntu 15.04以降を使用していると仮定します。 Systemdには、システムの起動にかかった時間を把握するための優れたツールと、その理由を視覚化するための視覚化機能があります。

最も基本的な出力については、systemd-analyzeそして、あなたはそのような素晴らしい要約を得るでしょう

Startup finished in 853ms (kernel) + 3min 50.610s (initrd) + 10.345s (userspace) = 4min 1.809s

これにより、systemdが起動してから最後の起動にかかった時間がわかります。これは、BIOS /ハードウェアの初期化またはGRUB=タイムアウト)を考慮に入れていませんが、実際のOSブート時間に対しては正確である必要があります。

OSに時間がかかる理由を解明したい場合は、systemd-analyze blameは、最長実行時間から最短実行時間までのサービスのチャートを提供します。例えば私のシステムから

3min 49.219s systemd-cryptsetup@luks\x2d62611c1c\x2d74ab\x2d4be9\x2d8990\x2d41c0fd863b5a.service
      5.315s plymouth-quit-wait.service
      3.084s systemd-udev-settle.service
      2.275s plymouth-start.service
      2.256s docker.service
      1.819s powertop.service
       778ms firewalld.service
       676ms dev-mapper-Fedora\x2droot.device
       621ms abrtd.service
       493ms lvm2-monitor.service

起動にかかる4分のうち3つは、ラップトップが暗号化されたドライブを持っているためです。

最後に、システムを起動するために「クリティカル」と見なされる一連のイベントを確認できます。 man page から、criticalは「タイムクリティカルなユニットのチェーン」を意味します。これは、systemdが多くのサービスを並列化するためです。これにより、別のユニットを待機する必要があるユニットと、開始までにかかった時間がリストされます。

The time after the unit is active or started is printed after the "@" character.
The time the unit takes to start is printed after the "+" character.

graphical.target @10.336s
└─multi-user.target @10.323s
  └─docker.service @4.900s +2.256s
    └─network.target @4.868s
      └─wpa_supplicant.service @4.828s +14ms
        └─dbus.service @3.753s
          └─basic.target @3.749s
            └─sockets.target @3.749s
              └─docker.socket @3.741s +6ms
                └─sysinit.target @3.737s
                  └─systemd-update-utmp.service @3.726s +10ms
                    └─auditd.service @3.713s +9ms
                      └─systemd-tmpfiles-setup.service @3.617s +82ms
                        └─Fedora-import-state.service @3.568s +36ms
                          └─local-fs.target @3.560s
                            └─run-user-42.mount @5.753s
                              └─local-fs-pre.target @383ms
                                └─systemd-tmpfiles-setup-dev.service @301ms +80ms
                                  └─kmod-static-nodes.service @268ms +10ms
                                    └─system.slice
                                      └─-.slice

ブートツリーを画像にエクスポートして、メールで送信したり、svgでプロットしたりすることもできます。詳細についてはmanページを参照してください。詳細については この関連質問 を参照してください。

11
Rothgar