Open1
カーネルイメージとLinuxカーネルの違い
カーネルとカーネルイメージの違いについて
- Linuxカーネル:
- システムの中核となるソフトウェア
- ハードウェアとソフトウェアの橋渡し役
- プロセス管理、メモリ管理などを行う
- カーネルイメージ:
- コンピュータが実際に読み込んで実行するファイル
- 圧縮された実行可能な形式のカーネル
- 通常、/bootディレクトリに保存される
カーネルイメージの具体例:
/boot/vmlinuz-6.1.0-generic
関連する重要なファイル:
- vmlinuz:
- 実際の圧縮されたカーネルイメージ
- ブート時にメモリにロードされる
- 命名例:vmlinuz-[バージョン番号]
- initrd/initramfs:
- 初期RAMディスク
- 起動に必要な一時的なルートファイルシステム
- 必要なドライバやモジュールを含む
- System.map:
- カーネルのシンボルテーブル
- デバッグ時に使用される
- カーネルの関数やデータの位置情報を含む
- config:
- カーネルの設定ファイル
- コンパイル時のオプション情報を含む
日常生活での例え:
- カーネル = レシピ(設計図)
- カーネルイメージ = 実際に作られた料理(実行可能な形)
- initrd = 料理に必要な基本的な道具セット
- System.map = 料理の材料の配置図
- config = レシピの詳細な手順書
確認方法:
- インストール済みのカーネルイメージの確認:
ls /boot
- 現在使用中のカーネルバージョン確認:
uname -r
- カーネルイメージの詳細情報:
file /boot/vmlinuz-$(uname -r)
重要なポイント
- 複数のカーネルイメージを保持可能
- 古いイメージはバックアップとして機能
- 起動時にGRUBメニューで選択可能