全部產品
Search
文件中心

Alibaba Cloud Linux:crashkernel說明

更新時間:Oct 01, 2024

crashkernel參數用於在Linux系統中預留一部分記憶體,以便在系統崩潰時通過kdump服務捕獲記憶體轉儲檔案。這為系統管理員提供了強大的故障後分析工具,有助於快速定位和修複核心層級的問題。本文將介紹crashkernel參數的配置方法。

作業系統限制

  • Alibaba Cloud Linux 3

  • Alibaba Cloud Linux 2

crashkernel參數說明

Alibaba Cloud Linux 2/3預設在cmdline中設定了crashkernel參數。

架構

作業系統

預設參數

x86

Alibaba Cloud Linux 3

crashkernel=0M-2G:0M,2G-8G:192M,8G-128G:256M,128G-:384M

Alibaba Cloud Linux 2

ARM64

Alibaba Cloud Linux3

crashkernel=0M-2G:0M,2G-64G:256M,64G-:384M

crashkernel參數常見形式

  • 按位移量設定。

    crashkernel=size[KMG][@offset[KMG]]

    例如crashkernel=256M@32M,表示預留crashkernel大小為256 M,物理地址位移為32 M。

  • 按記憶體量設定。

    crashkernel=range1:size1[,range2:size2,...][@offset]

    例如crashkernel=0M-2G:0M,2G-64G:256M,64G-:384M,表示:

    • 系統記憶體 ≤ 2 G,則不預留crashkernel。

    • 2 G < 系統記憶體 ≤ 64 G,則預留256 M。

    • 系統記憶體 > 64 G,則預留384 M。

  • 按記憶體地區設定。

    crashkernel=size[KMG],low/high

    例如crashkernel=256M,high,表示在高記憶體空間預留256 M。

修改crashkernel參數

  1. 修改當前核心crashkernel參數。

    <crashkernel>需替換為要設定的值,例如256M

    sudo grubby --update-kernel="/boot/vmlinuz-$(uname -r)" --args="crashkernel=<crashkernel>"
  2. 重啟執行個體使配置生效。

    警告

    重啟執行個體將導致您的執行個體暫停運行,這可能引發業務中斷和資料丟失。因此,建議您在執行此操作之前備份關鍵資料,並選擇在非業務高峰期進行。

    sudo reboot
  3. 查看修改後的crashkernel預留大小。

    sudo kdumpctl showmem

kdump服務使用說明

說明

如需使用kdump服務,需確保系統記憶體 > 2 G。

  • 查看服務狀態。

    sudo systemctl status kdump
  • 關閉/開啟kdump服務。

    • 關閉kdump服務。

      sudo systemctl stop kdump
    • 開啟dump服務。

      sudo systemctl start kdump