crashkernel

  1. Kdump 是 Linux kernel 的一個功能,在kernel crash 時 Kdump 會引導另一個 dump-capture kernel,再透過新核心導出和保存內存轉儲,之後可以配合 crash 進行分析。
  2. 系統核心啟動時,必須在將要裝入dump-capture kernel的地方保留一些空間,並提前載入dump-capture kernel,因在發生崩潰時,核心已損壞,無法從硬碟讀取任何數據。
  3. 保留給 dump-capture kernel的空間,由開機核心參數 crashkernel 決定,一般設成auto 由系統自動分配沒什麼問題,會以 kernel-ml-5.14.0 開機時出現以下錯誤訊息:
    kdump: No memory reserved for crash kernel
    
  4. 可修改 crashkernel=128M 解決此一問題,在不更改預設參數重新產生 grub.cfg檔下,直接修改開機核心參數,必須連 grubenv 檔也要修改。
    [root@deyu ~]# grep crashkernel=128M -R /boot -l
    /boot/grub2/grub.cfg
    /boot/grub2/grubenv
    /boot/efi/EFI/centos/grubenv
    /boot/efi/EFI/centos/grub.cfg