GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

Die Verwendung von initcall_debug zum Auffinden von Kernel-Aufrufen dauert beim Booten in CentOS/RHEL sehr lange

Unter CentOS/RHEL ist es manchmal komplex festzustellen, welcher Teil der Startsequenz lange dauert. Während der Startsequenz treten verschiedene Ereignisse auf, und manchmal reicht die Standardebene der Protokolle nicht aus, um die Komponente zu ermitteln, die das Problem verursacht. In diesem Fall können die in diesem Beitrag beschriebenen Schritte verwendet werden, um weitere Daten über eine mögliche Ursache der langsamen Startsequenz zu sammeln.

1. Bearbeiten Sie die Kernel-Zeile des passenden Grub-Menüeintrags in /etc/grub.conf . Zum Beispiel:

[...]
root (hd0,0)
kernel /vmlinuz-3.8.13-68.3.4.el6uek.x86_64 ro root=/dev/mapper/vg_ol67-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_LVM_LV=vg_ol67/lv_swap rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=vg_ol67/lv_root KEYBOARDTYPE=pc KEYTABLE=be-latin1 rd_NO_DM rhgb quiet
[...]

Und hängen Sie den folgenden Parameter daran an:

initcall_debug

Als Beispiel wird ein resultierendes Kernel-Boot-Argument unten gezeigt:

[...]
root (hd0,0)
kernel /vmlinuz-3.8.13-68.3.4.el6uek.x86_64 ro root=/dev/mapper/vg_ol67-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_LVM_LV=vg_ol67/lv_swap rd_NO_MD 
SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=vg_ol67/lv_root KEYBOARDTYPE=pc KEYTABLE=be-latin1 rd_NO_DM rhgb quiet initcall_debug
[...]

Und starten Sie das System neu, indem Sie beim Booten diesen Menüeintrag im Grub-Menü verwenden.

2. Nach dem Anhängen dieses Parameters geben sowohl die serielle Konsole als auch die Ausgabe des dmesg-Befehls die Zeit aus, die für den Abschluss eines Init-Aufrufs benötigt wird. Zum Beispiel:

calling init_autofs4_fs+0x0/0x2a [autofs4] @ 1581
initcall init_autofs4_fs+0x0/0x2a [autofs4] returned 0 after 7463 usecs


Cent OS
  1. Standard-Kernel ändern (mit altem Kernel booten) – CentOS/RHEL/OEL 7

  2. CentOS / RHEL 7:So ändern Sie die Zeitzone

  3. CentOS / RHEL 7 :So erstellen Sie ein benutzerdefiniertes Skript, das während des Bootens automatisch ausgeführt wird

  4. Ändern Sie den Standardkernel (mit altem Kernel booten) in CentOS/RHEL/OEL 5 und 6

  5. CentOS/RHEL:So finden Sie das Paket mit einer fehlenden Datei mit YUM

CentOS / RHEL 7 :Bootvorgang

CentOS / RHEL 7 :systemd-analyze-Befehl, um Verzögerungen beim Booten zu finden

CentOS / RHEL 7 :So ändern Sie die Ausführlichkeit von Debug-Protokollen während des Bootens

So beheben Sie NFS-Übertragungslatenzprobleme mit „nfsiostat“ in CentOS / RHEL

CentOS / RHEL 7 :So konfigurieren Sie kdump mit der GUI

CentOS / RHEL 6 :wie man die Dienste interaktiv während des Bootens startet (um einige Dienste zu deaktivieren/abzubrechen)