GNU/Linux >> Belajar Linux >  >> Cent OS

CentOS / RHEL 7:perintah systemd-analyze untuk menemukan penundaan waktu booting

Pertanyaan :Sistem saya membutuhkan banyak waktu untuk boot. Bagaimana cara mengetahui layanan mana yang membutuhkan waktu lama untuk dimulai?

Jawaban :

analisis-sistem perintah dapat digunakan untuk mengetahui informasi tentang berapa banyak setiap layanan yang dibutuhkan untuk memulai. waktu analisis sistem dapat memberikan informasi keseluruhan tentang berapa lama waktu yang dibutuhkan sistem untuk memulai. Berikut adalah perintah yang dengan jelas menunjukkan waktu yang dibutuhkan oleh kernel, initrd dan userspace saat booting.

# systemd-analyze time
Startup finished in 1.267s (kernel) + 6.798s (initrd) + 1min 2.139s (userspace) = 1min 10.205s

Untuk mengetahui, berapa lama waktu yang dibutuhkan setiap unit untuk memulai, jalankan systemd-analyze menyalahkan .

# systemd-analyze blame
         24.728s dev-mapper-centosx2droot.device
         15.135s kdump.service
         14.670s plymouth-quit-wait.service
         14.210s firewalld.service
          9.835s accounts-daemon.service
          7.383s ModemManager.service
          7.259s libvirtd.service
          7.257s systemd-logind.service
          7.177s ksm.service
          7.081s gssproxy.service
          7.067s avahi-daemon.service
          7.062s rsyslog.service
          7.039s abrt-ccpp.service

Saat Anda melihat output diurutkan menurut waktu yang dibutuhkan oleh setiap unit, Anda dapat dengan mudah mengetahui layanan mana yang membutuhkan lebih banyak waktu selama booting dan dapat menggali lebih dalam untuk menganalisis masalah.

Pada langkah-langkah tertentu, boot tidak dapat dilanjutkan sampai semua dependensi untuk unit terpenuhi. Untuk melihat unit pada titik kritis ini, jalankan systemd-analyze critical-chain .

# systemd-analyze critical-chain
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 @1min 2.102s
└─multi-user.target @1min 2.102s
  └─abrt-vmcore.service @1min 1.228s +872ms
    └─kdump.service @46.090s +15.135s
      └─remote-fs.target @46.086s
        └─remote-fs-pre.target @46.083s
          └─iscsi-shutdown.service @45.951s +99ms
            └─network.target @45.944s
              └─network.service @44.959s +975ms
                └─NetworkManager.service @38.653s +689ms
                  └─firewalld.service @24.439s +14.210s
                    └─basic.target @23.850s
                      └─sockets.target @23.849s
                        └─cups.socket @23.847s
                          └─sysinit.target @23.618s
                            └─systemd-update-utmp.service @23.603s +13ms
                              └─auditd.service @22.959s +643ms
                                └─systemd-tmpfiles-setup.service @22.726s +230ms
                                  └─rhel-import-state.service @22.431s +294ms
                                    └─local-fs.target @22.428s
                                      └─boot.mount @19.675s +2.126s
                                        └─dev-disk-byx2duuid-7de2053cx2d44d7x2d4f33x2db522x2d81dee2f6b69b.device @19.652s

Gambar grafis SVG dapat berupa plot yang berisi detail tentang waktu mulai layanan sistem, menyoroti waktu yang mereka habiskan untuk inisialisasi. Pastikan Anda telah mengaktifkan mode tampilan grafis atau mengaktifkan x-windows untuk melihat plotnya.

# systemd-analyze plot > plot.svg
# eog plot.svg

Berikut ini cuplikan dari plot sampel pada mesin CentOS 7 saya. Perbesar untuk memeriksa air terjun dengan jelas.


Cent OS
  1. CentOS / RHEL 7 :tidak dapat memulai layanan vsftpd

  2. Tidak dapat memulai Layanan Nagios (CentOS/RHEL)

  3. "kesalahan:tidak dapat menemukan perintah 'ffffffffff ....." Kesalahan GRUB2 CentOS/RHEL 7

  1. CentOS / RHEL 7 firewalld :Referensi baris perintah (Lembar Cheat)

  2. CentOS / RHEL 7 :Jangan pernah menjalankan layanan iptables dan layanan FirewallD secara bersamaan!

  3. CentOS / RHEL :Cara menemukan parameter kernel yang digunakan saat booting

  1. Cara menginstal syslog di RHEL 8 / CentOS 8

  2. Cara Memulai Ulang Layanan Jaringan di CentOS 8 atau RHEL 8

  3. CentOS / RHEL 7 :Cara Mengubah Zona Waktu