過去問ドリル

LinuCレベル2 システムの起動とLinuxカーネル 問29

システムの起動とLinuxカーネル/カーネル実行時における管理とトラブルシューティング

kdumpの仕組みの説明として適切なものはどれか。

当サイトのオリジナル問題(LinuCレベル2の出題範囲「システムの起動とLinuxカーネル」に対応。実際の試験問題ではありません)

正解:B

解説

kdumpは、カーネルパニック時のメモリの内容(クラッシュダンプ)を保存して、後から原因を解析できるようにする仕組みです。起動パラメータcrashkernel=で捕捉用カーネルのためのメモリを予約し、そこへkexecで捕捉用カーネルを読み込んでおきます。パニックが起きるとファームウェアを経由せずにその捕捉用カーネルが起動し、元のカーネルのメモリを/proc/vmcoreとして読み出して/var/crash等へ保存します。保存したダンプはcrashコマンド等で解析します。

選択肢ごとの解説

  • A誤り。kdumpはdmesgの出力ではなく、メモリの内容全体(または必要な部分)をダンプとして保存する仕組みです。
  • B正しい。crashkernel=で予約した領域に捕捉用カーネルを読み込んでおき、パニック時にkexecで起動してダンプを保存します。
  • C誤り。パニックしたカーネルでディスクへ書き込むのは危険なため、kdumpは別の捕捉用カーネルを起動してから保存します。
  • D誤り。kdumpはダンプを取得するための仕組みで、カーネルを以前のバージョンへ切り替えたりロールバックしたりはしません。
LinuCレベル2の問題を演習モードで解く