Bir Linux sunucusunu yeniden başlatmak için geçen süre


5

Bir Linux sunucusunu yeniden başlatmanın ne kadar süreceğini hesaplamanın bir yolu var mı? Açıklığa kavuşturmak için, yeniden başlatma komutundan gelen süre, sunucu yeniden başlatıldığında ve çalışmaya başladığında başlar (yani tüm servisler başlatılır, kullanıcılar oturum açabilir vb.).

Sistem günlüğüne bakmayı denedim ama çok hızlı bir şekilde döndürülmüş gibi görünüyor.

En yakın dakika yeterli olacaktır.

OS = CentOS ve Ubuntu

Güncelleme: basit bir yol yoksa - belki de gelecekteki kullanım için bu verileri yakalamanın bir yolu olabilir.


Hangi kayıtlara bakıyorsunuz ve yeniden başlatmadan kaç gün / hafta sonra? CentOS / Ubuntu sürümleriniz / var / log / dmesg * dosyalarınızı kaydediyor mu?
tlund

Sorumun daha genel olması için uğraşırken, baktığım sunucu yaklaşık 400 gündür hizmette. Evet, dmesg'i kurtarıyoruz.
DarkHeart

dmesg dosyasından en azından linux önyüklemesinin ne kadar sürdüğünü görebilirsiniz, ancak önyükleyici tamamlanıncaya kadar kapanmasının ne kadar sürdüğünü görmek mümkün değildir.
tlund

IMHO, yeniden başlatmanın tamamlanma süresini ölçmenin güvenilir bir yolu yoktur. Tahmin edilemezliği artıran birçok faktör vardır; örneğin, yeniden başlatma sırasında zorunlu tutulan disklerin / bölümlerin sayısından ve boyutundan dolayı öngörülemeyen bir dosya sistemi kontrolü (fsck) olabilir. Böyle anormal olayları görmezden gelirsek, dikkate alınması gereken diğer faktörler - varsayılan çalışma seviyesi nedir? kullanıcılarınız ssh / remote X11 / vnc etc aracılığıyla giriş yapıyor mu?
nagu

@nagu - bu şeylerin çoğu aynı kalır veya manuel olarak değiştirilir (yani ek süre içinde faktör olabilir). Bir fsck'ün ne zaman zorlanacağını ve ek zamanda tekrar faktör olduğunu söyleyebilirsiniz. Genellikle bir sunucu her seferinde yeniden başlatmak için aynı süreyi alır - Ben kesin bir önlem değil bir rehber arıyordum.
DarkHeart

Yanıtlar:


11

İkiniz de sistemle birlikte gelen CentOS 7+ veya Ubuntu 15.04+ 'de olduğunuzu varsayacağım. Systemd, sisteminizin nedenini görmek için bazı görselleştirmelerle birlikte başlamasının ne kadar sürdüğünü bulmak için harika araçlara sahiptir.

Sadece en temel çıktı için çalıştırın systemd-analyzeve böyle güzel bir özet elde edin.

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

Bu, sistem başlatıldıktan sonra son açılışınızın ne kadar sürdüğünü söyleyebilir. Bu, BIOS / donanım başlatma veya GRUB zaman aşımlarını dikkate almaz, ancak gerçek işletim sistemi önyükleme süresi için doğru olmalıdır.

İşletim sisteminin neden bu kadar uzun sürdüğünü anlamak istiyorsanız, systemd-analyze blamesize en uzun süren en kısa süren hizmet çizelgesini vermeyi deneyin . örneğin benim sistemimden

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

Önyüklemem için gereken 4 dakikalık sürenin 3'ü dizüstü bilgisayarımın şifreli bir sürücüye sahip olması nedeniyle görünüyor.

Sonunda, sistemi önyüklemek için "kritik" kabul edilen bir olaylar zincirini görebilirsiniz. Gönderen adam sayfası kritik araçlar "birimlerinin zaman açısından kritik zinciri". Bunun nedeni sistemd'in birçok hizmeti paralel hale getirmesidir. Bu, başka bir ünite için beklemesi gereken üniteleri ve başlaması ne kadar sürdüğünü listeleyecektir.

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

Önyükleme ağacınızı bir resmi e-postayla göndermek veya svg ile işaretlemek için dışa aktararak da harika şeyler yapabilirsiniz. Daha fazla ayrıntı için man sayfasına veya birkaç ayrıntı için bu soruya bakın.


+1 - teşekkürler! CentOS 7 kullanıyorum ama ... Ubuntu 14.04 yani başlangıç.
DarkHeart

Bu montaj noktalarında neden -yer değiştiriliyor \x?
Prvt_Yadav
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.