カーネルのインストール
100%

Kernel · レッスン 4

カーネルのインストール

検証済み fallback を残し、distribution kernel をインストール、boot、検証、保持する方法を学びます。

ディストリビューションは、カーネルを module、initramfs integration、boot-loader update、signature、support policy とまとめて package 化します。custom kernel を意図して開発・テストし、マシンを復旧できる場合を除き、その管理された workflow を使ってください。

実行中カーネルとインストール済みカーネル

現在動作中カーネルの release を表示します。

$ uname -r
6.8.0-00-generic

これはインストール済み全カーネルを一覧表示せず、新しい package をインストールした直後にも変わりません。uname -r が新しい version を報告するには、その image を boot する必要があります。インストール済み package と boot entry はディストリビューション固有のツールで問い合わせてください。

uname -r は何を表示しますか?

Distribution の Tracking Package を優先する

将来の security update を受け続けられるよう、ディストリビューションが対応する kernel tracking package または meta-package をインストール・保持します。package 名は release、architecture、hardware class、kernel flavor に依存します。Ubuntu では通常 linux-generic がありますが、cloud、low-latency、HWE、OEM、real-time、architecture 固有の system は別 package を使います。

uname -r の version string をそのまま apt install operand にして、有効だと想定しないでください。インストール前に現在のディストリビューション文書を参照し、package manager で候補を調べます。

対応済み kernel meta-package が役立つのはなぜですか?

変更前に確認する

kernel transaction の前に次を行います。

  1. 対応 repository、package signature、release lifecycle、意図する kernel flavor を確認する。
  2. /boot または EFI System Partition の空き容量を確認する。
  3. 少なくとも一つの既知の正常な kernel と、選択可能な boot entry を残す。
  4. console、remote management、rescue media、encryption recovery、rollback access を確認する。
  5. out-of-tree module、storage/network driver、Secure Boot signing、hibernation、virtualization compatibility を確認する。

package transaction は、対応する initramfs を生成し、ディストリビューションの hook で boot entry を更新する必要があります。すべての error を確認してください。initramfs または loader の生成に失敗したなら、package が installed と表示されても十分ではありません。

initramfs 生成 error があると、成功したと判断してはいけないのはなぜですか?

Boot して検証する

stakeholder と active workload を考慮し、管理された reboot を予定します。default が失敗した場合に、console から古い entry を選べるようにします。boot 後に確認します。

$ uname -r
$ journalctl -k -b
$ systemctl --failed

非 systemd system では同等のツールを使います。storage、filesystem、networking、graphics、input、security module、external module、container、virtual machine、application health を検証します。login prompt だけでは完全な検証になりません。

通常の新しい kernel package が動作中カーネルになるのはいつですか?

古いカーネルを削除する

新カーネルの検証合格後に限り、package manager が対応する cleanup workflow を使います。現在動作中カーネル、唯一の既知の正常な fallback、active tracking package が必要とする package は削除しないでください。正確な削除候補と、その後の boot entry を確認します。

/boot から手動削除すると、package と loader の state が不整合になります。すでに容量が尽きている場合も、任意の image を消さず、ファイル変更前に復旧計画を作ってください。

新カーネルの初期検証中に残すべき kernel はどれですか?

レッスン完了

カーネルのインストール を完了しました

これで、kernel update を boot chain と互換性の変更として扱えます。

  • 動作中 release とインストール済み image を区別する。

  • 正しい distribution package で対応済み update を追跡する。

  • storage、initramfs、signature、module、recovery access を事前確認する。

  • boot して hardware と application の動作を検証する。

  • 新カーネルが実証されるまで、既知の正常な fallback を保持する。

学習進捗を保存

無料アカウントを作成してこのレッスンを保存し、どのデバイスからでも学習を続けられます。

無料アカウントを作成
次のレッスン
Kernel に戻る