LPIC-2カーネル構築とモジュール管理オリジナル・公式資料照合難易度★★★☆☆

Linuxでuname -rは6.6.10-labと表示される。手元のfoo.koのvermagicは6.6.9-labで、ロード時にInvalid module formatとなり、カーネルログもバージョン不一致を示す。CPUアーキテクチャは同じで、署名強制は使っていない。適切な対処はどれか。

A
foo.koを別名へ変更すれば、内部のバージョン情報も現在のカーネルに変わる

ファイル名は内部のvermagicや使用するカーネルインタフェースを変更しません。名前変更だけでは不一致は残ります。

B
稼働中6.6.10-labに対応するソース・ビルド設定と必要な開発ファイルでモジュールを作り直す★ 正解

実行中カーネル向けのビルド環境をそろえて作り直す対応です。単に同じCPU用であるだけでは十分ではありません。

C
unameが示すのは次回起動予定のカーネルなので、6.6.9向けモジュールをそのまま強制ロードする

uname -rは現在のカーネルの情報です。バージョン検査を無視するとクラッシュ等を招くおそれがあり、不一致の修正にはなりません。

D
ファイルの読取り権限を変更すれば、カーネルABIの不一致も解消する

ファイルへのアクセス権と、ロード後に使うカーネルのABI・ビルド情報は別の条件です。

解説

モジュールは対象カーネルとビルド条件との整合が必要です。uname -rは現在稼働中のリリースを示します。本問はログで不一致が確認できており、強制ロードで検証を外すのでなく対応する条件で再ビルドします。

根拠資料・確認情報

対応範囲:LPIC-2 201-450(Objectives v4.5)

資料確認日:2026-10-28

同じレッスンの問題

アプリで毎日学習しよう

ゲーミフィケーションで LPIC-2 合格を目指す。無料・課金なし。

更新: 2026/10/28